[FIX] Sale : Fiscal position value has to be passed when Invoice is created from SO

bzr revid: gpa@tinyerp.com-20100510130122-ssy3j8t5j472vlmx
This commit is contained in:
gpa 2010-05-10 18:31:22 +05:30
parent b046ff45e6
commit 3d3cb4476d
4 changed files with 7 additions and 3 deletions

View File

@ -436,7 +436,7 @@ class sale_order(osv.osv):
'currency_id': order.pricelist_id.currency_id.id,
'comment': order.note,
'payment_term': pay_term,
'fiscal_position': order.partner_id.property_account_position.id,
'fiscal_position': order.partner_id.property_account_position.id or order.fiscal_position.id,
'date_invoice' : context.get('date_invoice',False),
'company_id' : order.company_id.id,
}

View File

@ -139,6 +139,10 @@ class stock_picking(osv.osv):
sale_lines = picking.sale_id.order_line
invoice_created = invoices[result[picking.id]]
for inv in invoice_obj.browse(cursor, user, [invoice_created.id], context=context):
if not inv.fiscal_position:
invoice_obj.write(cursor, user, [inv.id], {'fiscal_position': picking.sale_id.fiscal_position.id}, context=context)
if picking.sale_id.client_order_ref:
inv_name = picking.sale_id.client_order_ref + " : " + invoice_created.name
invoice_obj.write(cursor, user, [invoice_created.id], {'name': inv_name}, context=context)

View File

@ -82,7 +82,7 @@ class sale_order_line_make_invoice(osv.osv_memory):
'currency_id' : order.pricelist_id.currency_id.id,
'comment': order.note,
'payment_term': pay_term,
'fiscal_position': order.partner_id.property_account_position.id
'fiscal_position': order.partner_id.property_account_position.id or order.fiscal_position.id
}
inv_id = self.pool.get('account.invoice').create(cr, uid, inv)
return inv_id

View File

@ -95,7 +95,7 @@ class sale_advance_payment_inv(osv.osv_memory):
'currency_id' :sale.pricelist_id.currency_id.id,
'comment': '',
'payment_term':sale.payment_term.id,
'fiscal_position': sale.partner_id.property_account_position.id
'fiscal_position': sale.partner_id.property_account_position.id or sale.fiscal_position.id
}
inv_id = inv_obj.create(cr, uid, inv)