Version 8.1 - October 6, 2017

This release comes with the following updates and enhancements:

  • New: We added support for using SSIS variables as the Text Lookup default values.
  • New: The Upsert action in Salesforce destination component now supports using more fields as the external ID fields.
  • New: The Merge action in Salesforce destination component now allows to provide an input value for all writable fields of the working object. This may be considered as a breaking change, as the package saved in the new version will not work on older versions when Merge action is used.
  • New: We added a SendEmptyStringsAsNullValues option to the Salesforce destination component, so there is an option to process empty string values differently than always sending as NULL values which is the default behavior of the component.
  • New: We added a new documentation generation button to all SSIS components that can be used to generate a Word document which describes the component's metadata including relevant mapping, and so on.
  • Enhancement: The ObjectQuery option in Salesforce source component now supports fields that contain more than 3 tokens.
  • Update: There is an update to the licensing component.

Version 8.0 - July 7, 2017

This release comes with the following updates and enhancements:

  • New: We added support for SQL Server 2017.
  • New: We added a new HardDelete action in Salesforce destination component, which can be used to permanently delete records from Salesforce when Bulk API enabled.
  • New: We added a "Use Default Assignment Rule" option in Salesforce connection manager, which allows to use default (active) assignment rule for a Case/Lead or apply all territory assignment rules to Account.
  • New: We added support of retrieving Deleted/Archived records when Bulk API is enabled in Salesforce source component.
  • Update: We updated the API support to version 40.0.
  • Fixed: Uploading attachments may not work properly when using Bulk API option in Salesforce destination component.
  • Enhancement: Improved high-DPI support.
  • Enhancement: Some minor GUI improvements.
  • Enhancement: We added command line support for License Manager program.
  • Update: We no longer deploy Newtonsoft.Json.dll assembly to Windows GAC.
  • Fixed: If you have an Ultimate trial license, it may still report as not licensed.

Version 7.0 RTM - March 21, 2017

This release comes with the following updates and enhancements.

  • New:  We added a new Merge action for Salesforce destination component, which allows you to merge two Salesforce Account, Contact, Lead and Person Account records.
  • New: We added a Wave Destination component which allows to write to Salesforce Wave Analytics.
  • New: We added a new Salesforce connection manager under the name Salesforce (KingswaySoft) to avoid any potential conflicts with other third-party SSIS connections.
  • New: We enabled support SSIS 2008 R2 or earlier for the organization that has TLS1.0 protocol disabled.
  • Update: We updated the API support to version 39.0.
  • Update: We have an updated license agreement.
  • Enhancement: Some UI enhancements so that field mapping in Salesforce source and destination component is not lost when switching the connection manager and action type through UI.
  • Fixed: The Lead Assignment Rule Header may not be applied correctly when you have multiple Salesforce destination components in one data flow task.
  • Fixed: Salesforce destination component may not close the batch job properly when there are batch lock failures.
  • This is a re-release of v7.0 made available on March 15, 2017.

Version 6.0 - January 27, 2017

This release comes with the following updates and enhancements.

  • New: We added support for "Skipped Rows" output in the Salesforce destination component. This is a breaking change, as a prior version (v5.4 or earlier) would not be able to process an SSIS package that contains a Salesforce destination component with the "Skipped Rows" output enabled.
  • New: We added a PK Chunking Header option in Salesforce source component, which can be used to extract large data sets from Salesforce when Bulk API enabled.
  • New: Salesforce destination component now provides the processed results when Bulk API option is enabled. This is in certain way a breaking change, and we automatically upgrade from a previous version of SSIS metadata when the component is opened (upgrade is only performed when it is acknowledged), which may not be compatible with prior versions. 
  • New: We added a ProxyMode option to Salesforce connection manager, which now supports three types of proxy mode: No Proxy, Auto-detect and Manual.
  • Update: We updated the API support to version 38.0 (Winter 2017 Release).
  • Enhancement: Improved error handling in Salesforce destination component when 'Redirect rows to error output' error handling option is used.
  • Fixed: The "BatchSize" property in Salesforce source component cannot be parameterized.
  • Fixed: You may get error "Index was outside the bounds of the array" when passing a null value to the id field for Delete action.
  • Fixed: The error output may contain duplicate records if there are multiple error rows in one batch.

