2016-11-09 9 views
0

私はsuitescript(Netsuite custumizationで使用されるJavascriptベース)の新機能です。 ワークフローアクションスクリプトがあり、Netsuite.ButでScritp Debugger経由でデバッグしたいのですが、カスタムアクションを呼び出した場合でも、デバッガのワークフローアクションスクリプトが表示されませんでした。Netsuite:ワークフローアクションスクリプトをデバッグする方法

Eclipse IDEを使用して、ファイルをNetsuiteにアップロードします。ここで私のコードは、単にempolyee経費報告書が作成されたときに従業員に経費報告情報ノートを追加するだけです。それはタイプを返すことに問題があります。

function UpdateEmployeeWithExpenseReport() 
{ 
    var stFrequentCriteria = nlapiGetContext().getSetting('SCRIPT', 
     'custscript_oradata_freq_trav_limit'); // get value of the script parameter 
    var intFrequentCriteria = parseInt(stFrequentCriteria); //the limit of frequency 
    var recExpenseReport = nlapiGetNewRecord(); 
    var stEntity = recExpenseReport.getFieldValue('entity'); 
    var today = new Date(); 
    var aMonthAgo = nlapiAddDays(today, -30); 
    // filter just the main lines of expenses 
    var arrSearchFilters = [ 
     new nlobjSearchFilter('employee', null, 'is', stEntity), 
     new nlobjSearchFilter('trandate', null, 'within', aMonthAgo, today), 
     new nlobjSearchFilter('mainline', null, 'is', 'T') ];             
    var arrSearchColumns = [ new nlobjSearchColumn('internalid', null, 'count') ]; // Note: count is not a field, it just counts internal id based on Empolyee expenses reports 
    var arrSearchResults = nlapiSearchRecord('expensereport', null, 
     arrSearchFilters, arrSearchColumns); 
    var stCount = arrSearchResults[0].getValue(arrSearchColumns[0]); //                 
    var count = parseInt(stCount); 
    var stFrequentTraveler = ''; 
    if (count >= intFrequentCriteria) 
    { 
     stFrequentTraveler = 'Frequent'; 
    } 
    else 
    { 
    stFrequentTraveler = 'Infrequent'; 
    } 

    var stAmount = recExpenseReport.getFieldValue('amount'); 
    var intExpenseLines = recExpenseReport.getLineItemCount('expense'); 
    var stNotes = ''; 
    stNotes += stFrequentTraveler + 'Traveler' + '\n'; 
    stNotes += 'Last Expense Report' + '\n'; 
    stNotes += '--Expense Report Total= ' + stAmount + '\n'; 
    stNotes += '--Expense Lines = ' + intExpenseLines; 

    var recEmployee = nlapiLoadRecord('employee', stEntity); // 1 internal name of record, 2.internal id for the record 

    recEmployee.setFieldValue('comments', stNotes); 
    nlapiLogExecution('tDEBUG', 'stEntity', stEntity); 
    stEntity = recEmployee.getFieldValue('entityid'); 

答えて

0

スクリプトがNetsuiteのスクリプトデバッガに表示するためには、スクリプト展開録音の「テスト」のステータスが設定されている必要があります。

+0

通常、「テスト」をスクリプト配布記録のステータスに設定します。 – niso

+0

最終的に私のスクリプトをデバッグしました。問題は展開時でした。 – niso

関連する問題