2016-09-06 4 views
0

Я извиняюсь за мой английскийДобавьте два поля значений в отчете Qweb

Я пишу пользовательский Qweb отчет печати для Odoo счетов и моя цель добавить o.amount_untaxed + tax_amount_by_group (только положительные значения, за исключением отрицательных удержаний); это мой код:

<t t-set="total" t-value="o.amount_untaxed"/> 
 
<t t-foreach="o._get_tax_amount_by_group()" 
 
    t-as="amount_by_group"> 
 
    <small> <tr> 
 
    <td> <span t-if="amount_by_group[0] == 'Taxes'"> 
 
     <span t-esc="amount_by_group[1]"/> </span> <br></br> 
 
    <t t-set="total" t-value="unicode(o.amount_untaxed)+amount_by_group[1]"/> 
 
    <t t-esc="total"/> 
 
    </td> 
 
    </tr> </small> <br></br> 
 
</t>

Но результат (на основе фактических БД записей):

Subtotal $ 4,644.95 
 
Taxes $ 557.39 
 

 
Taxes 4644.95$ 557.39 
 
Witholding 4644.95$ -167.21 
 
Witholding 4644.95$ -46.45

Мой ожидаемый результат должен быть (на основе по фактическим записям БД):

Subtotal $ 4,644.95 
 
Taxes $ 557.39 
 

 
Total $ 5202.34

Итого результат untaxed_amount налогов + (без удержаний); Я действительно пробовал много способов, и я не могу найти правильный!

: '(

ответ

0

Что об использовании Odoo в налоговом л Инес?

<t t-set="total" t-value="o.amount_untaxed"/> 
<!-- maybe use widget monetary --> 
<t t-foreach="o.tax_line" t-as="t"> 
    <small> <tr> 
    <td> 
     <t t-if="t.amount &gt;= 0.0"> 
     <p t-esc="t.amount"/> 
     <t t-set="total" t-value="total + t.amount"/> 
     </t> 
    </td> 
    <td><t t-esc="total"/></td> 
    </tr> </small> <br></br> 
</t> 
+0

это работает !, большое спасибо! –

0

Существует метод для расчета налога для общего вызова метода из шаблона и в том, что называть этот налоговый метод метод налог будет возвращать со словарем с налоговым значением суммы, субтотальная и.. общие.

принести ваши необходимые значения и рассчитать общие согласно вашему расчету.

и вернуть эту сумму.

+0

спасибо за ваш ответ; не могли бы вы помочь мне, пожалуйста, с некоторым примером кода об этом? :) –

+0

@CoderX, существует метод с именем compute_all внутри модели account.tax. которые возвратят {налоги, total_excluded, total_included, base}. налоги - это список dict всех налогов, применяемых в порядке. total_excluded - сумма без налога. и total_included - сумма с налогом. база общая сумма. просто обратитесь этот способ. Я уверен, что этот метод будет вызывающе помочь вам. –