2017-01-27 18 views
0

私は通常JSオブジェクトを使用しませんが、基本的に検索からスクリプトコードを生成できるこのクロムプラグイン(スクリプトとして書き出し)をテストしていました。私は構文にもかかわらず問題があります。NetSuite - 検索の問題

function GetEmployee() 
 
{ 
 
\t var columns = []; 
 
\t var employeeSearch = nlapiSearchRecord('employee'[['access', 'is', 'T'], "AND", ["internalid", "anyof", "121212"]], [columns[0] = new nlobjSearchColumn('internalid'), ]); 
 
\t if(employeeSearch) 
 
\t { 
 
\t \t for (var i = 0; employeeSearch != null && i < employeeSearch.length; i++) 
 
\t \t { 
 
\t \t \t var record = nlapiLoadRecord('employee', employeeSearch[0].getValue(columns[0])); 
 
\t \t \t var id = record.getId(); 
 
\t \t \t nlapiLogExecution('DEBUG', 'return id', id) 
 
\t \t } 
 
\t } 
 
\t return true; 
 
}

エラー:検索または一括更新が存在しないこと。私の保存された検索はレコードを返しますので、同じコードを実行するコードを期待していました...

答えて

2

あなたのnlapiSearchRecordパラメータが正しくありません。あなたは '従業員'の後にカンマを忘れていて、2番目のパラメータは検索フィルタではないsearchidです。

var employeeSearch = nlapiSearchRecord('employee', null, [['access', 'is', 'T'], "AND", ["internalid", "anyof", "121212"]], [new nlobjSearchColumn('internalid') ]); 

また、従業員の社内IDは既に持っていますが、なぜ検索を使用したいのですか?

あなたはいつも '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

+0

感謝を使用することができます。 – MG2016