netsuite - 在销售订单编辑表单上,我无法获得子记录 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
了,我不知道为什么。
您是否知道可能是什么原因,或者可能有任何其他想法来完成这项任务?谢谢
解决方案
NetSuite 目前不允许在编辑模式下甚至通过客户端脚本从 SuiteScript 2.0 设置自定义地址。因此,您可以做的是在提交后或通过工作流更新用户事件中的送货地址。
推荐阅读
- python - 移位以获得 128 位产品
- laravel - Laravel - 是否有任何刀片指令来检查变量是否存在并设置为特定值?
- design-patterns - 用点 lua 分割字符串
- java - 使用多线程系统监视 Zookeeper 上的多个节点
- mongodb-query - 如何在 mongoDB 的 $in 运算符中嵌套 $type
- codeception - Codeception seeInDatabase() 未按预期工作
- javascript - 如何在特定时间内执行 mocha 测试套件
- php - php通过其键访问多维数组的特定位置并设置它
- javascript - 在 Svelte 中传递道具
- fable-f# - 如何与来自 Fable F# 的 Javascript 代码进行互操作?