Documentation forTask Factory

Task Factory SalesForce.com

 Task Factory users running version 2020.1.4 or older (released prior to May 27, 2020): There's an important Task Factory update. Please visit here for more details.

SalesForce.com Connection Manager

This connection manager is used with SalesForce.com Source and SalesForce.com Destination.

Login Information Tab

Task Factory SalesForce.com Connection Manager Login Information tab

Option Description
User Name (email address) This is your log in email address for SalesForce.com.
Password and Security Token If you do not have your security token you must request it from SalesForce.com. You can do this by logging into your SalesForce account on their site, selecting the Setup link, and then selecting to Reset your security token.

Important:  Enter the password and security token without a delimiter, in the following format: 
  • PasswordSecuritytoken
Timeout (seconds) Seconds before the connection times out trying to connect.

Advanced Tab

Task Factory SalesForce.com Connection Manager Advanced tab

Option Description
Server URL (optional) If you are using a SalesForce.com sandbox account the Server URL text box needs to be changed to point to a sandbox web service URL.
Reuse same connection across all tasks This option allows you to use the same connection across any SalesForce task that is part of your package, that uses this connection manager.
Number of retry attempts Identifies the number of attempts to reconnect to Salesforce before the component fails. This option is useful when pulling large datasets and executions fail due to timing out.

Retry Settings

Option Description
Retry Mode Do Not Retry - The component does not attempt to reconnect. Retry For Any Errors - The component attempts to reconnect for any error. Retry for Http Status codes - The component attempts to reconnect for Http Status codes that you enter in the Response status codes to retry separated by field. Retry for Exception Message - The component attempts to reconnect for exception messages that you enter in the Exception messages to retry separated by field. 
Number of Retries Set the number of attempts to reconnect to Salesforce before the component fails. This option is useful when pulling large datasets and executions fail due to timing out.

Note:  This option becomes available when you select a Retry Mode other than Do Not Retry.
Retry Delay (in seconds) Set the time in seconds that the component waits before trying to connect to Salesforce.

Note:  This option becomes available when you select a Retry Mode other than Do Not Retry.
Response status codes to retry separated by Enter the response status codes that if encountered, the component tries to reconnect.

Note:  Enter multiple Response status codes separated by a (bar). This option becomes available when you select Retry for Http Status codes.
Exception messages to retry separated by Enter the exception messages that if encountered, the component tries to reconnect.

Note:  Enter multiple Exception messages seperated by a (bar). This option becomes available when you select Retry for Exception Messages.

Proxy Information Tab

Task Factory SalesForce.com Proxy Information tab

Note:  Auth Scheme is only available on machines that are running SQL 2008 only.
Option Description
Use Proxy If you wish to make your connection through a proxy you first select Use Proxy, and then fill out the appropriate information below in the Proxy Information pane.

SalesForce.Com Source

Source Icon Source Description
Task Factory SalesForce.com Source The SalesForce.com source is used to retrieve data from SalesForce.com objects within an SSIS package. The data is retrieved using a SQL statement built by the SalesForce.com source. See the SalesForce.com Connection Manager to learn more about setting up the connection manager.

Task Factory SalesForce.com Source

Note:  SalesForce Source 2019.1.1 and above support nested queries.
Option Description
Connection Here you select a connection manager that already exists or you may choose to create one.
SalesForce Object The name of the SalesForce.com object that is used to retrieve data from your SalesForce.com account. Choose your object from the drop down list after connecting to SalesForce.com. Once your object is selected, a query is created in the text box below.
Batch Size Determines the number of rows that are retrieved during a single round trip to the SalesForce.com server.
Include Deleted / Archived Records Selecting this option returns deleted and archived records. The IsDeleted column in the output allows you to determine whether the row is deleted.
Query Mode
  • Normal - Uses normal processing which can use up to 200 batch size. Normal mode is a SOAP request.
  • BulkQuery - Uses bulk processing that can achieve up to 10,000 batch size. BulkQuery mode is webrequest with a file stream.
Output Date As: Using BulkQuery mode, you can choose between the Local Time Zone or UTC Time Zone options. 
Bulk Concurrency  Using the BulkQuery mode, you can choose between parallel (based on the batch size) and serial (one record at a time) modes.
Status Check Interval (seconds) The amount of time in seconds before  a status check occurs.

Note:  The Status Check Interval is two seconds by default. 
Edit SalesForce Query Selecting this makes the auto filled query editable.

Note:  : Variable replacements can be used within queries. The syntax used is <User::MyVariableName>. For variable replacements that require the elimination of tics (''), use the syntax <User::MyVariableName, false>. For example: SELECT <User::OpportunityId, false> FROM Opportunity
SalesForce Query Window Once your object is selected, this window fills with a query.
Variable Parameters Variables here can be dragged into the query window to edit or create new queries.

