0

我通过带有内部 id 的 UI 为 savedSearch 本身创建了一个 savedSearch customsearch_savedsearch

当我使用套件脚本加载搜索时。它显示发生了意外错误。

var search = nlapiLoadSearch(null, 'customsearch_savedsearch');

上述语句适用于所有其他记录类型,但对于savedSearch记录类型失败。

savedSearch记录类型的内部 id 可能是什么?

4

7 回答 7

1

您不能null用于第一个参数。加载或创建搜索时,您还必须指定搜索的记录类型。无论搜索什么记录类型customsearch_savedsearch,这就是您将作为第一个参数传入的内容。

因此,例如,如果您保存的搜索是客户搜索,那么您可以通过以下方式加载它:

var search = nlapiLoadSearch('customer', 'customsearch_savedsearch');
于 2015-07-16T16:22:08.210 回答
0

尝试

var search = nlapiSearchRecord(null, 'customsearch_savedsearch');

文档:

nlapiSearchRecord(类型、ID、过滤器、列)

使用一组条件(您的搜索过滤器)和列(结果)执行搜索。或者,您可以使用此 API 执行现有的已保存搜索。结果限制为 1000 行。另请注意,在搜索/查找操作中,长文本字段在 4,000 个字符处被截断。nlapiSearchRecord 允许的使用计量为 10 个单位。

客户端、用户事件、计划、portlet 和 Suitelet 脚本都支持此 API。

于 2015-07-16T17:42:41.117 回答
0

如果`

var search = nlapiSearchRecord(null, 'customsearch_savedsearch'); 

不工作`使用

var search = nlapiSearchRecord('', 'customsearch_savedsearch');
于 2015-07-17T01:10:23.600 回答
0

您的陈述中的一切看起来都是正确的。我认为问题在于 SuiteScript 不支持 SavedSearch 记录类型。这是支持的类型列表。

于 2015-07-17T01:58:22.093 回答
0

您应该能够使用上述方法运行它

var search = nlapiSearchRecord(null, 'customsearch_savedsearch',null,null); 

我已经在我的代码中使用了它并且没有任何问题。确保您对已保存的搜索设置了正确的权限。首先,将其设置为公开。在受众群体中,“全选”角色。

于 2015-07-22T09:58:52.873 回答
0

你的语法是正确的。但是,即使您能够创建已保存的搜索,已保存的搜索类型(也如预算记录)也无法编写脚本。这就是您遇到该错误的原因。很可能支持 SuiteScript 记录浏览器中列出的那些记录类型。您可以在此处查看列表:

***注意:您应该先登录该帐户。
生产https://system.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2016_1/script/record/account。 html

沙盒https ://system.sandbox.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2016_1/script/record/account.html

于 2016-05-21T15:33:16.993 回答
0

我知道这是一个老问题,我在自己尝试做同样的事情时遇到了它,但我只是成功地尝试了以下方法:

var search = nlapiLoadSearch('savedsearch', 'customsearch_savedsearch');

看起来有点鼻子上,但它的伎俩。

于 2019-04-15T20:00:16.000 回答