[FIX] stock: better recomputation of pack operations
Revert c06a96 "[FIX] stock: force recomputing transfer information on picking" and unlink packoperations only when move lines are changed (fix opw 620636). c06a96 introduced a regression as it prevents to plan moves (e.g. assigning lots through the barcode interface) before the reception.
This commit is contained in:
parent
aea358ca67
commit
6e25d6e589
|
@ -942,6 +942,12 @@ class stock_picking(osv.osv):
|
|||
return super(stock_picking, self).unlink(cr, uid, ids, context=context)
|
||||
|
||||
def write(self, cr, uid, ids, vals, context=None):
|
||||
if vals.get('move_lines') and not vals.get('pack_operation_ids'):
|
||||
# pack operations are directly dependant of move lines, it needs to be recomputed
|
||||
pack_operation_obj = self.pool['stock.pack.operation']
|
||||
existing_package_ids = pack_operation_obj.search(cr, uid, [('picking_id', 'in', ids)], context=context)
|
||||
if existing_package_ids:
|
||||
pack_operation_obj.unlink(cr, uid, existing_package_ids, context)
|
||||
res = super(stock_picking, self).write(cr, uid, ids, vals, context=context)
|
||||
#if we changed the move lines or the pack operations, we need to recompute the remaining quantities of both
|
||||
if 'move_lines' in vals or 'pack_operation_ids' in vals:
|
||||
|
|
|
@ -48,6 +48,7 @@ class stock_transfer_details(models.TransientModel):
|
|||
picking = self.pool.get('stock.picking').browse(cr, uid, picking_id, context=context)
|
||||
items = []
|
||||
packs = []
|
||||
if not picking.pack_operation_ids:
|
||||
picking.do_prepare_partial()
|
||||
for op in picking.pack_operation_ids:
|
||||
item = {
|
||||
|
|
Loading…
Reference in New Issue