Version 5.4 - October 24, 2016

This release comes with the following important bug fixes:

  • New: We added a new option to Text Lookup feature which allows to skip the record if lookup fails.
  • Update: The license manager now supports co-termed subscription license.
  • Update: We have lowered the minimum requirement of SQL Server editions when using our software.

Version 5.3 - September 15, 2016

This release comes with the following updates and enhancements.

  • Fixed: You may run into "Specified cast is not valid" when reading from BusinessHours object in a Salesforce source component.
  • Fixed: Salesforce Source Editor does not allow saving when Bulk API option is chosen.

Version 5.2 - August 10, 2016

This release comes with the following updates and enhancements.

  • Update: We updated the compatibility with TLS 1.1 or higher.
  • Update: We updated the API support to version 37.0.
  • Enhancement: Text Lookup accepts null as Optional default value
  • Fixed: You may run into "The provided object query contains unexpected error(s)" when you specified both ORDER BY and LIMIT statements in the SOQL query. (Thanks to Jonathan for reporting this)
  • Fixed: The datetime value used in SOQL query are now sent using the same timezone setting specified by the "Output Timezone" option in the Salesforce source component.

Version 5.1 - May 5, 2016

This release comes with the following updates and enhancements.

  • New: Our software has passed Salesforce security review, and we are now officially listed on AppExchange. We invite you to write a review of our solution.
  • New: After passing the Salesforce security review, we have been issued a SOAP API token specific to us, which is now what we use to make service calls to Salesforce. This should lower the minimum requirement of Salesforce editions for integration purpose. The API token is stored in Windows registry and the registry entry is automatically created during the installation.
  • New: We added a new option to the Salesforce connection manager called "InstanceType" which can be used to prevent the hard-coded sandbox service URL that can cause invalid XML errors.
  • New: We added column/field filtering capabilities in Salesforce source component editor window.
  • New: We added a new option in Salesforce destination component, called 'Write batch files with UTF-8 encoding' (Thanks to Lasse for suggesting this feature).
  • New: We added a new option in Salesforce destination component, called 'Remove Invalid Characters'.
  • New: We added a new option in Salesforce destination component, called 'Ignore Null-Valued Fields'.
  • Enhancement: Updated support for the latest SQL Server 2016 release candidate builds. 
  • Enhancement: Running the 32-bit installation package on a 64-bit operating system is now blocked, as doing so makes our connection manager unrecognizable in 64-bit runtime.
  • Enhancement: We removed the requirement of .NET Framework 3.5 SP1 for SSIS 2012 and later.
  • Enhancement: We raised the default connection limit to 100 per host, this eliminates the need of using .config file to overwrite the default .NET framework limit of 2 connections per host.
  • Update: We updated the API support to version 36.0.
  • Update: For SSIS 2012 or later, .NET Framework 4.5 is now required. This is to make sure that our software is ready for the upcoming TLS protocol changes.

Version 5.0 - January 22, 2016

This release comes with the following updates and enhancements:

  • New: We added support for SQL Server 2016 (Visual Studio 2015 SSDT for design time).
  • New: We added support for two new options in Salesforce connection manager, called AllowFieldTruncation, and AllowSaveOnDuplicates.
  • Update: We updated the API support to version 35.0.
  • Update: This release makes the software ready for the upcoming implementation of disabling TLS 1.0 at Salesforce side. With this change, we are officially retiring support of SQL Server 2008 R2 or earlier, since the .NET framework used by SQL Server 2008 R2 or earlier is not be able to support TLS 1.1 or 1.2. You will receive a warning message when you open Salesforce connection manager in a SQL Server 2008 R2 (or earlier) Visual Studio environment.
  • Enhancement: Some UI enhancements including a more detailed reporting when 'Refresh Salesforce Metadata' button is clicked.
  • Enhancement: Some code refactoring for better performance and improved error handling.
  • Fixed: When using Bulk API option in the Salesforce destination component, the number of record in the batch might be something random for the entire batch job.
  • Fixed: When using the Bulk API option in the Salesforce Destination Component, if text lookup fails, the component will fail even the error handling option has been set to "Redirect rows to error output" (Thanks to Sai for reporting this)

