ブロックリファレンス

BLOCKS Reference

Salesforce

SOQLクエリーの実行

概要

このブロックは、SalesforceのSOQLクエリーを実行して、結果を「結果を格納する変数」プロパティで指定された変数に格納します。

SOQLクエリーの実行ブロックの概念図

変数には、オブジェクト配列形式で、クエリー結果が格納されます。変数に格納されたデータを処理する系統のブロックと組み合わせて使用できます。

以下に、変数に格納されたデータを処理する系統のブロックの一部を列挙します。

warning 警告

SOQLクエリーを実行した結果のレコード件数が多いと、ブロックの実行がエラーになったり、動作しなくなる可能性があります。大量のレコード件数を扱う場合は、「SOQLクエリーの結果からGCSにファイル作成」ブロックの利用をおすすめします。

プロパティ

プロパティ名 説明
ブロック名

編集パネルに配置した当該ブロックの表示名が変更できます。

ブロックリストパネル中のブロック名は変更されません。

アカウント

Salesforceアカウントを選択します。

error_outline 備考

Salesforceアカウントは、あらかじめフローデザイナーの設定のSalesforceアカウントで設定を済ませておく必要があります。

SOQLクエリー

SalesforceのSOQLクエリーを指定します。

変数展開の指定が可能][%形式の文字列書式の指定が可能]
結果を格納する変数

SOQLクエリーを実行した結果を格納する変数を指定します。

クエリー結果は、以下のようなオブジェクト配列形式で格納されます。

[
  {
    "name": "opportunityA",
    "amount": 100.99,
    "sales_date": "2021-06-30"
  },
  {
    "name": "opportunityB",
    "amount": 99.01,
    "sales_date": "2021-01-30"
  }
]
Sandbox SOQLクエリーの実行先となるSalesforceがSandbox環境かどうかを指定します。
ブロックメモ このブロックに関するメモが記載できます。このブロックの処理に影響しません。
APIバージョン

このブロックで使用するAPIのバージョンを指定します(このブロックでは、Salesforceが提供するAPI経由でSOQLクエリーを実行しています)。

APIのバージョンによって、使用できるクエリーの文法や関数が異なる可能性があります。UNSUPPORTED_API_VERSIONというエラーメッセージがフローデザイナーのログに出力された場合は、このプロパティを適切なAPIバージョンに変更すると解決する可能性があります。

自身の環境で使用できるAPIバージョンについては、SalesforceのEditionおよびAPIバージョンを確認する方法を参照してください。

使用例

この使用例では、Salesforceからプロジェクトデータを取得し、データを活用するフローを紹介します。

error_outline 「プロジェクト管理と分析」シナリオについて

この使用例は「プロジェクト管理と分析」シナリオの一部です。このシナリオでは、以下のSalesforce関連ブロックを組み合わせて、プロジェクトデータの取得・更新・分析を行います。

  1. 「SOQLクエリーの実行」ブロック:Salesforceからプロジェクトデータを取得(現在のブロック)
  2. レコードの追加」ブロック:新規プロジェクトデータをSalesforceに登録
  3. レコードの更新、無ければ追加」ブロック:既存プロジェクトデータの更新または新規登録
  4. 変数からAnalyticsへアップロード」ブロック:取得したデータをCRM Analyticsにアップロード

各ブロックの使用例を順に参照することで、Salesforceデータを活用した完全なワークフローを理解できます。

このフローは、プロジェクトマネージャー向けの進捗分析レポート作成や、経営層へのプロジェクト状況報告など、Salesforceに蓄積されたデータを有効活用する際に役立ちます。

前提条件
  • Salesforceアカウントが設定済みであること
  • 「プロジェクト管理」カスタムオブジェクト(Project__c)が作成済みで、アクセス権があること
  • GCPサービスアカウントが設定済みであること(スプレッドシート出力時に必要)
カスタムオブジェクトについて

この例では、「プロジェクト管理」というカスタムオブジェクトを使用します。以下の設定でカスタムオブジェクトが作成されていることを前提としています。

項目 設定値 説明
表示ラベル プロジェクト管理 画面に表示される名前
オブジェクト名 Project APIで使用される名前(末尾の__cは自動付与)
レコード名 プロジェクト管理名 各レコードを識別するための項目の名前
データ型 テキスト プロジェクト名を任意のテキストで入力可能

このカスタムオブジェクトには、以下のカスタム項目が設定されているものとします。

表示ラベル データ型 項目名 詳細設定 説明
予算 通貨 Budget 桁数:18
小数点以下の桁数:0
プロジェクトの予算額
開始日 日付 StartDate - プロジェクトの開始日
ステータス 選択リスト Status 選択値:
計画中
進行中
完了
プロジェクトの状態
顧客名 テキスト CustomerName 文字数:80 顧客企業名
説明 ロングテキストエリア Description 文字数:32768
表示行数:6
プロジェクトの説明
フローの実装手順
  1. 「SOQLクエリーの実行」ブロックを配置し、以下のように設定します。
    プロパティ名
    アカウント 使用するSalesforceアカウントを選択
    SOQLクエリー
    SELECT 
      Name,
      Budget__c,
      StartDate__c,
      Status__c,
      CustomerName__c,
      Description__c
    FROM 
      Project__c
    ORDER BY 
      Budget__c DESC
    結果を格納する変数 project_data
    Sandbox 適宜選択(本番環境の場合はオフ)
実行結果

取得したデータは以下のようなオブジェクトの配列形式で変数に格納され、後続の処理で利用できます。

[
  {
    "Name": "クラウド移行プロジェクト",
    "Budget__c": 8000000.0,
    "StartDate__c": "2024-03-31",
    "Status__c": "計画中",
    "CustomerName__c": "グローバル商事",
    "Description__c": "オンプレミスからクラウドへの移行"
  },
  {
    "Name": "新規システム開発プロジェクト",
    "Budget__c": 6000000.0,
    "StartDate__c": "2023-12-31",
    "Status__c": "計画中",
    "CustomerName__c": "株式会社サンプル",
    "Description__c": "顧客管理システムの新規開発(予算増額)"
  }
]
データ活用例

このデータを使用した後続処理の例を紹介します。

スプレッドシートに出力する
  1. スプレッドシートを作成」ブロックを配置し、以下のように設定します。
    プロパティ名
    ファイル名 プロジェクト_データ一覧
    出力データの変数 project_data
    ワークシート名 プロジェクト一覧
    共有相手 特定のユーザー
    付与する権限 閲覧
    Eメールアドレス 共有相手のメールアドレスを指定

作成されるスプレッドシートのイメージ:

Name Budget__c StartDate__c Status__c CustomerName__c Description__c
クラウド移行プロジェクト 8,000,000 2024-03-31 計画中 グローバル商事 オンプレミスからクラウドへの移行
新規システム開発プロジェクト 6,000,000 2023-12-31 計画中 株式会社サンプル 顧客管理システムの新規開発(予算増額)
次のステップ

この使用例は「プロジェクト管理と分析」シナリオの一部です。次のステップとして、以下のブロックの使用例を参照してください。

この情報は役に立ちましたか?