ディスカッション

NetSuiteの保存検索やレポートをマスターするための究極のガイドである分析センターを使用して、データの力を最大限に活用しましょう。複雑さを単純化し、組織の真の可能性を解き放ちます。今すぐ分析センターに参加して、新たな高みを目指しましょう!
New AI Community Guidelines. Please review and follow them to ensure AI use stays safe, accurate, and compliant.
Narrative Insights is Temporarily Unavailable due to an Infrastructure Issue. Learn how This Impacts Your Account and What to Expect While the Feature is Disabled.

SuiteScriptを使用して注文書で削除したラインアイテムを取得する

編集済:Jun 2, 2025 2:48PM SuiteCloud / カスタマイズ

適用

製品:  NetSuite 2022.1

シナリオ

SuiteScriptでサブリストアイテムの削除を検出・取得します。

nlapiGetOldRecordかつnlapiGetNewRecordのAPIを使用して、レコードの編集後またはロード時の値を配列にプッシュして、相互比較して、サブリストラインの不足がある事をチェックします。

注:nlapiGetOldRecord()はあるスクリプト種類のみで使用できます。(SuiteAnswers 記事: 10278 Record APIsを参照してください)

解決策

注:ラインアイテム数はループカウントに参照します。

  1. 元のレコードのラインアイテム数とフィールド値をnlapiGetOldRecord()で取得します。

  2. 値を取得するループを作成して配列にプッシュします。

  3. 編集後の現在の残りのサブリストラインアイテム値とラインアイテム数を取得します。

  4. 値を取得するループを作成して配列にプッシュします。

  5. 指数としてループのカウンタを使用して、各配列の値を比較するループを作成します。

  6. 2つ目の配列が空白である事をチェックする条件を追加して、元のレコードから特定の配列の指数を返します。

特定のサンプルとは、以下のサンプルコードで注文書から削除されたサブリストラインアイテムの値を取得します。

//old record array assignment
        var oldRec = nlapiGetOldRecord();
        var oldRecArr = {};
         for (var x=1; x <= oldRec.getLineItemCount('item'); x++)
         {
            oldRecArr[x] = oldRec.getLineItemValue('item', 'item', x);
            nlapiLogExecution('DEBUG', 'Old record line values: ', oldRecArr[x]);
         }
       

ようこそ!

サインイン

完全な詳細を表示するには、サインインしてください。

登録

アカウントがありませんか?ここをクリックして始めましょう!

リーダーボード

コミュニティの達人

第2四半期 (4月~6月 2026)

今週のリーダー

今月のリーダー

歴代リーダー