From 10e0fb9325fae65c91e37ba7e09ececbc5273c49 Mon Sep 17 00:00:00 2001 From: Jagdish Panchal Date: Fri, 10 May 2013 18:26:47 +0530 Subject: [PATCH] [IMP] Improve code when do all move done but mo not in done state bzr revid: jap@tinyerp.com-20130510125647-0wgx5ktufaax8lnz --- addons/mrp/stock.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/addons/mrp/stock.py b/addons/mrp/stock.py index 79e9b0bcc73..59689bcc206 100644 --- a/addons/mrp/stock.py +++ b/addons/mrp/stock.py @@ -147,6 +147,18 @@ class StockMove(osv.osv): production_obj.write(cr, uid, production_ids, {'move_lines': [(4, new_move)]}) res.append(new_move) return res + + def action_done(self, cr, uid, ids, context=None): + res = super(StockMove, self).action_done(cr, uid, ids, context=context) + production_obj = self.pool.get('mrp.production') + wf_service = netsvc.LocalService("workflow") + for move in self.browse(cr, uid, ids, context=context): + production_ids = production_obj.search(cr, uid, [('move_created_ids', 'in', [move.id])]) + if production_ids: + product_data = production_obj.browse(cr, uid, production_ids[0]) + if product_data.move_created_ids2 and product_data.move_lines2 and move.state=='done': + wf_service.trg_validate(uid, 'mrp.production', product_data.id, 'button_produce_done', cr) + return res StockMove()