我正在尝试使用NetSuite中的套件脚本关闭销售订单。
我注意到已经关闭的记录的“状态”设置为“已关闭”。我在提交记录之前尝试设置此字段,但这不起作用,记录仍然处于“待完成”阶段。
是否涉及其他任何领域?
提前致谢!
答案 0 :(得分:7)
没有实际的'关闭'交易记录的等效状态。
您必须遍历所有订单项并设置为关闭,然后重新提交记录以提交更改。
以下是示例代码:
var obj = nlapiLoadRecord('salesorder', 1);
var count = obj.getLineItemCount('item');
for(var i = 1; i <= count; i++) {
obj.setLineItemValue('item', 'isclosed', i, 'T');
}
nlapiSubmitRecord(obj);
答案 1 :(得分:2)
在suitescript 2.0中使用aftersubmit()尝试以下代码。它将字段“ isclosed”设置为“ true”。
var itemcounts = salesorderRecord.getLineCount({
sublistId: 'item'
});
for (var i = 0; i < itemcounts; i++) {
var lineNum = salesorderRecord.selectLine({
sublistId: 'item',
line: i
});
var setclosed = salesorderRecord.setCurrentSublistValue({
sublistId: 'item',
fieldId: 'isclosed',
line: i,
value: true,
ignoreFieldChange: true
});
salesorderRecord.commitLine({
sublistId: 'item',
line: i
});
}salesorderRecord.save();
答案 2 :(得分:1)
var count = poRec.getLineCount({
sublistId: 'item'
});
for (var i = 0; i < count; i++) {
poRec.setSublistValue({
sublistId: 'item',
fieldId: 'isclosed',
line: i,
value: true
});
}
suitescript 2.0代码段
答案 3 :(得分:0)
我可以通过关闭订单包含的各个订单项来关闭销售订单。
每个订单项都有一个需要设置为true('T')的订单项字段'isclosed'。