[FIX] Sale : SO was getting stuck when invoice is cancelled and SOL is with product.

lp bug: https://launchpad.net/bugs/490965 fixed

bzr revid: jvo@tinyerp.com-20091216062610-6y3fkslez7monb8n
This commit is contained in:
GPA(OpenERP) 2009-12-16 11:56:10 +05:30 committed by Jay (Open ERP)
parent 306804e289
commit 792725fac9
2 changed files with 19 additions and 2 deletions

View File

@ -440,7 +440,23 @@ class sale_order(osv.osv):
self.pool.get('sale.order.line').write(cr, uid, [line.id], {'invoiced': invoiced})
self.write(cr, uid, ids, {'state': 'invoice_except', 'invoice_ids': False})
return True
def action_invoice_end(self, cr, uid, ids, context={}):
for order in self.browse(cr, uid, ids):
val = {'invoiced': True}
if order.state == 'invoice_except':
val['state'] = 'progress'
for line in order.order_line:
towrite = []
if line.state == 'exception':
towrite.append(line.id)
if towrite:
self.pool.get('sale.order.line').write(cr, uid, towrite, {'state': 'confirmed'}, context=context)
self.write(cr, uid, [order.id], val)
return True
def action_cancel(self, cr, uid, ids, context={}):
ok = True
sale_order_line_obj = self.pool.get('sale.order.line')

View File

@ -75,7 +75,8 @@
<record id="act_invoice_end" model="workflow.activity">
<field name="wkf_id" ref="wkf_sale"/>
<field name="name">invoice_end</field>
<field name="kind">dummy</field>
<field name="kind">function</field>
<field name="action">action_invoice_end()</field>
</record>
<record id="act_invoice_cancel" model="workflow.activity">
<field name="wkf_id" ref="wkf_sale"/>