ACCOUNT: fix refund invoice if no product_id nor uos_id on lines

bzr revid: ced-3a243cf6efdbd762a12e4b9d8f6ee0d23c6c1e48
This commit is contained in:
ced 2007-05-18 05:42:43 +00:00
parent 3c3e201f4c
commit 570538f860
1 changed files with 8 additions and 4 deletions

View File

@ -505,10 +505,14 @@ class account_invoice(osv.osv):
for line in lines:
del line['id']
del line['invoice_id']
line['account_id'] = line['account_id'] and line['account_id'][0]
line['product_id'] = line['product_id'] and line['product_id'][0]
line['uos_id'] = line['uos_id'] and line['uos_id'][0]
line['invoice_line_tax_id'] = [(6,0, line.get('invoice_line_tax_id', [])) ]
if 'account_id' in line:
line['account_id'] = line.get('account_id', False) and line['account_id'][0]
if 'product_id' in line:
line['product_id'] = line.get('product_id', False) and line['product_id'][0]
if 'uos_id' in line:
line['uos_id'] = line.get('uos_id', False) and line['uos_id'][0]
if 'invoice_line_tax_id' in line:
line['invoice_line_tax_id'] = [(6,0, line.get('invoice_line_tax_id', [])) ]
return map(lambda x: (0,0,x), lines)
invoice_lines = self.pool.get('account.invoice.line').read(cr, uid, invoice['invoice_line'])