ディスカッション
AIを用いた自動化で請求書処理を合理化
AIを用いた考察を使用して、計画と予測を迅速化
SuiteWorldまであと41日となりました。以下の最新情報をご確認ください。
アジェンダビルダー公開
SuiteWorld On Airの登録受付開始
新しいNetSuite Prompt Studioコンテスト
その他の最新情報も!
詳細はこのスレッドでご確認ください!
企業間発注書の配送先住所を、企業間注文書のカスタム配送先住所からスクリプトで入力する
適用
製品: NetSuite 2022.1
シナリオ
関係会社間注文書により関係会社間発注書を記入する事をスクリプトで自動化したいです。
解決策
注文書へデプロイするユーザーイベントスクリプトを作成して、以下のロジックを応用します。
'intercotransaction'のフィールドは'not null'となっているチェックが必要です。
注:intercotransactionとは、「ペアの関係会社間トランザクション」のフィールドの事です。'intercotransaction'は空白以外となっている場合、(関係会社間発注書と紐付いている)フィールドの値を取得します。
関係会社間発注書をアクセスして、アドレスフィールドを取得します。
取得した関係会社間発注書のアドレスフィールド値を関係会社間注文書へ設定します。
レコードを保存します。
以下のコードのロジックと値の取得が実行するSuiteScript 2.0は注文書のレコードへデプロイします。
var rec = scriptContext.newRecord; if (rec.getValue({fieldId: 'intercotransaction'})){ var poID = rec.getValue({fieldId: 'intercotransaction'}); var poRec = record.load({type: record.Type.PURCHASE_ORDER,id: poID,isDynamic: true}); var shipAdd = poRec.getValue({fieldId: 'shipaddress'}); var saved = poRec.save(); log.debug('poID',poID); log.debug('ShipAdd',shipAdd); } else { log.debug('関係会社間発注書ではありません','終了'); }
注:
before/afterSubmitの機能で、ロジックをトリガーした方が良いです。
普通の注文書と関係会社間注文書は同じレコード種類となっているため、'intercotransaction'は空白となっている確認は大重要です。
免責事項
ここに記載されているサンプルコードは、法律で認められている最大限の範囲で、いかなる種類の保証もなく、「現状のまま」で提供されています。Oracle+NetSuite社は、開発者がそれぞれの開発プラットフォームにサンプルコードを実装したり、独自の Web サーバー構成を使用したりする際に、個々の成功を保証するものではありません。
Oracle + NetSuite社は、サンプルコードに関連するデータまたは情報の使用、使用結果、正確性、適時性または完全性に関して、いかなる保証も行わず、表明もしません。Oracle + NetSuite社は、明示的にも黙示的にもすべての保証を放棄し、特に、商品性、特定目的への適合性、およびコード、またはそれに関連するサービスやソフトウェアに関連する保証を放棄します。
Oracle + NetSuite社は、本サンプルコードに関連してお客様または他者が行った行為に起因するいかなる種類の直接的、間接的または結果的な損害または費用についても責任を負いません。