Version 4.6 - September 15, 2015

This release comes with the following updates and enhancements:

  • Fixed: When reading and writing to datetime fields using the Bulk API option, the datetime format specified by the Source and Destination Components was not respected (Thanks to Ergest for reporting this)
  • Fixed: When Bulk API option is used in Salesforce Source Component, if the object query does not have all output columns sorted in an alphabetic order, the component might fail after receiving data from Salesforce.
  • Fixed: When input column in Destination Component is of data type 'ntext' with the Bulk API option selected, component writes some strange characters to Salesforce. (Thanks to Fidel for reporting this issue).
  • Enhancement: The license manager program now works in the system that has FIPS compliance policy enabled.
  • Enhancement: Some minor UI adjustments including positioning UI windows in the center of parent screens upon initialization.

Version 4.5 - June 9, 2015

This release comes with the following updates and enhancements:

  • New: We added support for SSIS Integration Toolkit - Ultimate Edition, you can now license all our SSIS Integration Toolkit products using one single license key.
  • Enhancement: When "Assignment Rule" option is specified in Salesforce connection manager, user emails will be triggered should assignment happen.
  • Fixed: When there are two or more target options in the Text Lookup Settings editor, if you opt out of any other object but the first, you will receive the following error message "A minimum of one lookup object should be configured."
  • Fixed: Salesforce connection manager used to save connection information when Test Connection button is clicked regardless of whether the changes are accepted by clicking the “OK” button.
  • Update: When no proxy information is entered, IE default proxy is now used.

Version 4.4 - March 26, 2015

This release comes with the following updates and enhancements:

  • New: We added an "Assignment Rule" option in Salesforce connection manager, which allows to specify the assignment rule to be fired when lead or case is created using Salesforce destination component.
  • New: We added an "Opt Out" option to Text Lookup feature, so that you can now exclude any particular objects from being used for text lookup purpose.
  • Enhancement: Our retry implementation now includes "INVALID_QUERY_LOCATOR" error that you might receive from Salesforce server.
  • Fixed: Salesforce connection manager was not saving proxy port number properly in v4.3.
  • Fixed: Having a multi-select picklist field will cause the Refresh Salesforce Metadata fail in v4.3 due to the recent Salesforce web service interface changes in its v33.0 API release. 

Version 4.3 - February 26, 2015

This release comes with the following updates and enhancements:

  • New: We added an "Output Timezone" option in Salesforce source component, which can be used to specify the timezone of datetime fields' output.
  • New: We added support of integer fields for the Text Lookup feature.
  • New: We added a Default Value option to Text Lookup feature, so it can default to the value specified if lookup has failed.
  • Update: Salesforce connection manager can now handle special characters in its connection string.
  • Update: We have further relaxed the limitations of changing Salesforce source component's field metadata.
  • Update: We updated the API support to version 33.0.

Version 4.2 - December 12, 2014

This release includes the following updates:

  • New: Salesforce source component now supports using Bulk API.
  • New: Salesforce destination component's output columns (SalesforceRecordId, IsNew) in its Default Output can now be disabled or enabled from UI. 
  • New: We added field filtering capabilities in CRM destination component, which include Hide Mapped Fields, Hide Unmapped Fields buttons, and a textbox that accepts a search string. 
  • New: We added a Partial Cache mode to Text Lookup feature.
  • New: We added a new column in Salesforce destination component's editor window which can be clicked to map/unmap the field.
  • Update: We disabled the use of SSL v3 due to its associated security risks.
  • Update: We updated the API version to 32.0.
  • Enhancement: We added the support of USING Scope clause in object query in Salesforce source component.
  • Enhancement: Salesforce source component now supports using SSIS variables in its object query in whichever way you would like to, including using a SSIS variable as the entire query.

Version 4.1 - Oct 9, 2014

