我通常不使用JS对象,但是正在测试这个chrome插件(导出为脚本),您可以在其中基本上从搜索中生成脚本代码。我的语法有问题。
function GetEmployee()
{
var columns = [];
var employeeSearch = nlapiSearchRecord('employee'[['access', 'is', 'T'], "AND", ["internalid", "anyof", "121212"]], [columns[0] = new nlobjSearchColumn('internalid'), ]);
if(employeeSearch)
{
for (var i = 0; employeeSearch != null && i < employeeSearch.length; i++)
{
var record = nlapiLoadRecord('employee', employeeSearch[0].getValue(columns[0]));
var id = record.getId();
nlapiLogExecution('DEBUG', 'return id', id)
}
}
return true;
}
&#13;
错误:搜索或批量更新不存在。我保存的搜索返回一条记录,所以我希望代码能够做同样的事情......
答案 0 :(得分:2)
您的nlapiSearchRecord参数不正确。在员工&#39;之后忘记了一个逗号。第二个参数是searchid而不是搜索过滤器。
var employeeSearch = nlapiSearchRecord('employee', null, [['access', 'is', 'T'], "AND", ["internalid", "anyof", "121212"]], [new nlobjSearchColumn('internalid') ]);
此外,您已拥有该员工的内部信息,您为什么要使用搜索?
而且,您总是得到内部信息,您不需要再次添加列。
var employeeSearch = nlapiSearchRecord('employee', [['access', 'is', 'T'], "AND", ["internalid", "anyof", "121212"]]);
if(employeeSearch.length){
for(var i = 0; i < employeeSearch.length; ++i){
nlapiLogExecution('AUDIT', 'id', employeeSearch[i].id);
}
}
您可以直接使用nlobjSearchResult.id