Netsuite 具有多个列表的Suitelet

Netsuite 具有多个列表的Suitelet,netsuite,suitescript,Netsuite,Suitescript,我正在尝试创建一个Suitelet以显示多组数据。我将有2个保存的搜索,我只想显示一个页面上两个单独的窗口一样的结果 我知道您可以使用response.writePage(list)来显示结果,其中list是一个nlobjList。我知道nlobjList只需将nlobjSearchResults传递给list.addRows(searchResults),即可显示nlobjSearchResults的结果 我尝试用两个不同的列表执行两个writePage调用,但正如我所料,它只显示了两个调用中

我正在尝试创建一个Suitelet以显示多组数据。我将有2个保存的搜索,我只想显示一个页面上两个单独的窗口一样的结果

我知道您可以使用response.writePage(list)来显示结果,其中list是一个nlobjList。我知道nlobjList只需将nlobjSearchResults传递给list.addRows(searchResults),即可显示nlobjSearchResults的结果

我尝试用两个不同的列表执行两个writePage调用,但正如我所料,它只显示了两个调用中的第二个


有人这样做过吗?如何做到这一点?

只需处理每个子列表,就好像它是唯一的子列表一样,NetSuite会为您将它们放在单独的选项卡上

function suitelet(request, response) {
    var form = nlapiCreateForm('Test Page');
    var sublist1 = form.addSubList('list1', 'list', 'List 1');
    var sublist2 = form.addSubList('list2', 'list', 'List 2');

    sublist1.addField('custpage_field1', 'text', 'Field1');
    sublist1.addField('custpage_field2', 'text', 'Field2');

    sublist2.addField('custpage_field3', 'text', 'Field3');
    sublist2.addField('custpage_field4', 'text', 'Field4');

    response.writePage(form);
}
结果:

只需处理每个子列表,就好像它是唯一的子列表一样,NetSuite会为您将它们放在单独的选项卡上

function suitelet(request, response) {
    var form = nlapiCreateForm('Test Page');
    var sublist1 = form.addSubList('list1', 'list', 'List 1');
    var sublist2 = form.addSubList('list2', 'list', 'List 2');

    sublist1.addField('custpage_field1', 'text', 'Field1');
    sublist1.addField('custpage_field2', 'text', 'Field2');

    sublist2.addField('custpage_field3', 'text', 'Field3');
    sublist2.addField('custpage_field4', 'text', 'Field4');

    response.writePage(form);
}
结果:

这让我走了一段路。我现在面临的问题是如何显示搜索结果。我看到我可以使用sublist.setLineItemValues()并将nlobjSearchResult数组传递给它。我试过了,但没用。因此,我试图确保首先设置字段-我对sublist.addField()进行了3次调用,并确保我的数据类型与结果中的3列匹配。它现在显示了4行(对于我的结果来说是正确的),但没有显示这些行中的实际结果。有什么想法吗?如果要将搜索结果传递给.setLineItemValues(),子列表的字段名必须与搜索结果中列的内部ID匹配。我知道帮助文档中说列名必须以“custpage”开头,但情况并非总是这样。如果你在搜索中返回“trandate”,那么就有一个名为“trandate”的子列表字段,这些值就会对齐。我意识到我遗漏了一个细节——我需要对字段进行分组。在我保存的搜索中,我将它们分组在那里。当我解组时,效果很好。如何显示分组结果?–这让我走了一段路。我现在面临的问题是如何显示搜索结果。我看到我可以使用sublist.setLineItemValues()并将nlobjSearchResult数组传递给它。我试过了,但没用。因此,我试图确保首先设置字段-我对sublist.addField()进行了3次调用,并确保我的数据类型与结果中的3列匹配。它现在显示了4行(对于我的结果来说是正确的),但没有显示这些行中的实际结果。有什么想法吗?如果要将搜索结果传递给.setLineItemValues(),子列表的字段名必须与搜索结果中列的内部ID匹配。我知道帮助文档中说列名必须以“custpage”开头,但情况并非总是这样。如果你在搜索中返回“trandate”,那么就有一个名为“trandate”的子列表字段,这些值就会对齐。我意识到我遗漏了一个细节——我需要对字段进行分组。在我保存的搜索中,我将它们分组在那里。当我解组时,效果很好。如何显示分组结果?–