Version 10.2 - August 17, 2018

The following are the updates and enhancements made for each group of components.

  • [All] Enhancement: We have updated the license manager program to now report details of distinct connections in use.
  • [All] Fixed: Our software may report a connection metering related error during runtime for some specific system environments.
  • [CRM] New: We added three CDS components to facilitate connection to Microsoft Common Data Service (CDS) including CDS Connection Manager, CDS Source Component and CDS Destination Component.
  • [CRM] Update: CRM Destination no longer sends NULL value to multi-select optionset field when it is a Create action.
  • [CRM] Fixed: You may get "KeyNotFoundException" error in CRM Destination component when performing Upsert action towards principalobjectaccess entity.
  • [CRM] Fixed: "Write NULL on empty value(s)" option in Text Lookup may not work properly when using Alternate Key lookup method.
  • [CRM] Fixed: <Opt Out> text lookup method may not work properly when working with partylist type field in CRM Destination component.
  • [CRM] Fixed: "Ignore Unchanged Fields" option in CRM Destination might treat empty string and NULL differently.
  • [CRM] Fixed: You may run into "Cannot update a published workflow definition" error when using CRM Destination component to update the status of workflow.
  • [AX] New: AX Destination component now supports collection-based custom actions for Dynamics 365 FO.
  • [AX] Enhancement: AX Destination component no longer sends those read-only fields when using Upsert action to write to Dynamics 365 Finance and Operations environment.
  • [AX] Fixed: AX Destination component may report a pre-execution validation error with its Upsert action when targeting a Dynamics 365 Finance and Operations environment with any non-key fields as Upsert matching fields.
  • [NAV] Fixed: Upsert action in NAV Destination component may fail if the input matching key value contains special characters like "()".

Version 10.1 - June 1, 2018

The following are the updates and enhancements made for each group of components.

  • [CRM] New: We added a "Write NULL on empty value(s)" option (enabled by default) in Text Lookup Editor, which can be used to bypass the lookup and pass NULL value to the lookup field when input value is empty or NULL. This change brings back the empty input value behavior prior to our v10.0 release.
  • [CRM] Update: For CRM connection manager using OAuth password-grant authentication, we now provide an unlock button in the Application Access Authorization window which can be used to unlock the field so that you can specify an alternate Authorization URL if needed.
  • [CRM] Update: For "Date Only" fields, the CRM source component now outputs them as a DT_DBDATE field instead of DT_DBTIMESTAMP previously. In order for the change to take effect for existing CRM source components, you need to refresh the component if there are any Date Only fields involved for the concerned CRM entity or query. 
  • [CRM] Fixed: In some situations, you may get "The request was aborted: Could not create SSL/TLS secure channel" error when connecting to an IFD configured CRM server and the ADFS server is on TLS 1.0.
  • [CRM] Fixed: In some specific situations, the auto-refresh of OAuth access token may fail which can cause the authentication to fail after the initial token becomes expired when using OAuth authentication type in CRM Connection Manager.
  • [CRM] Fixed: For timezone-independent fields, CRM destination may update an unchanged datetime value when option "Ignore Unchanged Fields" is enabled and option "Send datetime values in UTC Format" is disabled. 
  • [CRM] Fixed: CRM destination UI may report error "Invalid secondary lookup input column '' for 'xxx' entity, it may not exist any more." when clicking on the Text Lookup ellipse button and secondary lookup is not configured.
  • [AX] New: We added a Recurring Export source type in AX Source component for OData connection, which can be used to retrieve incremental changes or the entire record set using a data export project pre-configured in Dynamics 365 Finance and Operations. 
  • [AX]Enhancement: Improved error handling in AX destination component when 'Redirect rows to error output' error handling option is used.
  • [AX] Update: For AX connection manager using OData password-grant OAuth authentication, we now provide an unlock button in the Application Access Authorization window which can be used to unlock the field so that you can specify an alternate Authorization URL if needed. 
  • [NAV] Fixed: For some very unique NAV instances, you may get "Unable to connect to the remote server" error when performing Update or Delete action in NAV destination component with a batch size greater than 1.

Version 10.0 - April 26, 2018

