Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
1 Rispondi
2779 Visualizzazioni

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

Avatar
Abbandona
Risposta migliore

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

Avatar
Abbandona
Autore

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

Post correlati Risposte Visualizzazioni Attività
2
mag 24
4932
2
set 22
2349
1
set 22
3234
3
gen 16
4777
2
set 25
467