【问题标题】:Netsuite SS1 Cannot tell if inventory detail is setNetsuite SS1 无法判断是否设置了库存详细信息
【发布时间】:2020-05-24 21:55:50
【问题描述】:

我有一个工作流脚本,可在订单获得批准后将销售订单转换为商品履行。

我可以为库存明细创建子记录没有问题,但在某些情况下,Netsuite 会自动设置库存明细。在这些情况下,当我去添加子记录时,我收到关于履行提交记录的错误。

我已经尝试了 2 个小时,但似乎无法找到仅验证库存详细信息是否存在的方法。我尝试使用文档中的示例

var invDetailSubrecord =fulfillment.editCurrentLineItemSubrecord('item', 'inventorydetail'); var invDetailSubrecord =fulfillment.viewCurrentLineItemSubrecord('item', 'inventorydetail'); fulfillment.removeCurrentLineItemSubrecord('item', 'inventorydetail');

以上命令均不执行任何操作并被忽略。我看不出有任何方法可以在创建之前验证库存详细信息是否已设置。无需查看实际数据。

【问题讨论】:

    标签: netsuite


    【解决方案1】:

    在手动设置/更新记录之前,您可以在库存详细信息子记录上使用nlapiGetLineItemCount(我在 SuiteScript2.0 中使用相同并且它有效),如果您的行数大于 0,您可以安全地假设库存详细信息该行已存在。

    您可以查看this 以进一步阅读。

    【讨论】:

    • 这行不通。 nlapiGetLineItemCount() 是一个记录 api。我的请求是关于子列表中子记录的计数。
    • 你可以像inventoryDetailsSubRecord.getLineCount('inventoryassignment')一样使用它。
    • 我能够让它在脚本调试器中工作,但当我尝试将它与我的代码一起使用时却不行。我的代码是一个在批准 SO 我的错误时生成履行的工作流:TypeError:无法调用 null 的方法“getLineItemCount”(INVOCATION_WRAPPER#274) var invDetailSubrecord =fulfillment.editCurrentLineItemSubrecord('item', 'inventorydetail'); var count = invDetailSubrecord.getLineItemCount('inventoryassignment');
    • 我也试过fulfillment.viewCurrentLineItemSubrecord('item', 'inventorydetail', i) 返回无法调用nul的方法“getLineItemCount”
    • 在调用getLineCount 之前,您能确保您有子记录吗?由于存在 NetSuite 无法返回 hasSublistSubrecord 的有效值的限制。您可以查看this 以进一步阅读。
    猜你喜欢
    • 2016-12-24
    • 2014-01-12
    • 2017-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-23
    • 1970-01-01
    • 2015-09-30
    相关资源
    最近更新 更多