The following are the updates and enhancements made for each group of components.

  • [All] New: We added support for Azure-SSIS Integration Runtime (IR) deployment and licensing.
  • [All] New: Standard use licensing model, this limits the number of distinct connections to 8 per connection type within a 24 hour period at runtime.
  • [All] Update: We have an updated version of License Agreement that covers the new Azure-SSIS IR licensing model along with many other revisions - the new agreement becomes effective immediately as of April 26, 2018.
  • [CRM] New: We added support for OAuth authentication in CRM connection manager.
  • [CRM] New: We now gracefully handle the errors returned when Dynamics 365 API Limits are reached (more details about the Limits can be found here).
  • [CRM] New: The CRM Source component now includes a SQL to FetchXML converter which can be used to convert SQL script to FetchXML query within the CRM Source component UI.
  • [CRM] New: AuditLogs source type now supports retrieving relationship changes.
  • [CRM] New: The Text Lookup feature in the CRM destination component now supports a secondary field when the Manually Specify option is used.
  • [CRM] New: We added a new lookup method called Nullify Input Values to our Text Lookup feature, so it will default all input values to empty when a lookup reference to a particular target entity is received.
  • [CRM] New: We added support of deleting all audit change history records for a particular record when performing Delete action on "audit" entity in CRM Destination component.
  • [CRM] New: Text Lookup for partylist type field now supports NULL default value in CRM Destination component.
  • [CRM] Enhancement: When a lookup field is configured to use Text Lookup feature, the lookup will always be performed including situations when the input value is empty or NULL. This should be considered as a breaking change, as the lookup procedure would be skipped in prior versions when the input value is empty despite there being a Text Lookup configuration for the field. Note that when the input value is empty, the "Report Error on Duplicates" lookup option will be ignored in v10 (or later). To make your package respect the behavior of prior versions, you may upgrade to our v10.1 release (or later) by utilizing the newly introduced "Write NULL on empty value(s)" option (enabled by default), alternatively you may consider using "NULL" (without quotes) as the Optional Default Value for the lookup configuration (upgrading to v10.1 is recommended for this particular issue).
  • [CRM] Enhancement: Improved equality comparison for datetime fields when "Ignore Unchanged Fields" option is used in the CRM Destination component, particularly when the incoming values contain millisecond parts.
  • [CRM] Enhancement: "Impersonate As" drop-down list in the CRM Source component is now sorted by user name.
  • [CRM] Enhancement: There are some further updates to the handling of statecode and statuscode fields to minimize the use of SetState requests. 
  • [CRM] Fixed: When using Alternate Key in the CRM Destination component, you might receive an error complaining about an invalid key name for the entity, if the target CRM organization is v9.0.
  • [CRM] Fixed: For CRM decimal or money fields, CRM Source and Destination components report a zero precision even if the field might have a precision defined for the field in CRM. For this option to work, you need to click "Refresh CRM Metadata" button in the components.
  • [CRM] Fixed: "Choose Target" grid in Text Lookup dialog may not show any newly added entities even after refreshing CRM metadata.
  • [CRM] Fixed: Workflow/Action drop-down list in CRM destination component may not list custom action properly when working with CRM v9 environment.
  • [CRM] Fixed: The CRM Destination component may send incorrect GUID values when performing ExecuteWorkflow action to work with custom actions.
  • [CRM] Fixed: In some particular situations, you may get error "Invalid input value: 'Optionxxx' for field 'xxx' of entity 'xxx' " in CRM destination component when the optionset value "Optionxxx" is created in an upstream CRM OptionSet Mapping component.
  • [AX] New: We added support for working with Dynamics 365 Finance and Operations on-premise.
  • [AX] New: We added Certificate and Client Credentials OAuth types support in AX Connection Manager.
  • [AX] New: We added a new option to the AX Connection Manager - IgnoreCertificateErrors, which can be used to ignore any SSL certificate errors.
  • [AX] New: AX Destination component now supports returning key values in default output after Create action when working with Dynamics 365 for Finance and Operations.
  • [AX] Enhancement: We significantly improved the UI performance when selecting an AX in the AX source or destination component that uses a Business Connector to connect to AX 2012 R3 or lower.
  • [AX] Enhancement: The AX Destination component has a significant performance improvement in its PreExecute stage when connecting to an AX instance that is version 2012 R3 or lower (through the Business Connector).
  • [AX] Update: We changed "Client Secret" to be a password-type property for AX Connection Manager.
  • [AX] Fixed: Options "Ignore Unchanged Fields" and option "Ignore Null Valued Fields" in AX destination component might be enabled for OData connections.
  • [NAV] Fixed: Documentation generation function in NAV destination component may not work properly.
  • [NAV] Update: Some UI updates to reflect the most recent Dynamics 365 Business Central release.

