我使用Suitescript1.0在Netsuite中创建了一个搜索,用于使用其帐号搜索特定的“帐户”。当我保存以下脚本文件时,会在下面代码中的"filters“行中显示一个错误,其中写着"acctnumber不是一个有效的内部id”。我是Netsuite的新手,我想知道为什么会显示错误,以及同样的解决方案。下面是发生错误的下面一段代码。
function COGSAcnt() {
var cOGSAcntNumber = '50001';
var acntNo;
var filters = new Array();
filters[0] = new nlobjSearchFilter('acctnumber', null, 'startswith', cOGSAcntNumber);
var columns = new Array();
columns[0] = new nlobjSearchColumn('internalid');
var acntSearch = nlapiSearchRecord('account', null, filters, columns);
if (acntSearch != null) {
for (x=0; x<acntSearch.length; x++) {
acntNo = ITMSearch[x].getValue('internalid');
}
}
nlapiLogExecution('debug', 'acntNo', acntNo);
return acntNo;
}注意:我希望过滤器是加号(帐号),使用它可以检索Netsuite中帐户的内部in。
发布于 2016-12-17 15:49:19
这就是NS可能有点混乱的地方。如果您查看NS记录浏览器(2/script/record/account.html),请在“筛选器”部分下查看。帐号(加号)不存在。然而,数字(数字)是过滤器。
尝试重写代码以代替使用数字。
发布于 2016-12-18 16:41:10
function COGSAcnt() {
var cOGSAcntNumber = '50001';
var acntNo = [];
var filters = new nlobjSearchFilter('number', null, 'startswith', cOGSAcntNumber);
var acntSearch = nlapiSearchRecord('account', null, filters, columns);
if (acntSearch != null) {
for (x=0; x<acntSearch.length; x++) {
acntNo.push(ITMSearch[x].getId();
}
}
return acntNo;
}https://stackoverflow.com/questions/41197542
复制相似问题