You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NetSuite高级PDF模板中按币种汇总发票金额需求

NetSuite高级PDF模板按发票币种汇总金额实现方案

核心实现思路

利用NetSuite高级PDF模板支持的Freemarker模板语法,通过哈希表分组存储各币种的金额总和,遍历发票列表完成累加后,再输出分组汇总结果。

具体代码实现

  1. 初始化币种分组变量
    在模板合适位置(建议在发票列表遍历前)添加以下代码,创建用于存储币种与对应总金额的哈希表:
<#assign currencyGroups = {}>
  1. 遍历发票并累加金额
    遍历发票记录时,提取每个发票的币种,更新对应币种的累计金额:
<#list record.invoices as inv>
  <#-- 获取发票币种对象 -->
  <#assign curr = inv.currency>
  <#-- 读取当前币种已累计金额,首次出现则默认为0 -->
  <#assign currentTotal = currencyGroups[curr]!0>
  <#-- 更新累计金额(这里的inv.amount需替换为实际发票金额字段ID,比如inv.total) -->
  <#assign currencyGroups[curr] = currentTotal + inv.amount>
</#list>

注意:请根据你的NetSuite字段配置,将inv.amount替换为实际存储发票金额的字段(如inv.total或自定义字段ID)

  1. 输出币种汇总结果
    在需要展示汇总的位置,遍历哈希表输出各币种及对应总金额:
<#-- 币种汇总标题 -->
## 按币种汇总金额
<#list currencyGroups?keys as curr>
  - **${curr.name}**: ${currencyGroups[curr]?string.currency}
</#list>

?string.currency会自动根据币种格式化为对应的金额显示样式(如美元带$符号,欧元带€符号)。

额外注意事项

  • 确保模板有权限访问发票的currency字段和金额字段,若字段未在模板中启用,需先在模板设置里添加对应字段的权限。
  • 如果需要汇总的是不含税金额或其他自定义金额,只需修改累加时的字段即可。

内容的提问来源于stack exchange,提问作者Addy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 04:22:11