[FIX] account, purchase: keep the default account of invoice line instead of replacing it to False (happens when the product/product categ is not correctly configured)
This commit is contained in:
@@ -1110,7 +1110,8 @@ class AccountInvoiceLine(models.Model):
|
||||
|
||||
self.name = product.partner_ref
|
||||
account = self.get_invoice_line_account(type, product, fpos, company)
|
||||
self.account_id = account.id
|
||||
if account:
|
||||
self.account_id = account.id
|
||||
self._set_taxes()
|
||||
|
||||
if type in ('in_invoice', 'in_refund'):
|
||||
|
||||
@@ -42,22 +42,25 @@ class AccountInvoice(models.Model):
|
||||
qty = line.qty_received - line.qty_invoiced
|
||||
if float_compare(qty, 0.0, precision_rounding=line.product_uom.rounding) <= 0:
|
||||
qty = 0.0
|
||||
account = self.env['account.invoice.line'].get_invoice_line_account('in_invoice', line.product_id, self.purchase_id.fiscal_position_id, self.env.user.company_id)
|
||||
taxes = line.taxes_id or line.product_id.supplier_taxes_id
|
||||
invoice_line_tax_ids = self.purchase_id.fiscal_position_id.map_tax(taxes)
|
||||
result.append({
|
||||
data = {
|
||||
'purchase_line_id': line.id,
|
||||
'name': line.name,
|
||||
'origin': self.purchase_id.origin,
|
||||
'uom_id': line.product_uom.id,
|
||||
'product_id': line.product_id.id,
|
||||
'account_id': account.id,
|
||||
'account_id': self.env['account.invoice.line'].with_context({'journal_id': self.journal_id.id, 'type': 'in_invoice'})._default_account(),
|
||||
'price_unit': line.price_unit,
|
||||
'quantity': qty,
|
||||
'discount': 0.0,
|
||||
'account_analytic_id': line.account_analytic_id.id,
|
||||
'invoice_line_tax_ids': invoice_line_tax_ids.ids
|
||||
})
|
||||
}
|
||||
account = self.env['account.invoice.line'].get_invoice_line_account('in_invoice', line.product_id, self.purchase_id.fiscal_position_id, self.env.user.company_id)
|
||||
if account:
|
||||
data['account_id'] = account.id
|
||||
result.append(data)
|
||||
self.invoice_line_ids = result
|
||||
return {}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user