---
sourceDocument: オーストラリアのカスタマーサービス管理 (CSM)
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/customer-service-management

 Release :

    - australia

ft:locale :

    - ja-JP

ft:publication_title :

    - オーストラリアのカスタマーサービス管理 (CSM)

ft:clusterId :

    - csm

bundleId :

    - csm

workflow :

    - Customer and Industry


---

# すべての機会を取得カスタムアクション

# すべての機会を取得カスタムアクション {#ariaid-title1}

* リリースバージョン: Australia
* 
* 更新日 2026年03月12日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：4分

すべての機会を取得アクションは、機会レコードを Salesforce アプリケーションから取得します。このアクションは、リモートの機会テーブルを表示するときに呼び出されます。

## アクションの入力 {#csm-get-all-opportunities-action__section_cz2_m2z_53b}

すべての機会を取得アクションは、クエリーによって返される最大レコード数を特定する単一の整数パラメータを受け取ります。REST ベースのアクションは、ページネーションに対応できません。このため、サードパーティアプリケーションから返されるレコードの数を制限することが重要です。リモートテーブルのレコード数は 1000 件を超えないようにしてください。デフォルトのレコード数は 500 件です。

## 前処理ステップ {#csm-get-all-opportunities-action__section_hrw_m2z_53b}

前処理スクリプトステップでは、アクション入力自体を受け取ります。

前処理スクリプトは、許可された最大レコード数によって制限されるすべての機会の SELECT クエリーを作成します。このクエリーは、Salesforce オブジェクトクエリー言語 (SOQL) に基づきます。  

    (function execute(inputs, outputs) {
      
      outputs.query = "query/?q=SELECT+Name,Id,AccountId,CloseDate,Amount," +
                      "StageName,Probability,Type+FROM+Opportunity";

      outputs.query = outputs.query +
                      "+LIMIT+" + inputs.max_number_of_opportunity_records; 
      
    })(inputs, outputs);

興味がある機会レコードのフィールドを指定する必要があります。この例では、名前、ID、アカウント ID、クローズ日、金額、ステージ名、可能性のフィールドを使用しています。利用可能なフィールドの完全なリストを表示するには、機会フィールドを取得アクションを使用します。

また、ORDERED BY キーワードと ASC または DESC ソート方向を追加して、クエリー検索の順序を制御できます。たとえば、LIMIT を指定する行の前に、次の行をスクリプトに追加することができます。これにより、クエリは最新のクローズ日の最初のレコード 500 件を返すようになります。  

    outputs.query = outputs.query + "+ORDERED+BY+CloseDate+DESC";

前処理の出力はクエリーです。

## REST ステップ {#csm-get-all-opportunities-action__section_j3b_n2z_53b}

REST ステップは、Salesforce スポークの REST ベースのアクションの標準的な REST ステップです。変更を加える必要はありません。適切な接続エイリアスをポイントしていることを確認してください。

## 後処理ステップ {#csm-get-all-opportunities-action__section_jxp_mfz_53b}

後処理スクリプトステップでは、アクション入力と REST ステップを入力として受け取ります。

後処理スクリプトは、クエリー応答のエラーを確認し、必要に応じてエラーメッセージを設定し、応答本文から機会データを抽出し、レコード数の制限が原因で Salesforce からすべてのデータが取得されなかったことを示す情報メッセージを作成します。  

    (function execute(inputs, outputs) {

      try{
        var response = JSON.parse(inputs.res_body);
      } catch(e) {
        outputs = errorHandler(inputs, outputs);
      }


      function createOutputJson(inputs, outputs) {
        try{
          outputs.records = { data: response.records };
          outputs.status = "Success";

          if ( outputs.records.data.length ==   
               inputs.max_number_of_opportunity_records ) {
            outputs.info_message = "Opportunity retrieve operation was " +
                                   "limited to" +
                                   inputs.max_number_of_opportunity_records +
                                   " records.";
          }      
        } catch(e) {
          outputs = errorHandler(inputs, outputs);
        }
        return outputs;
      }


      function errorHandler(inputs, outputs) {
        outputs.status = "Error";
        outputs.error_message = "Unknown Error. " + 
                                "Please check error log for more information";

        if(inputs.res_body.contains("message"))
          outputs.error_message = response[0].message;

        return outputs;
      }

      if(inputs.status_code == "200")
        outputs = createOutputJson(inputs, outputs);
      else
        outputs = errorHandler(inputs, outputs);

    })(inputs, outputs);

次に、後処理ステップの出力を示します。

## アクションの出力 {#csm-get-all-opportunities-action__section_xnl_2gz_53b}

アクションの出力は、クエリステータス、エラーおよび情報メッセージ、機会レコードで構成されます。アクションの出力については、前のスクリーンショットを参照してください。

