proc_ids = proc_obj.search(cr, uid, [('purchase_id', '=', order.id)])
if proc_ids and po.state=='confirmed':
proc_obj.write(cr, uid, proc_ids, {'purchase_id': po.id})
- wf_service = netsvc.LocalService("workflow")
- wf_service.trg_validate(uid, 'purchase.order', order.id, 'purchase_cancel', cr)
+ self.signal_purchase_cancel(cr, uid, [order.id])
po.requisition_id.tender_done(context=context)
+ if po.requisition_id and all(purchase_id.state in ['draft', 'cancel'] for purchase_id in po.requisition_id.purchase_ids if purchase_id.id != po.id):
+ procurement_ids = self.pool['procurement.order'].search(cr, uid, [('requisition_id', '=', po.requisition_id.id)], context=context)
+ for procurement in proc_obj.browse(cr, uid, procurement_ids, context=context):
+ procurement.move_id.write({'location_id': procurement.move_id.location_dest_id.id})
return res
-purchase_order()
class product_product(osv.osv):
_inherit = 'product.product'