This release includes the following updates:

  • New: We added a new "Retry on Intermittent Errors" option in Salesforce connection manager.
  • New: We added a "Send datetime values in UTC format" option to Salesforce destination component.
  • New: Salesforce source component now automatically creates a query statement when switching source type from Object to ObjectQuery, if a Salesforce object was previously selected.
  • Enhancement: Enhanced datetime literal support in object query for Salesforce source component.
  • Enhancement: We added support for multi-level child-parent relationship in object query for Salesforce source component. (Thanks to Justin and Carlo)
  • Enhancement: We added support of NEXT_N_WEEKS:n, LAST_N_WEEKS:n, NEXT_N_MONTHS:n, LAST_N_MONTHS:n in SOQL where clause (thanks to David for reporting this issue).
  • Enhancement: Security Token is now optional in Salesforce connection manager (thanks to John for raising this feature request).
  • Enhancement: We added the capability to remove the extra columns (SalesforceRecordId, IsNew) from Salesforce destination component's default output.
  • Enhancement: We added support for a tiered enterprise license.
  • Update: The software's license agreement has been updated.
  • Fixed: For a Salesforce destination component using Delete action, when text lookup fails, the entire data flow task fails even the component's error handling option has been set to Redirect rows to error output (thanks to David for reporting this issue).
  • Fixed: When reading from LoginHistory object, you might run into an error saying "LoginType] Failed to convert "Other Apex API" to DT_WSTR: The value is too large to fit in the column data area of the buffer."
  • Fixed: When using SSIS 2012 or 2014 project level connection manager, you get an error saying "'Salt' attribute for Password is missing in the project manifest" when the password is stored using EncryptSensitiveWithPassword option (a recent SQL Server cumulative update or service pack is required to work with this fix).

Version 4.0 SR-1 - July 23, 2014

This is a service release which contains the following updates and bug fixes:

  • Fixed: Under some unique circumstances, you may run into an intermittent error saying "System.NullReferenceException: Object reference not set to an instance of an object." (Thanks to Jonathan for reporting this issue).
  • Fixed: Retry did not work when bulk API is used in Salesforce destination component.
  • Fixed: Under some unique circumstances, you may run into an error saying "INVALID_SESSION_ID: Invalid Session ID found in SessionHeader: Illegal Session. Session not found, missing session key: xxxx", where xxxx represents the session key from Salesforce (Thanks to Rick for reporting this issue).
  • Fixed: The default output may contain those records that have failed.
  • Enhancement: Salesforce connection manager now supports empty Security Token option (Thanks to John).
  • Enhancement: Improved login session management.
  • Enhancement: Improved stack trace print.

Version 4.0 - June 10, 2014

This release includes the following updates:

  • New: SQL Server 2014 is now supported
  • New: We added a new output for Salesforce destination component (Salesforce Destination Default Output), which contains two columns - SalesforceRecordId to provide the ID of newly created Salesforce records and IsNew to indicate whether it is a new record or an existing record when Upsert action is used
  • New: We added Text Lookup support of Id column for Update and Delete action
  • New: We added support of "Ignore Case" option for Text Lookup feature
  • New: We added support of "Report Error on Duplicates" option for Text Lookup feature
  • Update: We updated the API version to 30.0 which supports Address, Geolocation compound fields among many other enhancements
  • Enhancement: SOQL query now supports function calls in ORDER BY clause
  • Enhancement: Text Lookup feature now supports multiple lookup entities
  • Breaking Change: We changed the implementation of error output, so it now only contains those rows that erred out.
  • Breaking Change: The Id column in the destination component's Error Output is removed (it has moved to another output as indicated above)
  • Several other enhancements

Version 3.2 - January 3, 2014

This release includes the following updates:

  • New: We added a "Clear All Mappings" button to Salesforce destination component, which you can use to reset all your mappings in the destination component
  • New: We added a new configuration option called ConcurrencyMode to Salesforce destination component when bulk API is used (Thanks to Simon for suggesting this feature)
  • Fixed: Salesforce Source component, or Destination component editor has a misaligned layout when your Windows system uses a non-default DPI setting
  • New: We added an auto-updater feature to the toolkit so it now checks for updates when the software is used in an IDE (Visual Studio, BIDS, SSDT). The auto-updater feature is also added to KingswaySoft License Manager program
  • Enhancement: In Salesforce source component, we removed the feature which automatically updates your source component metadata while you type in Object Query textbox
  • Enhancement: Our retry implementation is now covering the scenario when a ReceiveFailure exception is encountered
  • Update: We have relaxed the technical restriction on how many system transfers can happen to a license key, we removed the restriction on the total number of system transfer
  • Update: We have made corresponding updates to our license agreement in order to reflect the above license restriction change

