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

问题描述 投票:2回答:1

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

请查看脚本(编辑):

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); } } }

javascript netsuite suitescript
1个回答
3
投票

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

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

© www.soinside.com 2019 - 2024. All rights reserved.