Version 9.2 - December 14, 2017

The following are the updates and enhancements made for each group of components. 

  • [AX] New: We added support for custom actions in the AX Destination component when working with Dynamics 365 for Finance and Operations (this introduces a breaking change as the new SSIS metadata introduced for the component is not compatible with an older version - the component will silently upgrade to the new SSIS metadata to support the new capability - once the upgrade is done, it can no longer run against an older version).
  • [AX] Fixed: When working with the latest updates of Dynamics 365 for Finance and Operations (v7.2), you may receive an error when processing the metadata received from the server due to the new metadata behaviors introduced in the new version.
  • [CRM] New: We added support for Upsert action when working with principalobjectaccess entity in the CRM Destination component.
  • [CRM] Fixed: The CRM OptionSet Mapping component might report some strange errors during runtime complaining the value does not fit in the buffer. This was a regression bug introduced in v9.1.
  • [CRM] Fixed: The CRM Source component returned timezone-adjusted values for Date Only fields.
  • [CRM] Fixed: When using the Upsert action for a N:N relationship entity in the CRM destination component, it might report an object reference error at runtime.
  • [NAV] New: We added support of Dynamics NAV 2018.
  • [All] Update: Update of licensing component to better support servers within a clustered environment to minimize potential false licensing errors.

Version 9.1 - October 6, 2017

The following are the updates and enhancements made for each group of components. 

  • [All] 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.
  • [AX] New: We added a "Data Scope" option in AX connection manager, which can be used to enable cross-company support for Dynamics 365/Operations.
  • [AX] New: We added a "Client Secret" option in AX Connection Manager, which can be used to authenticate using Azure Web application.
  • [AX] New: We added a "Send datetime values in UTC Format" option to the AX destination component.
  • [CRM] New: This release is now officially supporting Microsoft Dynamics 365 9.0.
  • [CRM] New: We added an "impersonateas" option in the Destination CRM Field for userquery & userform entity when Delete action is used in the CRM destination component.
  • [CRM] New: We added support of a new action - Bulk Delete to the CRM destination component, which brings the number of write actions available to a total of 9.
  • [CRM] New: We added a new output column "NoChangesRequired" in the CRM destination component's Default Output, which returns true when there is no changes detected in the incoming record when compared to what's in CRM.
  • [CRM] New: The CRM OptionSet mapping component now supports a Locale ID input to be used when creating new option values. In the case that the option's internal integration value already exists in the target CRM system, the provided label will be updated or created based on the Locale ID provided.
  • [NAV] New: We added support for multi-threaded writing in the NAV destination component, you can now use one single option to configure the number of simultaneous threads used to write to Dynamics 365/NAV in parallel.
  • [AX] Enhancement: Connections to Dynamics 365 for Operations are now made with the latest and greatest TLS protocol whenever possible.
  • [CRM] Enhancement: We add a number of additional fields that can be written to those close entities when working with incident, opportunity, quote, and salesorder entities.
  • [NAV] Enhancement: Enhanced error handling.
  • [NAV] Enhancement: Connections to Dynamics 365 for Financials are now made with the latest and greatest TLS protocol whenever possible.
  • [AX] Fixed: You may get "Invalid HTTP Request" error when using Update or Upsert action in AX Destination component.
  • [CRM] Fixed: When there is an optionset/picklist field in the CRM destination component that is not mapped to any input, but it happens to have been removed from the CRM system, the destination component will complain about not being able to get metadata for the optionset/picklist field.
  • [All] Update: Some updates to the licensing component.

Version 9.0 - July 7, 2017

The following are the updates and enhancements made for each group of components.

  • New: We added support for SQL Server 2017.
  • [AX] New: We added support for Dynamics 365/Operations.
  • [CRM] New: We added support for multi-threaded writing in the CRM destination component, you can now use one single option to configure the number of simultaneous threads used to write to CRM in parallel.
  • [CRM] New: We added support of Delete action for "audit" entity.
  • [CRM] New: We added a new "Send" action to the CRM destination component which can be used to send CRM emails.
  • [CRM] New: We added Max Rows Returned option in CRM source component, which can be used to limit the number of records returned.
  • [CRM] Fixed: For some CRM entities, the Create action in CRM destination component might post two service calls instead of one when the provided statecode is the default one.
  • [CRM] Fixed: CRM destination component tries to retrieve OptionSet/Picklist field metadata even the field is not mapped to an input column.
  • 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.
  • Update: All our assemblies and installation .msi files are now signed.
  • Fixed: If you have an Ultimate trial license, it may still report as not licensed.

