[IMP] Remove procurement creation when confirming production without produce line
bzr revid: jco@openerp.com-20140423094026-gfmghsgpxvk5vng9
This commit is contained in:
parent
d69f5e20ec
commit
40ddf95867
|
@ -697,8 +697,6 @@ class mrp_production(osv.osv):
|
||||||
for production in self.browse(cr, uid, ids, context=context):
|
for production in self.browse(cr, uid, ids, context=context):
|
||||||
if not production.move_created_ids:
|
if not production.move_created_ids:
|
||||||
self._make_production_produce_line(cr, uid, production, context=context)
|
self._make_production_produce_line(cr, uid, production, context=context)
|
||||||
for scheduled in production.product_lines:
|
|
||||||
self._make_production_line_procurement(cr, uid, scheduled, False, context=context)
|
|
||||||
|
|
||||||
if production.move_prod_id and production.move_prod_id.location_id.id != production.location_dest_id.id:
|
if production.move_prod_id and production.move_prod_id.location_id.id != production.location_dest_id.id:
|
||||||
move_obj.write(cr, uid, [production.move_prod_id.id],
|
move_obj.write(cr, uid, [production.move_prod_id.id],
|
||||||
|
@ -960,52 +958,6 @@ class mrp_production(osv.osv):
|
||||||
res = True
|
res = True
|
||||||
return res
|
return res
|
||||||
|
|
||||||
def _make_production_line_procurement(self, cr, uid, production_line, shipment_move_id, context=None):
|
|
||||||
procurement_order = self.pool.get('procurement.order')
|
|
||||||
production = production_line.production_id
|
|
||||||
location_id = production.location_src_id.id
|
|
||||||
date_planned = production.date_planned
|
|
||||||
procurement_name = (production.origin or '').split(':')[0] + ':' + production.name
|
|
||||||
procurement_id = procurement_order.create(cr, uid, {
|
|
||||||
'name': procurement_name,
|
|
||||||
'origin': procurement_name,
|
|
||||||
'date_planned': date_planned,
|
|
||||||
'product_id': production_line.product_id.id,
|
|
||||||
'product_qty': production_line.product_qty,
|
|
||||||
'product_uom': production_line.product_uom.id,
|
|
||||||
'product_uos_qty': production_line.product_uos and production_line.product_qty or False,
|
|
||||||
'product_uos': production_line.product_uos and production_line.product_uos.id or False,
|
|
||||||
'location_id': location_id,
|
|
||||||
'move_id': shipment_move_id,
|
|
||||||
'company_id': production.company_id.id,
|
|
||||||
})
|
|
||||||
procurement_order.signal_button_confirm(cr, uid, [procurement_id])
|
|
||||||
return procurement_id
|
|
||||||
|
|
||||||
def _make_production_produce_line(self, cr, uid, production, context=None):
|
|
||||||
stock_move = self.pool.get('stock.move')
|
|
||||||
source_location_id = production.product_id.property_stock_production.id
|
|
||||||
destination_location_id = production.location_dest_id.id
|
|
||||||
data = {
|
|
||||||
'name': production.name,
|
|
||||||
'date': production.date_planned,
|
|
||||||
'product_id': production.product_id.id,
|
|
||||||
'product_qty': production.product_qty,
|
|
||||||
'product_uom': production.product_uom.id,
|
|
||||||
'product_uom_qty': production.product_qty,
|
|
||||||
'product_uos_qty': production.product_uos and production.product_uos_qty or False,
|
|
||||||
'product_uos': production.product_uos and production.product_uos.id or False,
|
|
||||||
'location_id': source_location_id,
|
|
||||||
'location_dest_id': destination_location_id,
|
|
||||||
'move_dest_id': production.move_prod_id.id,
|
|
||||||
'company_id': production.company_id.id,
|
|
||||||
'production_id': production.id,
|
|
||||||
'origin': production.name,
|
|
||||||
}
|
|
||||||
move_id = stock_move.create(cr, uid, data, context=context)
|
|
||||||
#a phantom bom cannot be used in mrp order so it's ok to assume the list returned by action_confirm
|
|
||||||
#is 1 element long, so we can take the first.
|
|
||||||
return stock_move.action_confirm(cr, uid, [move_id], context=context)[0]
|
|
||||||
|
|
||||||
def _get_raw_material_procure_method(self, cr, uid, product, context=None):
|
def _get_raw_material_procure_method(self, cr, uid, product, context=None):
|
||||||
'''This method returns the procure_method to use when creating the stock move for the production raw materials'''
|
'''This method returns the procure_method to use when creating the stock move for the production raw materials'''
|
||||||
|
|
Loading…
Reference in New Issue