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

NetSuite执行Saved Search的<#list>时如何正确分组记录及报错排查

报错根因

你遇到的错误核心是record变量不存在于当前FTL模板的上下文环境中:调用宏时传入的record.result参数里,顶层的record变量没有被正确赋值,NetSuite Saved Search的结果集默认不会以record作为顶层变量名。

修复方案

第一步:确认结果集变量名

先确认你传入模板的Saved Search结果集对应的变量名:

  • 如果是SuiteScript调用FTL模板,通常你跑搜索拿到的结果集会命名为searchResults,需要提前将这个变量注入模板上下文
  • 如果是Advanced PDF/HTML模板直接绑定Saved Search,默认结果集变量名为results

第二步:修正宏代码(适配空值判断)

<#macro listGroups results groupField>
  <#if (results?? && results?size > 0)>
    <#local sortedResults = results?sort_by(groupField)![]>
    <#local groupStart = 0>
    <#local lastResult = sortedResults[0]>
    <#list sortedResults as result>
      <#if !result?is_first && result[groupField]!'' != lastResult[groupField]!''>
        <#local groupEnd = result?index>
        <#nested lastResult[groupField]!'未分类', sortedResults[groupStart ..< groupEnd]![]>
        <#local groupStart = groupEnd>
      </#if>
      <#local lastResult = result>
    </#list>
    <#-- 输出最后一个分组 -->
    <#local groupEnd = sortedResults?size>
    <#nested lastResult[groupField]!'未分类', sortedResults[groupStart ..< groupEnd]![]>
  </#if>
</#macro>

第三步:修正宏调用代码

注意分组字段不需要加result.前缀,直接和Saved Search结果列的ID保持一致即可,示例中按商品类别分组,字段ID为class:

<@listGroups searchResults "class"; groupName, groupResults>
  <p>${groupName}</p>
  <table border="1" cellpadding="5" cellspacing="0">
    <tr>
      <th>商品ID</th>
      <th>销售描述</th>
      <th>供应商</th>
      <th>采购成本</th>
    </tr>
    <#list groupResults as groupResult>
       <tr>
          <td>${groupResult.itemid!'-'}</td>
          <td>${groupResult.salesdescription!'-'}</td>
          <td>${groupResult.othervendor!'-'}</td>
          <td>${groupResult.vendorcost!0}</td>
      </tr>
    </#list>
  </table>
</@listGroups>

注意事项

  • 分组字段名需要和你Saved Search结果列的ID完全匹配,如果是自定义字段请填写完整ID,例如custitem_custom_group_field
  • 所有字段取值都添加了!默认值的空值容错逻辑,避免NetSuite字段为空时直接抛出渲染异常
  • 如果搜索结果超过1000条,需要在SuiteScript侧先完成全量结果的拉取合并,再传入模板

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 09:57:00