对不起我的英文
我正在为Odoo发票撰写自定义Qweb打印报告,我的目标是添加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>
但结果是(基于实际的DB记录):
Subtotal $ 4,644.95
Taxes $ 557.39
Taxes 4644.95$ 557.39
Witholding 4644.95$ -167.21
Witholding 4644.95$ -46.45
我的预期结果需要(基于实际的DB记录):
Subtotal $ 4,644.95
Taxes $ 557.39
Total $ 5202.34
总计是untaxed_amount +税(不包括预扣税)的结果;我真的尝试了很多方法而找不到合适的方法!
答案 0 :(得分:0)
有一种税收计算方法。 总的来说,从模板调用一个方法,并在该调用中调用该方法。 税法将带有价值税额,小计和总额的字典返回。
获取所需的值并根据您的计算计算总数。
并返回该总数。
答案 1 :(得分: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 >= 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>