Skip to Content
Meniu
Trebuie să fiți înregistrat pentru a interacționa cu comunitatea.
Această întrebare a fost marcată
1 Răspunde
2742 Vizualizări

Hello, I am trying to add a discount on the invoice total by adding a new field and subtracting one percent out of the total, so that I can have an "Amount Due" of the : total-discount. Here is my code:

from odoo import fields, models, api

class AccountInvoiceInherit(models.Model):
_inherit = 'account.move'

one_percent_amount = fields.Float('1% Discount',compute='_compute_one_percent')
amount_residual = fields.Monetary(compute='_compute_amount_due', store=True)

@api.depends('amount_total')
def _compute_one_percent(self):
for record in self:
record.one_percent_amount = (record.amount_untaxed * 0.1)

@api.depends('amount_untaxed', 'one_percent_amount')
def _compute_amount_due(self):
for record in self:
record.amount_residual = record.amount_untaxed - record.one_percent_amount

View File:

xml version="1.0" encoding="utf-8"?>


id="account_invoice_form" model="ir.ui.view">
name="name">account.invoice.form
name="model">account.move
name="inherit_id" ref="account.view_move_form"/>
name="arch" type="xml">
expr="//field[@name='amount_total']" position="after">
name="one_percent_amount"/>





How to solve it? The code is not giving any error, but the deduction is not occuring

Imagine profil
Abandonează
Cel mai bun răspuns

Hi,

Can you please try like this,

from odoo import fields, models, api

class AccountInvoiceInherit(models.Model):
_inherit = 'account.move'

one_percent_amount = fields.Float('1% Discount',compute='_compute_one_percent')
amount_residual = fields.Monetary(compute='_compute_amount_due', store=True)

@api.depends('amount_total')
def _compute_one_percent(self):
for record in self:
record.one_percent_amount = (record.amount_total * 0.01)

@api.depends('amount_total', 'one_percent_amount')
def _compute_amount_due(self):
for record in self:
record.amount_residual = record.amount_total - record.one_percent_amount

Thanks

Imagine profil
Abandonează
Autor

Thanks, Actually I tried this option before and it didn't give any update. Do you have another solution?

Related Posts Răspunsuri Vizualizări Activitate
2
mai 24
4814
2
sept. 22
2327
1
sept. 22
3170
3
ian. 16
4746
2
sept. 25
393