从子记录(或超链接)获取数据以在 netsuite 高级 html pdf 中打印

Posted

技术标签:

【中文标题】从子记录(或超链接)获取数据以在 netsuite 高级 html pdf 中打印【英文标题】:get data from child record(or hyper link) to print in netsuite advanced html pdf 【发布时间】:2021-08-13 21:24:09 【问题描述】:

我是 netsuite 的新手,正在为发票组创建一个 html 模板。该组有多个发票作为行,您可以单击它们并导航到具有更多数据的实际发票。

我想打印发票组详细信息并显示一些仅在实际发票级别中可用的数据。

screenshot of invoices under invoice group

我可以像record.invoice_details.invoicenum 这样访问组中的发票编号,但如果我在发票屏幕中,我想获取这张发票下的数据,可以像record.item.item_display 这样访问。所以我正在寻找类似record.invoice_details.invoicenum.item_display 的东西,我从发票组开始,一直到发票项目。

感谢您提供任何帮助。如果您需要更多信息,请告诉我。

提前致谢。

【问题讨论】:

【参考方案1】:

record.invoice_details.invoicenum.item_display 之类的内容将被视为 NetSuite 不支持的多级连接。我不确定您所说的“获取此发票的数据”是什么意思,但如果它是存储在记录本身上的值,请使用record.invoice_details.FIELD_ID 中的字段ID。如果它不在记录中,您必须将其添加到记录中(可能在隐藏字段中)。或者您可以使用 SuiteScript 创建自定义函数。参考套件答案82586、49137 和44622

通过 SuiteScript,您可以使用向高级 PDF 模板添加数据 报表对象上的“addCustomDataSource”方法:

var invoiceGroupInvoiceReportRows =  groupedinvoices_summary: [<your data>] ;
var invoiceDetailReportRows =  invoice_details: [<your data>] ;
xmlReport.addCustomDataSource(
    format: render.DataSource.OBJECT,
    alias: 'results',
    data: invoiceGroupInvoiceReportRows
)

然后在报告 XML 中引用该数据,例如:

<#list results.groupedinvoices_summary as invoice>
...
</#list>

【讨论】:

嘿,我正在尝试为发票组创建自定义打印模板。现在种子模板只有几列。该表单也没有所需的列。所以我想访问实际的发票并从发票本身获取数据并在发票组模板中使用它。发票组下的发票显示在屏幕截图中以供参考。 我认为如果 Suite Answer Id: 93101 不相关,那么 Suite Answer id: 49339 就是答案,即您必须使用 SuiteScript 2.0 渲染模块。

以上是关于从子记录(或超链接)获取数据以在 netsuite 高级 html pdf 中打印的主要内容,如果未能解决你的问题,请参考以下文章

从子查询中获取表名以在一行中用于 Oracle 中的删除/更新/插入子句

获取 Netsuite 高级库存序列号的脚本

Netsuite:事务的 HTML/电子邮件子列表未正确循环

Netsuite - 加载前的 Suitescript 用户事件 - 获取子列表值加入 -> 设置子列表值自定义子记录

浏览器控制台中的 Netsuite 命令 - getrecordtype

从子数组 JSON IOS 获取数据