Version 3.1 SR-1 - September 24, 2013

This release includes the following updates:

  • Enhancement: Enhanced retry implementation, and it now retries for both source and destination components should there be an intermittent networking problem
  • Fixed: You might run into the following error: "System.ArgumentException: Value does not fall within the expected range" (Thanks to Chris for reporting this issue)
  • Change: We have changed the release format from .msi files to .zip files

Version 3.1 - August 8, 2013

This release includes the following updates:

  • New: We added a Request Limits in Salesforce connection manager, so that you can control how many API requests can be made to Salesforce.com from the toolkit within a 24-hour period
  • New: We added support of HTTP compression
  • New: We added a configurable option called Enable Stack Trace, once enabled, it will report any exception encountered with stack trace included
  • Change: When Salesforce API Limits are reached in Salesforce Source component, it will not throw an exception which would fail the entire component, instead it will report a warning message
  • Update: We updated the API version from previous 26.0 to the latest 28.0
  • Enhancement: Some performance improvements

Version 3.0 - June 12, 2013

This release includes the following updates: 

  • New: We added support for Salesforce Bulk API in Salesforce destination component
  • New: We added support for Enterprise License, which allows unlimited installations within an organization
  • New: We added a Text Lookup feature to Salesforce destination component which allows to perform lookup based on text value provided. 
  • New: We added a "Map Unmapped Fields" button to Salesforce destination component's editor window, which allows to map all unmapped fields to upstream columns if a match can be found based on the field's name.
  • Enhancement: Salesforce Connection Manager now accepts Password, ProxyPassword and SecurityToken parameters in its connection string directly.

Version 2.0 SR2 - December 20, 2012

This release includes the following update and bug fix: 

  • Update: We implemented a retry mechanism with Salesforce source component when it encounters a web exception. The retry implementation helps with the scenarios when there is an intermittent networking problem or a micro service interruption.
  • Fixed: When there is an intermittent networking problem or a micro service interruption, Salesforce destination component completely fails even though "Redirect rows to error output" has been selected as the error handling option.

Version 2.0 SR1 - November 20, 2012

This release includes the following updates and bug fix: 

  • Update: We made some improvements so the toolkit handles concurrency better now.
  • Update: There were some minor updates to the installation program.
  • Fixed: There was a problem when entering proxy server port greater than 600 in Salesforce connection manager. (Thanks to Gina for reporting this issue)

Version 2.0 - September 25, 2012

This is our second major release, which includes some exciting new features, and enhancements: 

  • We added "Refresh Salesforce Metadata" button in both Salesforce Source Editor and Salesforce Destination Editor, so that you can refresh Salesforce metadata without having to delete and re-create the component when you have metadata changed at the server side.
  • We added "Data Type" column to both Salesforce Source Editor and Salesforce Destination Editor.
  • We added one new license management feature so that you can move license from one server to another.
  • In Salesforce connection manager, we added support for proxy server.
  • New license model, new license agreement.

Version 1.0 - May 1, 2012

First public release with the following features:

  • Working with the latest Salesforce Web Service API
  • Intuitive user interface to manage connections to your Salesforce.com application
  • Support for Salesforce object or SOQL query in Salesforce source component
  • Support for child-to-parent relationship, aggregation functions and datetime functions in SOQL query
  • Support of parameterized object query using SSIS variables
  • Intuitive user interface which makes it easy to choose output fields in Salesforce source component
  • The ability to choose whether to include deleted or archived records in Salesforce source component
  • Support for Create/Update/Delete/Upsert actions in Salesforce destination component
  • Intuitive column mapping interface in Salesforce destination component
  • The ability to enter different batch size for Salesforce source and destination component