как отобразить процент налога вместо названия налога в счете-фактуре odoo 8

#odoo-8

Вопрос:

Я пытаюсь отобразить процент налога вместо их имени в разделе бухгалтерия > счета-фактуры клиентов>
введите описание изображения здесь

Я хочу получить процент от бухгалтерского учета > конфигурация >> налоги >>> налоги>>>
введите описание изображения здесь Я не знаю, как этого добиться

Комментарии:

1. Функция name_get была переопределена для использования поля описания (кода) или поля имени. Вы можете переопределить его, чтобы использовать другое поле (например, поле вычисленного процента) или комбинацию названия налога и процента.

2. спасибо @Kenly за ответ, я все еще учусь odoo, и я еще многого не понимаю, поэтому, пожалуйста, если вы можете объяснить больше на примере, буду очень признателен

Ответ №1:

Параметр name_get возвращает текстовое представление для записей в self .
По умолчанию это значение display_name поля.

Метод был переопределен в account.tax для использования поля описание (Код) или поля имя. В следующем примере мы переопределим тот же метод, чтобы показать процент от суммы налога.

 class AccountTax(models.Model):
    _inherit = 'account.tax'

    @api.multi
    def name_get(self):
        res = []
        for record in self:
            percentage = int(record.amount * 100)
            name = str(percentage)   "%"
            res.append((record.id, name))
        return res
 

Редактировать:

Чтобы использовать то же представление в отчете по счету-фактуре (в котором используется поле имя для названия налога), просто вызовите name_get функцию, чтобы получить отображаемое имя.

Пример: Унаследовать отчет по счету-фактуре, чтобы использовать отображаемое имя вместо названия налога

 <template id="report_invoice_document" inherit_id="account.report_invoice_document">
    <xpath expr="//tbody[hasclass('invoice_tbody')]/tr/td[5]/span" position="attributes">
        <attribute name="t-esc">', '.join(map(lambda x: x.name_get()[0][1], l.invoice_line_tax_id))</attribute>
     </xpath>
</template>
 

Комментарии:

1. извините @Kenly за беспокойство, код работает отлично, но когда я пытаюсь распечатать счет-фактуру, у меня есть название налога, а не процент, можете ли вы помочь и поблагодарить вас

2. Без проблем. В отчете по счету-фактуре используется название налога (поле имя), и вам необходимо изменить шаблон документа отчета по счету-фактуре, чтобы использовать отображаемое имя. Проверьте мою правку