Variable Parameter Examples

Task Factory SalesForce Source query with User Variable

Additional Videos

Export Data from Salesforce Source In Under 2 Minutes

SalesForce.com Destination

Destination Icon Destination Description
Task Factory SalesForce.com Destination The SalesForce.com Destination is used to send data to a SalesForce.com object. See the SalesForce.com Connection Manager to learn more about setting up the connection manager.

Task Factory SalesForce.com Destination

Option Description
Connection Here you select an existing SalesForce.com connection, or create a new one.
SalesForce Object Once selecting the connection, you then select and object where the data is inserted within your SalesForce.com account.
Action
  • Insert:  Inserts data into the SalesForce object.
  • Upsert: Inserts data into the SalesForce object if the data does not exist or update the data if it already exists. 
    • Upsert requires that an external ID be added to your SalesForce object in your SalesForce.com account.
  • Update: Updates your data in the SalesForce object based on the ID column from the SalesForce object. 
    • The ID from the SalesForce object must exist in the local source data. To the ID column data, the TF Sales Source Adapter must be used to retrieve the data or the ID needs to be retrieved and updated using the output from the SalesForce Destination.
  • Delete: Deletes data from the SalesForce object by sending it to the Recycle bin.
    • The ID column of the SalesForce object is used to delete the data.
  • Merge: Merges three or more SalesForce objects of the same type. You must supply the master record ID and at least one ID for the Merged IDs. 
    • You can supply a maximum of two IDs for this action.
  • HardDelete: Bypasses Delete and permanently deletes data from the SalesForce object.
    • The ID column of the SalesForce object is used to delete the data.

Warning:  Using HardDelete permanently deletes data instead of sending the data to the Recycle bin.

  • Undelete: Restores previously deleted data from the SalesForce object by removing the data from the Recycle bin. 
Upsert External ID If you selected the Upsert action you must select your External ID here.
 Batch Size You can configure a custom batch size (200 or less).
Assignment Rule Select an assignment rule created for their object(s). Rules can be ignored by selecting [No Assignment Rule].
Process Mode
  • Normal:  Creates a CSV file using normal processing that can use up to 200 batch size.
  • Bulk:  Creates a CSV file using bulk processing that can achieve up to 10,000 batch size. Bulk mode uses more network traffic but less IO because no compression occurs.
  • BulkZip:  Also uses bulk processing but compresses the bulk CSV file before sending. BulkZip uses more IO for compression but less network traffic.
  • Bulk XML:  Creates an XML file using bulk processing that can achieve up to 10,000 batch size. 
  • Bulk XML zip:  Also uses bulk processing but compresses the bulk XML file before sending. Bulk XML uses more IO for compression but less network traffic.
Concurrency Using bulk processing mode, you can choose between parallel (based on the batch size) and serial (one record at a time) modes.
Map SalesForce Destination Columns Once you have an object selected, the columns here will be filled. Any column names that match are automatically mapped. To map more columns, select on the Input column that you wish to be mapped to the destination column.
How to handle errors There are three options to handle errors:
  • Fail Component:  The component fails upon the first data error that is thrown.
  • Redirect row to error output:  The rows of data that failed are sent to the error output which then can be used to handle the data errors.
  • Ignore Failure:  The failures are ignored but reported in the Execution Results log.
Refresh Salesforce Columns Selecting this button allows the component to refresh the metadata and update any changes made in Salesforce after the destination was opened.
Wait For Bulk Results This selection can be used along with the bulk processing mode. When selected, it sends a batch of rows to a job and waits for the results of the operation (insert, update, upsert, delete) and then outputs the results to the success output with the ID's generated by Salesforce when updated or created. If this option is not selected, the component does not wait for the results and processes the execution as quickly as possible, and the Salesforce ID is not properly returned.
Use Legacy Output Mode In legacy versions of Task Factory, you could update the unique ID's created by Salesforce.com by connecting a destination component to the Salesforce Destination's error output. This legacy output also returned errors (when error handling was enabled) which could be confusing when sifting through multiple updates mixed with errors. The current version now defaults with the option turned off thus directing the unique ID to the success output. This change allows you to separate the data returned from Salesforce.com from the error output.
Ignore Null Values Selecting this option allows the component to ignore any field that has null values.

Configuring the Salesforce Destination using Expressions

Users who wish to use expressions to configure different properties of the Salesforce Destination should follow these steps:

  1. Return to the package's control flow.
  2. Right-click the Data Flow that contains the Salesforce Destination and select properties.
  3. Navigate to the Expressions property and select the ellipsis (...) .
  4. Select the property in the dropdown menu to be configured.

Task Factory Property Expressions Editor

Additional Information:  See the Task Factory Error Row Handling article for more information about this functionality.