ディスカッション
AIを用いた自動化で請求書処理を合理化
AIを用いた考察を使用して、計画と予測を迅速化
SuiteWorldまであと41日となりました。以下の最新情報をご確認ください。
アジェンダビルダー公開
SuiteWorld On Airの登録受付開始
新しいNetSuite Prompt Studioコンテスト
その他の最新情報も!
詳細はこのスレッドでご確認ください!
SuiteScriptで検索のフィルター式が機能しない
適用
製品: NetSuite 2021.1
シナリオ
SuiteScript 2.0のカスタム検索で、フィルターの代わりにフィルター式を利用している時に、検索結果に影響しません。
解決策
フィルター式を利用する場合、事前のフィルターを上書きするために、式の配列オブジェクトまたはシングルフィルター式を利用する必要があります。本検索にて不要の既存のフィルターをnullで空白配列または削除にします。
つまり、「フィルター」は事前に追加した場合のみフィルター式は使用できます。その以外は、無視されます。
require(['N/search'], function(search) { var soSearch = search.create({ type: search.Type.TRANSACTION, columns: ['trandate', 'total', 'status'], filters: [ ['mainline', 'is', 'T'] ], filterExpression: [ [ ["type", "anyof", "CustInvc"], "OR", ["type", "anyof", "SalesOrd"] ], "AND", ["mainline", "is", "T"], "AND", ["datecreated", "within", "thisyear"] ] }); var resultSet = soSearch.run(); var ctr = 0; resultSet.each(function(result) { ctr++; console.log("ctr: " + ctr); return true; }) })
上記サンプルコードでは、検索は作成後に、「フィルター」のパラメータで定義されたフィルターを上書きして、フィルター式を従います。
免責事項
ここに記載されているサンプルコードは、法律で認められている最大限の範囲で、いかなる種類の保証もなく、「現状のまま」で提供されています。Oracle+NetSuite社は、開発者がそれぞれの開発プラットフォームにサンプルコードを実装したり、独自の Web サーバー構成を使用したりする際に、個々の成功を保証するものではありません。
Oracle + NetSuite社は、サンプルコードに関連するデータまたは情報の使用、使用結果、正確性、適時性または完全性に関して、いかなる保証も行わず、表明もしません。Oracle + NetSuite社は、明示的にも黙示的にもすべての保証を放棄し、特に、商品性、特定目的への適合性、およびコード、またはそれに関連するサービスやソフトウェアに関連する保証を放棄します。
Oracle + NetSuite社は、本サンプルコードに関連してお客様または他者が行った行為に起因するいかなる種類の直接的、間接的または結果的な損害または費用についても責任を負いません。