Retrieving updated Salesforce Contact records using SOQL query - 7.1

Salesforce

author
Talend Documentation Team
EnrichVersion
7.1
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 Open Studio for MDM
Talend Real-Time Big Data Platform
task
Data Governance > Third-party systems > Business applications > Salesforce components
Data Quality and Preparation > Third-party systems > Business applications > Salesforce components
Design and Development > Third-party systems > Business applications > Salesforce components
EnrichPlatform
Talend Studio

Procedure

  1. Double-click the third tSalesforceInput component to open its Basic settings view on the Component tab.
  2. Select the component that will create the Salesforce connection from the Connection Component drop-down list, tSalesforceConnection_1 in this example.
  3. Click the [...] button next to the Module Name field and in the pop-up dialog box, select the object from which data will be retrieved, Contact in this example. The schema of the Contact object will be automatically filled.
  4. Click the [...] button next to Edit schema and in the pop-up dialog box, remove all schema columns except the four columns Name, Phone, Email, and talendlena__Contact_Talend_ID__c.
  5. Add another two columns to retrieve name and external ID of the linked Account object, Contact_Account_Name and Contact_Account_talendlena__Account_External_ID__c in this example.

    To retrieve data of a linked object column, it is necessary to define the name of the column in a particular manner in the schema editor. The correct syntax is NameofCurrentObject_NameofLinkedObject_NameofColumnofInterest. If this syntax is not respected, data from the linked object will not be returned. For more information about how to set schema for the relationship query, see How to set schema for the guess query feature of tSalesforceInput.

  6. Click OK to save the changes. In the pop-up dialog box, click Yes to propagate the schema to the next tLogRow component.
  7. Select Query from the Query Mode drop-down list.
  8. Select the Manual Query check box and click the Guess query button to generate the SOQL query based on the defined module name and schema columns. The generated SOQL query will look like below.
    SELECT Name, Phone, Email, talendlena__Contact_Talend_ID__c, 
    Contact.Account.Name, Contact_Account_talendlena__Account_External_ID__c FROM Contact
  9. In the generated SOQL query string, replace each underscore character after the object name in the column name Contact_Account_talendlena__Account_External_ID__c with a dot character. Then add the WHERE condition clause used to filter data to be retrieved at the end of the generated SOQL query. In this example, it is talendlena__Contact_Talend_ID__c like '201801%' and all Salesforce Contact records whose talendlena__Contact_Talend_ID__c field begins with 201801 will be retrieved. The updated SOQL query will look like below.
    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. Double-click the fourth tLogRow component and on its Basic settings view, select Table in the Mode area to display the result in a table.