Odoo 15 QWeb模板如何单独打印SGST和CGST标签及对应数值
Odoo v15 QWeb仅打印SGST/CGST标签及数值实现方案
你当前调用的account.document_tax_totals是Odoo官方预置的全量税费汇总模板,默认会输出未税金额、所有税项、总金额全部内容,无需调用该模板,直接解析已加载的tax_totals变量筛选输出即可,参考代码如下:
<tr style="border-bottom:hidden"> <td style="width:80%;text-align:right;font-size:13px;"> <t t-set="tax_totals" t-value="json.loads(doc.tax_totals_json)"/> <!-- 遍历税项分组输出标签 --> <t t-foreach="tax_totals.get('groups_by_subtotal', {}).get('Untaxed Amount', [])" t-as="tax_group"> <t t-if="'SGST' in tax_group.get('name', '') or 'CGST' in tax_group.get('name', '')"> <div t-esc="tax_group.get('name', '')"/> </t> </t> </td> <td style="width:20%;text-align:right;font-size:13px;"> <t t-foreach="tax_totals.get('groups_by_subtotal', {}).get('Untaxed Amount', [])" t-as="tax_group"> <!-- 对应输出SGST和CGST的格式化金额 --> <t t-if="'SGST' in tax_group.get('name', '') or 'CGST' in tax_group.get('name', '')"> <div t-esc="tax_group.get('formatted_amount', '')"/> </t> </t> </td> </tr>
补充说明
- 如果你的税项为非英文自定义命名,直接把判断条件里的
SGST、CGST替换为实际使用的税项名称关键词即可 - 若需要固定展示顺序,可以不用遍历,直接按索引取对应税项数值,比如
tax_totals['groups_by_subtotal']['Untaxed Amount'][0]['formatted_amount'],需确保你的税项排序固定 - 代码中
Untaxed Amount是未税金额对应的分组key,如果你有自定义税费分组,替换为实际的分组key即可
内容的提问来源于stack exchange,提问作者Sakthi Priya
相关产品推荐
相关产品推荐

