保存新的客户退款记录后(提交用户事件后)我需要与外部Web服务通信,然后更新记录中的2个字段。执行此代码以加载客户退款
时var o = nlapiLoadRecord("customerrefund", 1906);
返回此错误消息:
INVALID_TRANS_TYP
Transaction type specified is incorrect.
我在"第60章SuiteScript支持的记录"中找到了支持记录的列表。 SuiteScript Developer & Reference Guide表示客户退款只能在服务器端脚本中使用。
我应该如何更新客户退款记录?
答案 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()。