2016-11-09 124 views
0

我在suitescript新(Javascript语言,NetSuite的custumization根据所用)。 我有一个工作流操作脚本,并希望通过Netsuite中的Scritp调试器进行调试。但是我无法在调试器中看到我的工作流操作脚本,即使我调用了自定义操作。NetSuite公司:如何调试工作流操作的脚本

我使用Eclipse IDE和上传我的文件NetSuite的。这是我的代码,只是在创建员工费用报告时,它只是向员工添加费用报告信息注释。它有返回类型的问题。

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