我想根据我选择的特定库存项目在销售订单中添加新的行项目。应该在新订单项中加载现有的项目记录详细信息。为此,我使用了下面的代码,但是它不起作用;
function recalc(type)
{
var itemId = nlapiGetCurrentLineItemValue('item', 'item'); //Get the Item ID
if(itemId == 16340) //Repair Cost
{
alert ("Hi");
//Insert item
nlapiSelectNewLineItem('item');
nlapiSetCurrentLineItemValue('item', 'item', 330); //Repair Cost
nlapiSetCurrentLineItemValue('item', 'quantity', 1);
nlapiSetCurrentLineItemValue('item', 'amount', '0.00');
nlapiCommitLineItem('item');
}
return true;
}
有人可以帮忙重写SS 2.0中的代码。
答案 0 :(得分:0)
您可以参考SuiteScript 1.0 to SuiteScript 2.0 API Map来了解NetSuite SuiteScript 1到2 API。 对于您的问题,您可以使用以下
function recalc(type) {
currentRecord.selectLine({ sublistId: 'item', line: LINE_NO });
var itemId = currentRecord.getCurrentSublistValue({ sublistId: 'item', fieldId: 'item' }); // Get the Item ID
if (itemId == 16340) {//Repair Cost
// Insert item
currentRecord.selectNewLine({ sublistId: 'item' });
currentRecord.setCurrentSublistValue({ sublistId: 'item', fieldId: 'item', value: 330 });//Repair Cost
currentRecord.setCurrentSublistValue({ sublistId: 'item', fieldId: 'quantity', value: 1 });//Repair Cost
currentRecord.setCurrentSublistValue({ sublistId: 'item', fieldId: 'amount', value: '0.00' });//Repair Cost
currentRecord.commitLine({ sublistId: 'item' });
}
return true;
}