[FIX] purchase: create picking in _create_pickings only if picking_id not already provided; thanks to Cloves Almeida for reporting this!

bzr revid: rvalyi@gmail.com-20111027211459-hk8n2milqo2c37vk
This commit is contained in:
Raphaël Valyi 2011-10-27 19:14:59 -02:00
parent 52e6f2ba14
commit fea2c90d35
1 changed files with 3 additions and 2 deletions

View File

@ -480,7 +480,8 @@ class purchase_order(osv.osv):
will be added. A new picking will be created if ommitted.
:return: True
"""
picking_id = self.pool.get('stock.picking').create(cr, uid, self._prepare_order_picking(cr, uid, order, args))
if not picking_id:
picking_id = self.pool.get('stock.picking').create(cr, uid, self._prepare_order_picking(cr, uid, order, args))
todo_moves = []
for order_line in order_lines:
if not order_line.product_id:
@ -499,7 +500,7 @@ class purchase_order(osv.osv):
def action_picking_create(self,cr, uid, ids, *args):
for order in self.browse(cr, uid, ids):
picking_id = self._create_pickings(cr, uid, order, [order_line for order_line in order.order_line], False, args)
picking_id = self._create_pickings(cr, uid, order, [order_line for order_line in order.order_line], None, args)
return picking_id #FIXME this is brittle to assume there is only 1 picking_id, but has been kept for API compatibility
def copy(self, cr, uid, id, default=None, context=None):