![](/img/trans.png)
[英]How to debug SuiteScript 2.0 (RESTlet) in NetSuite Debugger?
[英]Netsuite: How to debug workflow action script
我是Suitescript(基于Netsuite定制的Javascript)的新手。 我有一个工作流程操作脚本,想通过Netsuite中的Scritp Debugger对其进行调试,但是即使调用了自定义操作,我也无法在Debugger中看到我的工作流程操作脚本。
我使用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');
为了使您的脚本显示在Netsuite脚本调试器中,您需要在脚本部署记录上将“状态”设置为“正在测试”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.