ディスカッション
AIを用いた自動化で請求書処理を合理化
AIを用いた考察を使用して、計画と予測を迅速化
SuiteWorldまであと41日となりました。以下の最新情報をご確認ください。
アジェンダビルダー公開
SuiteWorld On Airの登録受付開始
新しいNetSuite Prompt Studioコンテスト
その他の最新情報も!
詳細はこのスレッドでご確認ください!
スクリプトでトランザクションレコードのラインごとにライン番号を追加する
適用
製品: NetSuite 2019.2
シナリオ
レコードを保存した後、ラインごとにライン番号を追加します。
解決策
以下の手順を参照しましょう。
A. トランザクションラインのフィールドを作成します。
1. カスタマイゼーション > リスト、レコード、およびフィールド > トランザクション・ライン・フィールド > 新規 へ移動します。
a. ラベル:ライン
b. フィールド種類:整数
c. Id:_line_number
d. 値を保存: T
2. 次に適用のタブ:対象トランザクションをマークします。
3. 保存を押下します。
B. ユーザー・イベント・スクリプトを作成し、デプロイします。
サンプルのコード:
SuiteScript 1.0
function userEventBeforeSubmit(type) { var lineCount = nlapiGetLineItemCount('item'); for (var lineNumber = 1; lineNumber <= lineCount; lineNumber++) { nlapiSetLineItemValue('item', 'custcol_line_number', lineNumber, lineNumber); } }
SuiteScript 2.0
function beforeSubmit(scriptContext) { var rec = scriptContext.newRecord; var lineCount = rec.getLineCount({ sublistId: 'item' }); for (var lineNumber = 0; lineNumber < lineCount; lineNumber++) { rec.setSublistValue({ sublistId: 'item', fieldId: 'custcol_line_number', line: lineNumber, value: lineNumber + 1 }); } }
その後、トランザクションを保存した後にラインごとにライン番号が表示されます。
免責事項
ここに記載されているサンプルコードは、法律で認められている最大限の範囲で、いかなる種類の保証もなく、「現状のまま」で提供されています。Oracle+NetSuite社は、開発者がそれぞれの開発プラットフォームにサンプルコードを実装したり、独自の Web サーバー構成を使用したりする際に、個々の成功を保証するものではありません。
Oracle + NetSuite社は、サンプルコードに関連するデータまたは情報の使用、使用結果、正確性、適時性または完全性に関して、いかなる保証も行わず、表明もしません。Oracle + NetSuite社は、明示的にも黙示的にもすべての保証を放棄し、特に、商品性、特定目的への適合性、およびコード、またはそれに関連するサービスやソフトウェアに関連する保証を放棄します。
Oracle + NetSuite社は、本サンプルコードに関連してお客様または他者が行った行為に起因するいかなる種類の直接的、間接的または結果的な損害または費用についても責任を負いません。