SOQLクエリーを使って更新されたSalesforce連絡先レコードを取得する - 7.3

Salesforce

EnrichVersion
Cloud
7.3
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
EnrichPlatform
Talend Studio
task
ジョブデザインと開発 > サードパーティーシステム > ビジネスアプリケーション > Salesforce
データガバナンス > サードパーティーシステム > ビジネスアプリケーション > Salesforce
データクオリティとプレパレーション > サードパーティーシステム > ビジネスアプリケーション > Salesforce

手順

  1. 3番目のtSalesforceInputコンポーネントをダブルクリックして、[Component] (コンポーネント)タブに[Basic settings] (基本設定)ビューを開きます。
  2. [Connection Component] (接続コンポーネント)ドロップダウンリストから、Salesforce接続を作成するコンポーネントを選択します。この例ではtSalesforceConnection_1です。
  3. [Module Name] (モジュール名)フィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスで、データを取得するオブジェクトを選択します。この例ではContactです。Contactオブジェクトのスキーマは自動的に入力されます。
  4. [Edit schema] (スキーマの編集の横にある[...]ボタンをクリックして、ポップアップダイアログボックスで、NamePhoneEmailtalendlena__Contact_Talend_ID__cという4つのカラムを除くすべてのスキーマカラムを削除します。
  5. さらに2つのカラムを追加して、リンクされたアカウントオブジェクトの名前と外部IDを取得します。この例ではContact_Account_NameContact_Account_talendlena__Account_External_ID__cです。

    リンクされたオブジェクトカラムのデータを取得するには、スキーマエディターで特定の方法でカラムの名前を定義する必要があります。正しい構文はNameofCurrentObject_NameofLinkedObject_NameofColumnofInterestです。この構文が順守されていない場合、リンクされたオブジェクトからのデータは返されません。リレーションシップクエリーのスキーマを設定する方法の詳細は、tSalesforceInputの推測クエリー機能のスキーマを設定する方法を参照してください。

  6. [OK]をクリックして変更を保存します。ポップアップダイアログボックスで[Yes] (はい)をクリックし、スキーマを次のtLogRowコンポーネントにプロパゲートします。
  7. [Query Mode] (クエリーモード)ドロップダウンリストから[Query] (クエリー)を選択します。
  8. [Manual Query] (手動クエリー)チェックボックスをオンにして[Guess query] (クエリーを推測)ボタンをクリックして、定義されたモジュール名とスキーマカラムに基づいてSOQLクエリーを生成します。生成されたSOQLクエリーは次のようになります。
    SELECT Name, Phone, Email, talendlena__Contact_Talend_ID__c, 
    Contact.Account.Name, Contact_Account_talendlena__Account_External_ID__c FROM Contact
  9. 生成されたSOQLクエリー文字列で、カラム名Contact_Account_talendlena__Account_External_ID__cに含まれているオブジェクト名の後ろの各アンダースコア文字をドットに置き換えます。次に、生成されたSOQLクエリーの最後に、取得するデータのフィルタリングに使うWHERE条件句を追加します。この例ではtalendlena__Contact_Talend_ID__c like '201801%'で、talendlena__Contact_Talend_ID__cフィールドの先頭が201801となっているすべてのSalesforce連絡先レコードが取得されます。更新されたSOQLクエリーは次のようになります。
    SELECT Name, Phone, Email, talendlena__Contact_Talend_ID__c, 
    Contact.Account.Name, Contact.Account.talendlena__Account_External_ID__c FROM Contact 
    WHERE talendlena__Contact_Talend_ID__c like '201801%'
  10. 4番目のtLogRowコンポーネントをダブルクリックし、[Basic settings] (基本設定)ビューの[Mode] (モード)エリアからTableを選択して、結果をテーブルに表示します。