In this article
You can find below the major changes and improvements of the Salesforce Connector 1.1
The connector download section can be found at this page.
Class Not Found Exception issue
This version fixes the "java.lang.ClassNotFoundException: org.apache.commons.beanutils.PropertyUtils" issue that could happen when exporting Salesforce data.
The new connector is now shipped with an additional library (commons-beanutils-1.9.3.jar) containing the required class which is used by the Salesforce API in some situations.
- Salesforce Templates 2018-09-28 or higher
Salesforce Bulk Mode support new parameters at read
The connector supports new parameters when using Bulk Mode to retrieve Salesforce data, which has been added also in the templates.
It supports defining the concurrency mode, timeout for job execution, and pollint for checking the job status.
Support additional OAuth2 flows
All the OAuth2 flows supported by the Designer and Runtime can now be used with the Salesforce connector, which only supported 'Authorization Code Grant' in the previous versions.
Ability to ignore fields based on a pre-defined value
The connector now supports ignoring fields based on a user defined keyword.
When the keyword is encountered in data, the field is not sent to Salesforce.
This applies when writing data into Salesforce and is specified using the 'Ignore Field Keyword' parameter available on the integration template.
Fix encoding issue while using Bulk Mode to read Salesforce data
There was an encoding issue when reading Salesforce data using Bulk Mode, which is now fixed.
Accented characters for instance were badly encoded.
- Salesforce Templates 2018-06-15 or higher
Bulk Mode supported when reading Salesforce data
The Salesforce BULK API which was supported when writing data into Salesforce can now also be used when reading data from Salesforce.
As a reminder this API is particularly useful when working with a lot of data, to have better performances and to avoid reaching the Salesforce limitation about the number of batches allowed per day.
From this version you have now the possibility to enable BULK mode when reading data from Salesforce.
Note that this might not be relevant to use this when working with small amount of data, in which you'll not notice performance enhancements.
Salesforce API updated to version 42
The Salesforce partner API used by the connector has been updated from version 26 to version 42.
Using a more recent version of the Salesforce API allows to benefit of the optimizations and fixes that might have been done by Salesforce on their API.
You might also notice new fields when reversing Salesforce Objects, which were not returned by the previous version.
New timeout parameters
Two new parameters have been added to the Salesforce Metadata to offer the possibility to change the timeouts.
The value must be provided in milliseconds.
- 'Connection Timeout': timeout used when opening a connection to Salesforce
- 'Read Timeout': timeout used when reading data from Salesforce data
New Bulk parameter
The connector now supports a new option when loading data into Salesforce.
This parameter allows to indicate if the result of the operations should be retrieved or not.
When working with a lot of data, retrieving the result of operations can be time consuming, and this offers the possibility to disable it.
The option, called 'SForce Bulk Read Salesforce Response', can be found on the Salesforce Integration Template.
Datatype conversion Issue
When loading fields from the "SForceExchangeOutput" into a target database, the chosen datatype was not correct.
It was always set to "string" so it causes issues when retrieving the value of the "IsCreated" for instance, which is a boolean.
The conversion of datatype should now be performed correctly.
"InvalidSessionId" error when multiple sessions are executed at the same time
When executing multiple Mappings / Processes using the same Salesforce Connection details in parallel, an "InvalidSessionId" might be thrown.
This was due to an issue about using the same connection in parallel, that should be fixed now.
Timeout could occur when using BULK mode through a proxy
When using the BULK mode on a Salesforce Server accessed through a proxy, a timeout could occur on some environments.
The issue is fixed in this version.
Out of Memory could happen when processing a lot of NULL values
Loading a lot of null values into Salesforce produced Out of Memory errors.
There was an issue about the management of null values when writing data into Salesforce.
It is now fixed.