Rifakat (OpenERP) has proposed merging
lp:~openerp-dev/openobject-addons/6.0-opw-383510-rha into
lp:openobject-addons/6.0.
Requested reviews:
Naresh(OpenERP) (nch-openerp)
Related bugs:
Bug #928616 in OpenERP Addons: "[v6.0 & v6.1] [account_voucher]
cancel_voucher method is unlinking the whole account_move_reconciliation record"
https://bugs.launchpad.net/openobject-addons/+bug/928616
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/6.0-opw-383510-rha/+merge/92215
Hello,
cancel_voucher method is unlinking the whole account_move_reconciliation record,
this issue is already been fixed with stable r5041 but I have optimized the
code.
Also did a small changes for invoicing also.
I appreciate efforts and patch given by hbto [Vauxoo] http://www.vauxoo.com
<[email protected]>
Kindly review this.
Regards,
Rifakat Haradwala
--
https://code.launchpad.net/~openerp-dev/openobject-addons/6.0-opw-383510-rha/+merge/92215
Your team OpenERP R&D Team is subscribed to branch
lp:~openerp-dev/openobject-addons/6.0-opw-383510-rha.
=== modified file 'account_voucher/account_voucher.py'
--- account_voucher/account_voucher.py 2012-02-08 09:21:51 +0000
+++ account_voucher/account_voucher.py 2012-02-09 07:46:23 +0000
@@ -583,29 +583,17 @@
move_pool = self.pool.get('account.move')
move_line_pool = self.pool.get('account.move.line')
wf_service = netsvc.LocalService("workflow")
-
+ invoice_ids = []
for voucher in self.browse(cr, uid, ids, context=context):
- recs = []
- invoice_ids = []
for line in voucher.move_ids:
if line.reconcile_id:
- invoice_ids = [rec_line.invoice.id for rec_line in line.reconcile_id.line_id if rec_line.invoice]
- recs.append(line.reconcile_id.id)
+ invoice_ids += [rec_line.invoice.id for rec_line in line.reconcile_id.line_id if rec_line.invoice]
move_lines = [move_line.id for move_line in line.reconcile_id.line_id]
move_lines.remove(line.id)
- partial_ids = reconcile_pool.create(cr, uid, {
- 'type': 'auto',
- 'line_id': False,
- 'line_partial_ids': [(6, 0, move_lines)]})
-
- move_line_pool.write(cr, uid, move_lines, {
- 'reconcile_id': False,
- 'reconcile_partial_id': partial_ids
- }, update_check=False)
+ reconcile_pool.unlink(cr, uid, line.reconcile_id.id)
+ move_line_pool.reconcile_partial(cr, uid, move_lines, 'auto',context=context)
elif line.reconcile_partial_id:
- invoice_ids = [rec_line.invoice.id for rec_line in line.reconcile_partial_id.line_partial_ids if rec_line.invoice]
- if recs:
- reconcile_pool.unlink(cr, uid, recs)
+ invoice_ids += [rec_line.invoice.id for rec_line in line.reconcile_partial_id.line_partial_ids if rec_line.invoice]
if voucher.move_id:
move_pool.button_cancel(cr, uid, [voucher.move_id.id])
move_pool.unlink(cr, uid, [voucher.move_id.id])
@@ -613,8 +601,8 @@
'state':'cancel',
'move_id':False,
}
- if invoice_ids:
- wf_service.trg_validate(uid, 'account.invoice', invoice_ids[0], 'open_test', cr)
+ for inv_id in invoice_ids:
+ wf_service.trg_validate(uid, 'account.invoice', inv_id, 'open_test', cr)
self.write(cr, uid, ids, res)
return True
_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help : https://help.launchpad.net/ListHelp