首页 > 解决方案 > 在销售订单编辑表单上,我无法获得子记录 shippingaddress

问题描述

我有一个奇怪的情况。我正在验证在编辑模式下打开的销售订单的送货地址。因此,通过附加到销售订单记录的客户端脚本,我从对象收集数据:

var address = currentRecord.get().getSubrecord("shippingaddress")

这是一个只读子记录地址的实例,所以我可以像这样阅读它

var addr1 = address.getValue({fieldId: 'addr1'});
var city = address.getValue({fieldId: 'city'});
// ... and so on

没关系,然后我将其发送到我的验证服务器获取响应,一切正常。

我的验证服务器返回正确的地址,所以我希望它适用于当前的销售订单送货地址。由于子记录 shippingaddress 是只读的,我想选择“ - 自定义 - ”地址,这会打开一个带有自定义地址表单的弹出窗口,我在自定义地址表单上附加表单脚本以填充此数据,取自主窗口(我可以在 window 或 localStorage 上保存正确的地址,即使 NetSuite 文档不推荐它,但仍然只是为了让它工作)。

这就是问题所在。在我将客户端脚本附加到自定义地址表单之后,我不再可以shippingaddress在主窗口中获得一个。当我运行时:

var address = currentRecord.get().getSubrecord("shippingaddress")

我得到null了,我不知道为什么。

您是否知道可能是什么原因,或者可能有任何其他想法来完成这项任务?谢谢

标签: netsuitesuitescript2.0

解决方案


NetSuite 目前不允许在编辑模式下甚至通过客户端脚本从 SuiteScript 2.0 设置自定义地址。因此,您可以做的是在提交后或通过工作流更新用户事件中的送货地址。


推荐阅读