スクリプトを使用して、販売注文の品目の在庫詳細サブレコードを入力しようとしています。このスクリプトはユーザー イベント スクリプトであり、送信前に実行されます。この時点で、ユーザーはすでに項目情報を入力しています。アイテム、数量、ロット番号 (オプションが在庫番号であるカスタム選択フィールド)。
以下を使用して、在庫の詳細サブレコードを入力します。
for (var i=1; i<=numberOfLineItems; i++){
nlapiSelectLineItem('item',i);
//First get the Lot Number and Quantity
var lotNumber = nlapiGetCurrentLineItemValue('item', 'custcol_select_lot_number');
var quantity = nlapiGetCurrentLineItemValue('item', 'quantity');
var inventoryDetail=nlapiCreateCurrentLineItemSubrecord('item','inventorydetail');
inventoryDetail.selectNewLineItem('inventoryassignment');
inventoryDetail.setCurrentLineItemValue('inventorydetail', 'issueinventorynumber', lotNumber);
inventoryDetail.setCurrentLineItemValue('inventorydetail', 'quantity', quantity);
inventoryDetail.commitLineItem('inventoryassignment');
inventoryDetail.commit();
nlapiCommitLineItem('item');}
これを行うと、次のエラーが表示されます。
通知 (SuiteScript) このトランザクションには、少なくとも 1 つの項目を入力する必要があります。
このエラーが発生する理由は誰にもわかりますか?
ありがとう!