我正在使用 Netsuite REST API 来创建发票。发票凭证编号 (tranid) 是使用 Netsuite 安装程序自动生成的。我的所有 API 都是在 AWS Lambda 函数中实现的,这些函数配置的并发数为 2(无法修改)。但这种并发设置有时会导致两条记录同时触发,导致Netsuite中文档编号重复。
如何以编程方式避免这些重复的数字问题?
为了解决此问题,我在帐户级别配置了警告和阻止重复号码警告。虽然此功能在 UI 级别起作用,但它并不能防止脚本中出现重复的数字。如何以编程方式避免这些重复的数字问题?
以下是我从 Oracle 支持部门收到的答案。
您报告的行为往往在记录生成(加载交易)期间生成交易 ID 时发生,因此解决此问题的方法是应用仅在保存交易时生成交易 ID 的设置。
选项#1:
在记录创建中使用的表单(首选记录表单或脚本中指定的表单)上将“保存时生成文档编号”字段值设置为“true”。
有关执行此操作的步骤的讨论,请参阅以下 SuiteAnswers 文章: 解释为什么即使启用了自动生成编号允许覆盖,订单号字段仍显示“待生成” 答案编号 103028
对于修改影响的讨论: 保存时生成 Tran ID 答案编号 62197
选项#2:
在通过 Rest API 以编程方式创建记录期间,将字段“generatetranidonsave”设置为“true”。我知道这个字段没有记录,但非常值得尝试通过 JSON 有效负载设置它。
给定的解决方案运行完美。