SuiteScript:提交前(使用用户事件脚本设置子列表值)

时间:2018-02-06 03:08:49

标签: javascript netsuite suitescript

我能够获取值,但无法在记录提交之前在用户事件脚本中设置子列表值。循环遍历每一个项目以获得满意的条件,当它来设定价值时,我无法做到。我传递错误的价值还是什么?我甚至没有收到错误。

请查看脚本(编辑):

if (context.type == context.UserEventType.EDIT) { var salesOrderRecord = context.oldRecord; var formId = salesOrderRecord.getValue({ fieldId: 'customform' }); if (formId == 150 ) { var recordId = salesOrderRecord.id; var lineCount = salesOrderRecord.getLineCount({ sublistId: 'item' }); for(var i = 0;i < lineCount; i++){ var sublistItemId = salesOrderRecord.getSublistValue({ sublistId: 'item', fieldId: 'item', line: i }); if (sublistItemId != '' && sublistItemId == 29498) { log.debug('Get Values',sublistItemId); salesOrderRecord.setSublistValue('item','location',i,39); } } }

1 个答案:

答案 0 :(得分:3)

在提交前功能中,context.oldRecord是对用户编辑之前的销售订单的引用。 context.newRecord是对用户编辑 >之后的销售订单的引用,但 之前将其提交给数据库。

如果您需要进行更改,则应更新context.newRecord,因为这还将包括对用户刚刚创建的记录的更改,以及将要提交到数据库的记录。