[FIX]stock : fix the problem picking is move in available state
bzr revid: mma@tinyerp.com-20121101103934-wgs3o9pjt3b2y793
This commit is contained in:
parent
b006809773
commit
f4463db761
|
@ -2433,14 +2433,17 @@ class stock_move(osv.osv):
|
|||
if move.picking_id:
|
||||
picking_ids.append(move.picking_id.id)
|
||||
if move.move_dest_id.id and (move.state != 'done'):
|
||||
self.write(cr, uid, [move.id], {'move_history_ids': [(4, move.move_dest_id.id)]})
|
||||
#cr.execute('insert into stock_move_history_ids (parent_id,child_id) values (%s,%s)', (move.id, move.move_dest_id.id))
|
||||
if move.move_dest_id.state in ('waiting', 'confirmed'):
|
||||
self.force_assign(cr, uid, [move.move_dest_id.id], context=context)
|
||||
if move.move_dest_id.picking_id:
|
||||
wf_service.trg_write(uid, 'stock.picking', move.move_dest_id.picking_id.id, cr)
|
||||
if move.move_dest_id.auto_validate:
|
||||
self.action_done(cr, uid, [move.move_dest_id.id], context=context)
|
||||
# Downstream move should only be triggered if this move is the last pending upstream move
|
||||
other_upstream_move_ids = self.search(cr, uid, [('id','!=',move.id),('state','not in',['done','cancel']),
|
||||
('move_dest_id','=',move.move_dest_id.id)], context=context)
|
||||
if not other_upstream_move_ids:
|
||||
self.write(cr, uid, [move.id], {'move_history_ids': [(4, move.move_dest_id.id)]})
|
||||
if move.move_dest_id.state in ('waiting', 'confirmed'):
|
||||
self.force_assign(cr, uid, [move.move_dest_id.id], context=context)
|
||||
if move.move_dest_id.picking_id:
|
||||
wf_service.trg_write(uid, 'stock.picking', move.move_dest_id.picking_id.id, cr)
|
||||
if move.move_dest_id.auto_validate:
|
||||
self.action_done(cr, uid, [move.move_dest_id.id], context=context)
|
||||
|
||||
self._create_product_valuation_moves(cr, uid, move, context=context)
|
||||
if move.state not in ('confirmed','done','assigned'):
|
||||
|
|
Loading…
Reference in New Issue