我通过带有内部 id 的 UI 为 savedSearch 本身创建了一个 savedSearch customsearch_savedsearch
。
当我使用套件脚本加载搜索时。它显示发生了意外错误。
var search = nlapiLoadSearch(null, 'customsearch_savedsearch');
上述语句适用于所有其他记录类型,但对于savedSearch
记录类型失败。
savedSearch
记录类型的内部 id 可能是什么?
我通过带有内部 id 的 UI 为 savedSearch 本身创建了一个 savedSearch customsearch_savedsearch
。
当我使用套件脚本加载搜索时。它显示发生了意外错误。
var search = nlapiLoadSearch(null, 'customsearch_savedsearch');
上述语句适用于所有其他记录类型,但对于savedSearch
记录类型失败。
savedSearch
记录类型的内部 id 可能是什么?
您不能null
用于第一个参数。加载或创建搜索时,您还必须指定搜索的记录类型。无论搜索什么记录类型customsearch_savedsearch
,这就是您将作为第一个参数传入的内容。
因此,例如,如果您保存的搜索是客户搜索,那么您可以通过以下方式加载它:
var search = nlapiLoadSearch('customer', 'customsearch_savedsearch');
尝试
var search = nlapiSearchRecord(null, 'customsearch_savedsearch');
文档:
nlapiSearchRecord(类型、ID、过滤器、列)
使用一组条件(您的搜索过滤器)和列(结果)执行搜索。或者,您可以使用此 API 执行现有的已保存搜索。结果限制为 1000 行。另请注意,在搜索/查找操作中,长文本字段在 4,000 个字符处被截断。nlapiSearchRecord 允许的使用计量为 10 个单位。
客户端、用户事件、计划、portlet 和 Suitelet 脚本都支持此 API。
如果`
var search = nlapiSearchRecord(null, 'customsearch_savedsearch');
不工作`使用
var search = nlapiSearchRecord('', 'customsearch_savedsearch');
您的陈述中的一切看起来都是正确的。我认为问题在于 SuiteScript 不支持 SavedSearch 记录类型。这是支持的类型列表。
您应该能够使用上述方法运行它
var search = nlapiSearchRecord(null, 'customsearch_savedsearch',null,null);
我已经在我的代码中使用了它并且没有任何问题。确保您对已保存的搜索设置了正确的权限。首先,将其设置为公开。在受众群体中,“全选”角色。
你的语法是正确的。但是,即使您能够创建已保存的搜索,已保存的搜索类型(也如预算记录)也无法编写脚本。这就是您遇到该错误的原因。很可能支持 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
我知道这是一个老问题,我在自己尝试做同样的事情时遇到了它,但我只是成功地尝试了以下方法:
var search = nlapiLoadSearch('savedsearch', 'customsearch_savedsearch');
看起来有点鼻子上,但它的伎俩。