diff --git a/addons/stock/static/src/js/widgets.js b/addons/stock/static/src/js/widgets.js index 18af2d8f974..d38a5b16cfa 100644 --- a/addons/stock/static/src/js/widgets.js +++ b/addons/stock/static/src/js/widgets.js @@ -878,7 +878,8 @@ function openerp_picking_widgets(instance){ if (pack_op_ids.length !== 0){ return new instance.web.Model('stock.picking') .call('action_pack',[[[self.picking.id]], pack_op_ids]) - .then(function(){ + .then(function(pack){ + //TODO: the functionality using current_package_id in context is not needed anymore instance.session.user_context.current_package_id = false; return self.refresh_ui(self.picking.id); }); diff --git a/addons/stock/stock.py b/addons/stock/stock.py index 823d8249a8c..9e57c04b7e0 100644 --- a/addons/stock/stock.py +++ b/addons/stock/stock.py @@ -1450,6 +1450,7 @@ class stock_picking(osv.osv): stock_operation_obj = self.pool.get('stock.pack.operation') package_obj = self.pool.get('stock.quant.package') stock_move_obj = self.pool.get('stock.move') + package_id = False for picking_id in picking_ids: operation_search_domain = [('picking_id', '=', picking_id), ('result_package_id', '=', False)] if operation_filter_ids != []: @@ -1469,7 +1470,7 @@ class stock_picking(osv.osv): stock_move_obj.check_tracking_product(cr, uid, op.product_id, op.lot_id.id, op.location_id, op.location_dest_id, context=context) package_id = package_obj.create(cr, uid, {}, context=context) stock_operation_obj.write(cr, uid, pack_operation_ids, {'result_package_id': package_id}, context=context) - return True + return package_id def process_product_id_from_ui(self, cr, uid, picking_id, product_id, op_id, increment=True, context=None): return self.pool.get('stock.pack.operation')._search_and_increment(cr, uid, picking_id, [('product_id', '=', product_id),('id', '=', op_id)], increment=increment, context=context)