Version 8.1 - March 15, 2017

The following are the updates and enhancements made for each group of components.
  • Microsoft Dynamics 365/CRM Components
    • New: We added the new German CRM online region for selection in CRM connection manager.
    • Fixed: CRM source component returns empty values for custom customer name field, even though the field may have a value.
    • Fixed: CRM OptionSet mapping component may report an error in its UI if any mapped option values have recently been deleted in CRM.
    • Fixed: When a CRM destination component is using manually specified fields for the Upsert or Update action, and it is using BatchSize of 1, the component may fail when multiple matches are found even it is configured to Update All or Update One.
    • Fixed: In some very unique situations when CRM is not returning statuscode field values for no obvious reason even the field is requested in a query, if the destination component is configured to have statecode/statuscode fields mapped with the "Ignore Unchanged Fields" option checked, the destination component can fail when comparing the values.
    • Enhancement: When an incoming addressused value contains leading or trailing space characters, the destination component is now performing a trim action to remove those characters, otherwise CRM server will report an error when posted.
  • Microsoft Dynamics 365/NAV Components
    • Fixed: We fixed the automatic truncation of decimal numbers in the Dynamics 365/NAV source component.
  • Microsoft Dynamics 365/AX Components
    • Fixed: In some unique situations, you may get duplicate error messages in one error row when Redirect rows to error output option enabled.
  • Update: We have an updated license agreement in this release.

Version 8.0 - January 27, 2017

This is the official first release of the SSIS Integration Toolkit for Microsoft Dynamics 365. This toolkit combines the now retired SSIS Integration Toolkit for Microsoft Dynamics CRM, AX and NAV into one toolkit.

Note: Clients with SSIS Integration Toolkit for Microsoft Dynamics AX or NAV license keys will need a replacement key before upgrading to v8.0 or above. Please email [email protected] to receive your new key.

The following are the updates and enhancements made for each group of components.

  • Microsoft Dynamics 365/CRM Components
    • New: We added support for "Skipped Rows" output in the CRM destination component. This is also a breaking change, as a prior version (v7.4 or earlier) would not be able to process an SSIS package that contains a CRM destination component with the "Skipped Rows" output enabled.
    • New: You can now open a CRM view to be used to the FetchXML query in the CRM source component. Also added is the capability to load the query from a file.
    • New: Text Lookup feature now supports using SSIS variables in its Optional default value.
    • New: We added a ProxyMode option to Dynamics 365/CRM connection manager, which now supports three types of proxy mode: No Proxy, Auto-detect and Manual.
    • New: We added two new optional fields (CoalesceNonEmptyValues and PerformParentingChecks) for Merge action in CRM destination component.
    • Enhancement: We updated the support for Microsoft Dynamics 365 for Sales.
    • Fixed: When createdby field is mapped in the destination component for Create action, if the field is configured to use Text Lookup and the lookup has failed for a record, the error message in the Error Output can be misaligned with its actual row, if the destination component's Error Handling is set to "Redirect rows to error output".
    • Fixed: When working with CRM 4 or CRM 3, you might get "Object reference not set to an instance of an object error" when using <distinct> in FetchXML and the actual number of distinct results is greater than the batch size you have specified in the query.
  • Microsoft Dynamics 365/NAV Components
    • New: We added support for Microsoft Dynamics 365 for Financials and Microsoft Dynamics NAV 2017.
    • New: We added a ProxyMode option to Dynamics 365/NAV connection manager, which now supports three types of proxy mode: No Proxy, Auto-detect and Manual.
    • Fixed: The NAV source component does not save the Page Filtering and Supplementary Parameters properly through UI.
  • Microsoft Dynamics 365/AX Components
    • New: We added a new option to the AX destination component - Include Non-Editable Fields, which can be used to include all fields in AX.
    • New: We added a new option to the AX destination component - Bypass Table Method, which can be used to bypass the business logics implemented in table methods when writing to AX.
    • New: We added support of writing to AxaptaContainer type field in AX destination component.
    • Fixed: The AxRecId in the Default Output of the AX destination component may be generated in an incorrect data type format (Thanks to Henrik for reporting this).

For release notes prior to v8.0 please see the individual release note archives: