如何从交易网络套件 freemarker 高级 pdf/html 中获取项目详细信息

Posted

技术标签:

【中文标题】如何从交易网络套件 freemarker 高级 pdf/html 中获取项目详细信息【英文标题】:How to get item details from a transaction netsuite freemarker advanced pdf/html 【发布时间】:2021-11-20 14:43:36 【问题描述】:

我正在制作一个 salesOrder 模板,我需要从项目中放入一些信息。 我可以打印项目字段值,但它只打印第一行的值,并且对所有行重复。 itemid 为每一行正确更新,但 itemimage 没有

有什么想法吗?

            <#if record.item?has_content>
                <table class="itemtable" style="width: 100%; margin-top: 10px;">
                <!-- start lines -->
                <#list record.item as line>
                 <#if line_index==0>
                  <thead>
                    <tr>
                      <th colspan="5"></th>
                      <th colspan="8">Commercial Reference</th>
                      <th colspan="11">$line.description@label</th>
                      <th colspan="2" align="center">Size</th>
                      <th align="center" colspan="3">$line.quantity@label</th>
                      <th align="right" colspan="4">$line.rate@label</th>
                      <th align="right" colspan="4">$line.amount@label</th>
                    </tr>
                  </thead>
                  </#if>
                 <tr>
                    <#assign itemid = record.item.item>
                      <#assign itemimage = record.item.item.custitem_atlas_item_image>
                        <td colspan="5" align="center">--$itemid-$itemimage-$line.item<@filecabinet nstype="image"  src="$itemimage" style="float: left; width: 50px; height:100px" /></td>
                        <td colspan="8"><span class="itemname">$line.custcol_noda_style</span></td>
                        <td colspan="11">$line.custcol_noda_description</td>

                      <td colspan="2">$line.custcol_noda_size</td>
                      <td align="center" colspan="3" line->$line.quantity</td>
                      <td align="right" colspan="4">$line.rate</td>
                      <td align="right" colspan="4">$line.amount</td>
                      </tr>
                    </#list><!-- end lines --></table>

                  <hr /></#if>

【问题讨论】:

不确定我是否遗漏了什么,但record.item 应该保持不变,而变化是line。那么record.item.item不应该换成line.&lt;something&gt;吗? 【参考方案1】:

netsuite 支持的回复:

通过 item.item.fieldid 从事务中的项目记录中打印值的语法可能不起作用这是高级 PDF 上项目连接的当前限制。它只会呈现仅用于第一个行项目的值。已提交增强请求以进一步改善这一点。 这记录在 SuiteAnswers ID:84605 上。

【讨论】:

【参考方案2】:

这些:

<#assign itemid = record.item.item>
<#assign itemimage = record.item.item.custitem_atlas_item_image>

应该是:

<#assign itemid = line.item>
<#assign itemimage = line.item.custitem_atlas_item_image>

【讨论】:

你好@bknights,同样的行为

以上是关于如何从交易网络套件 freemarker 高级 pdf/html 中获取项目详细信息的主要内容,如果未能解决你的问题,请参考以下文章

如何在 netsuite/freemarker 的高级 pdf/html 工作表中对列表进行分组?

使用 NetSuite 高级 PDF 和保存的搜索编写 Freemarker 脚本

在变量 freemarker 中显示引号 - netsuite 高级 pdf

Netsuite / Freemarker - 访问电子邮件模板中的交易行级别数据

freemarker - 从序列中检索值

NetSuite 高级 PDF 模板 - Freemarker 语法