Я пытаюсь реализовать этот сценарий по линиям счетов.Сумма счетов-фактур - Odoo v8
Предположим, у меня есть 50 продуктов в моей строке счета, 40 товаров подвержены влиянию налога, а 10 нет.
Таким образом, в результате моего счета, у меня есть два поля для вычисления этого
exe = fields.Float(string='Monto Exento', digits=dp.get_precision('Account'),
store=True, readonly=True, compute='extras', track_visibility='always')
Если вернуть в общей сложности 40 налоговых пострадавших продуктов, и это поле
impo = fields.Float(string='Base Imponible', digits=dp.get_precision('Account'),
store=True, readonly=True, compute='extras', track_visibility='always')
Если вернуться в общей сложности 10 других продуктов, которые не облагаются налогом.
Теперь я называю это из функции, и вычислить результаты:
@api.one
@api.depends('invoice_line.price_subtotal', 'tax_line.amount')
def extras(self):
self.exe = self.amount_untaxed + self.amount_tax
self.impo = self.amount_untaxed + self.amount_tax
rec=0
Но это не работает, как ожидалось, я не знаю, что может быть неправильно здесь, может быть, это из-за как я обрабатываю это на функции extras
?
Это просто суммирует все, как общее количество всех линий.
EDIT
После @phillipstack ответа, я обновил свой код так:
@api.one
@api.depends('invoice_line.price_subtotal', 'tax_line.amount')
def extras(self):
self.exe = self.amount_untaxed + self.amount_tax if self.amount_tax and self.amount_tax > 0 else 0
self.impo = self.amount_untaxed + self.amount_tax if not self.amount_tax or self.amount_tax == 0 else 0
Но на impo
поле он просто суммирует все это, облагается налогом или нет, я стараюсь с одним необлагаемым продуктом, а один - с налогом.
exe
правый не имеет никакого количества.
На странице exe
должно быть указано общее количество необлагаемых товаров, а на impo
должно отображаться общая сумма облагаемых налогом товаров.
Если вам нужна дополнительная информация, пожалуйста, дайте мне знать.
Не могли бы вы рассказать нам, на какой модели вы это пытаетесь? Кажется, будет account.invoice вместо sale.order? Итак, вы пытаетесь суммировать значения из строк счетов? – CZoellner
Да, это учетная запись. Но это связано с тем, что налоги поступают оттуда, sale.order также берет с account.invoice – NeoVe
Мне очень жаль, это на account.invoice, нужно изменить мой вопрос. Знаете, когда Вы так много работаете, что это происходит, lol – NeoVe