如何在提交用户事件后修改客户退款

时间:2016-01-29 05:04:36

标签: netsuite

保存新的客户退款记录后(提交用户事件后)我需要与外部Web服务通信,然后更新记录中的2个字段。执行此代码以加载客户退款

var o = nlapiLoadRecord("customerrefund", 1906);

返回此错误消息:

INVALID_TRANS_TYP
Transaction type specified is incorrect.

我在"第60章SuiteScript支持的记录"中找到了支持记录的列表。 SuiteScript Developer & Reference Guide表示客户退款只能在服务器端脚本中使用。

我应该如何更新客户退款记录?

3 个答案:

答案 0 :(得分:3)

没有看到更多代码,看起来没问题。我会仔细检查1906年的internalId是否正确。

另外,如果您只是提交两个字段,我会使用nlapiSubmitField(),这将占用更少的治理点,并且比NetSuite更快,而不是nlapiLoadRecord / nlapiSubmitRecord。

答案 1 :(得分:0)

您的代码看起来是正确的,如果您要更新当前记录,我建议您使用以下代码以避免错误internalid

var o = nlapiLoadRecord("customerrefund", nlapiGetRecordId());

另外,如果您需要更新字段,我建议您考虑在客户退款时使用before submit用户事件脚本,并使用nlapiSetFieldValue(FIELD_ID, FIELD_VALUE)更新字段。在提交之前无需提交记录。

答案 2 :(得分:0)

如果您的脚本部署在客户退款记录中,您还可以执行nlapiGetRecordType()。