ディスカッション
AIを用いた自動化で請求書処理を合理化
AIを用いた考察を使用して、計画と予測を迅速化
SuiteWorldまであと41日となりました。以下の最新情報をご確認ください。
アジェンダビルダー公開
SuiteWorld On Airの登録受付開始
新しいNetSuite Prompt Studioコンテスト
その他の最新情報も!
詳細はこのスレッドでご確認ください!
SuiteScriptを使用して返品を終了ステータスに変更
適用
製品: NetSuite 2021.1
シナリオ
SuiteScript を使用して、orderstatusフィールドを次のいずれかの値に設定することで、返品の承認ステータスを設定できます。
- 返品:承認保留', 'RtnAuth:A'
- 返品:受領保留', 'RtnAuth:B'
- 返品:キャンセル済', 'RtnAuth:C'
- 返品:一部受領済', 'RtnAuth:D'
- 返品:払戻保留/一部受領済', 'RtnAuth:E'
- 返品:払戻保留', 'RtnAuth:F'
- 返品:払戻済', 'RtnAuth:G'
- 返品:終了', 'RtnAuth:H'
解決策
以下サンプルスクリプトでは、返品のステータスを受領保留に変更することができます
var rec = nlapiLoadRecord('returnauthorization','1779'); //1779は返品の内部ID rec.setFieldValue('orderstatus','B'); var id = nlapiSubmitRecord(rec); nlapiLogExecution('DEBUG','id',id);
注: orderstatusフィールドの値を「H」に設定すると
rec.setFieldValue('orderstatus','H');
返品を終了ステータスとなることが期待されますが、実行するとエラーが表示されます。
> INVALID_KEY_OR_REF: Invalid orderstatus reference key H.
この場合、アイテムのサブリスト全体を繰り返し処理し、isclosedフィールドをTrueに設定する必要があります。これを実現するスクリプトは次のとおりです。
var rec = nlapiLoadRecord('returnauthorization','1778'); for(var i=1;i<=rec.getLineItemCount('item');i++){ var isClosedVal = rec.getLineItemValue('item','isclosed',i); if(isClosedVal == 'F'){ rec.setLineItemValue('item','isclosed',i,'T'); } } nlapiSubmitRecord(rec);
免責事項
ここに記載されているサンプルコードは、法律で認められている最大限の範囲で、いかなる種類の保証もなく、「現状のまま」で提供されています。Oracle+NetSuite社は、開発者がそれぞれの開発プラットフォームにサンプルコードを実装したり、独自の Web サーバー構成を使用したりする際に、個々の成功を保証するものではありません。
Oracle + NetSuite社は、サンプルコードに関連するデータまたは情報の使用、使用結果、正確性、適時性または完全性に関して、いかなる保証も行わず、表明もしません。Oracle + NetSuite社は、明示的にも黙示的にもすべての保証を放棄し、特に、商品性、特定目的への適合性、およびコード、またはそれに関連するサービスやソフトウェアに関連する保証を放棄します。