Version 23.2 - September 8, 2023

This release comes with the following updates and enhancements:

  • General
    • Enhancement: We have some updates to the License Manager program UI to make it more responsive to changes made to the license installation in the background.
    • Update: We have removed SSIS 2008 (Including SQL Server 2008 R2) support.
  • New Components
    • New API Framework - GraphQL
      • GraphQL Connection Manager
      • GraphQL Source
      • GraphQL Destination
    • Automation
      • Windows Command Task
    • JSON and XML Processing
      • JSON Extract Task
      • XML Extract Task
    • Marketing and Marketing Intelligence
      • Google Ads Destination Component
    • Premium File Pack
      • SMB Connection Manager
    • New services in the REST framework
      • Blackbaud
      • Emfluence
      • Google Classroom
      • Google People
      • Google Search Console
      • Google Tag Manager
      • OpenAccounting
      • Paycor
      • ZohoExpense
      • ZohoInvoice
      • ZohoSheet
  • Big Data
    • New: We added a new Suppress Value Conversion option to the Google BigQuery source component, which can help read rows that contain Infinity values, which otherwise could raise an "Input string was not in the correct format" error.
    • Enhancement: We have some optimization to the Google BigQuery Command Task so that we should only request the minimum number of rows depending on the chosen Output Type option.
    • Fixed: In Google BigQuery Command Task, the 'Create Query Job' option is not always respected for all 'Output Types'.
    • Fixed: Google BigQuery Command Task may not properly re-populate the 'Single Row Selection Mode' option upon re-opening.
  • Cloud Storage
    • New: We added SAS Token authentication support to Azure Data Lake Storage Connection Manager.
    • New: We added IAM Role support for the Amazon S3 connection manager.
    • Fixed: OneDrive connection manager was not able to generate a request/refresh token when working with a personal account.
  • Data Warehousing
    • Enhancement: We have updated Snowflake connection manager to report a better message when there is a problem authenticating with a third-party identity provider such as Okta.
    • Fixed: We fixed the intermittent "Npgsql.NpgsqlException: Received backend message CommandComplete while expecting ParseCompleteMessage" errors when using Preview function in PostgreSQL, Redshift source and command task components.
    • Fixed: The timeout configuration in Snowflake Command Task may not work properly.
  • Encryption and Compression
    • Enhancement: We have made the PGP New Key window more clear by separating different configurations into two  
  • Google Services
    • New: We added 4 new Google services including Google Classroom, Google People, Google Search Console, and Google Tag Manager.
  • HTTP/Web Services
    • New: We now provide a new certificate chooser window that can be used to select a certificate from Windows certificate store.
    • Enhancement: Our In-app authentication process is now powered by the WebView2 engine, which should work more reliably with some modern services that require the latest browser installations. This enhancement is implemented across all OAuth-based services within SSIS Productivity Pack.
    • Enhancement: We made some important concurrency handling which can help HTTP-based service calls be more efficient. Such optimization can avoid socket exhaustion or concurrency-related errors that might occur in some cases.
  • JSON & XML Processing
    • New: We added a new JSON Extract Task component which can be used as a control flow task to extract data from a JSON file.
    • New: We added a new XML Extract Task component which can be used as a control flow task to extract data from an XML file.
    • New: JSON Extract component now supports upstream columns as root output key fields.
    • New: We have added a new "Node Names Are Case Insensitive" option to JSON Source, JSON Extract, XML Source and XML Extract components.
    • New: We now support reading from an XML node that has string literals along with other child XML nodes as siblings.
    • New: We have a new IsRepeated node configuration in XML Source and Extract components. Without the option, the source component could return NULL values that might be incorrect in some cases.
    • Enhancement: In XML Merger and Destination components, we have removed the IsStandalone checkbox option, and have it replaced with a new 3-item dropdown list named as StandaloneMode. In doing so, we added a new option DontShow, which can be useful for the case where the standalone declaration is not needed at all.
  • Mail Components
    • New: We have added a new FIPS Mode option to SMTP connection manager, which can be used to force some FIPS compliance-related options.
    • New: We have added a new Ignore Certificate Errors option to SMTP connection manager, which can be used to ignore those SSL certificate-related errors.
    • Enhancement: We have updated our SMTP connection manager to report a better error message when the authentication fails.
  • Marketing Intelligence
    • New: We added support for a new Authorization Server URL option for OAuth token generation in Bing Ads connection manager.
    • New: We have added a new Google Ads destination component, which allows you to perform write operations when working with a Google Ads connection.
    • New: We added Filter Expression support when working with Google Analytics source component.
    • Fixed: customerAccountID and some other properties were not parameterizable in Google Ads source component.
  • Message Queue Components
    • New: We have added a new "Use Shared Session" option to the Kafka Source component. This feature, when enabled, can prevent a session from being closed, so it can be used for the situation where the component runs within a loop container.
    • New: We have added a new "Close Shared Session" option in the Premium Message Queue Task component when a Kafka connection is used. This action can be used to work with the "Use Shared Session" option above in the Kafka Source component, it can help close shared session.
    • New: We have added a new "Receive Message Timeout" option to the Kafka Source component.
    • New: We added a new Commit action in Kafka destination component, along with the necessary supporting options.
    • Update: We have updated the IBM MQ client library from v8 to the latest v9.3 to accommodate the new features that might be required.
    • Update: We had various UI updates in IBM MQ connection manager for better alignment and spacing.
    • Update: We had various UI updates in IBM MQ source component for better alignment and spacing.
    • Fixed: Kafka listener mode can randomly stop listening early in Kafka source component or Premium Message Queue Task (if a Kafka connection is used).
    • Fixed: Premium Message Queue Task UI might crash after selecting an out-of-box Message Queue connection manager.
    • Fixed: After upgrading from v21.x to v23.1, packages that contain Azure Service Bus components might become unopenable.
  • NoSQL Components
    • New: We have added a new "Node Names Are Case Insensitive" option to CosmosDB Source, Couchbase Source, and MongoDB Source components.
    • Fixed: When working with Couchbase, creating records in for loop container could result in an "Cannot access a disposed object" error.
    • Fixed: When working with a List datatype field in the DynamoDB destination component, it might send the field value incorrectly using S type.
    • Fixed: Redis connection manager might display the Password field in a plain text format.
  • Premium Data Flow Components
    • New: Premium Derived Column component now includes support for the following new functions:
      • In()
      • NotIn()
      • InStringArray()
    • New: Premium ADO NET destination component now supports Bulk Update/Upsert/Delete and Full Sync actions for IBM DB2 if the IBM data provider is used.
    • Update: In our Premium Excel Source component, we have added a new Suppress file-not-found errors option.
    • Update: In our Premium Excel Source component, we have added a new Suppress sheet-not-found errors option.
    • Update: The PDF source component can fail with a confusing error message when we try to read an out-of-range TableIndex. We are now reporting a better error message when this occurs.
    • Fixed: When working with the Filter parameters in the Premium Service Lookup component, the eclipse button might cause the UI to crash with certain filter conditions.
    • Fixed: Premium ADO NET command task editor UI might crash when trying to expand the object tree if another thread creates a pending non-committing transaction that attempts to make schema changes.
  • Premium File Pack
    • New: We have added support for SMB shared path as a new connection manager. The connection manager works similarly to a local file connection, but it makes it offers the ability to provide a login user credential in the connection manager.
    • New: We have added a new "Use BOM Encoding" option to the Premium Flat File Destination Component, which allows you to specify whether the generated .csv file should use BOM encoding.
    • Fixed: When trying to copy CreationTime to an SFTP connection using the Premium File Transfer Task, you might receive a NullReferenceException related error that says "An error occurred writing '' to the 'CreationTime' property".
    • Fixed: When trying to delete a file that does not exist using the Premium File Transfer Task, it might still report an error even though the component has been configured to ignore errors.
  • REST components
    • General
      • Fixed: After switching the connection manager from one service to a different one in a REST source component, the component might return a NullReferenceException upon re-opening. 
    • ADP
      • New: We added pagination support for the Job Requisitions object.
      • New: We added pagination support for the Worker Demographics object.
    • Authorize.NET
      • Fixed: When working with the Transaction Reporting object, the query parameter may not be sent in a correct format when it contains a datetime value.
    • BigCommerce
      • Update: We have some metadata updates to the order create operation. The updates include some of the newly introduced fields, such as Date_created, External_order_id, etc.
      • Fixed: When working with a BigCommerce endpoint that supports child input, you might run into an error message similar to "The 'Order V2-Orders' object is not mapped to an Input".
      • Fixed: The Order Consignments object was missing in the REST BigCommerce source component.
    • DocuSign
      • Update: We updated 'Accounts->Get account settings information' endpoint to return 10 more fields, including accountUISettings, allowAgreementOrchestrations, allowIDVLevel1Trial, allowOrganizationDocusignMonitorLite, enableInboxBrowseViewsPoweredByElasticSearch, enableInboxRelevanceSort, enableSearchServiceAzureUri, and useNewEnvelopeSearchOnlyWithSearchTerm.
      • Fixed: Some child objects might be missing for some DocuSign objects in the REST destination component, when they are 3 levels or more deep in the hierarchy.
    • Freshservice
      • New: We added filter parameter support for the Tickets object.
      • Update: We have updated the service metadata to the latest version available, which contains  a massive number of updates including many newly introduced service endpoints, objects, and fields.
      • Fixed: Custom checkbox field might be detected as an incorrect string datatype.
    • Jira
      • New: We have added support for a new Personal Access Token authentication option.
    • Magento
      • New: We have added OAuth support for Magento REST connection manager.
      • Update: We have updated some of the object and service endpoint names.
    • Microsoft Teams
      • New: We have added support for two new fields (assignedLabels and preferredDataLocation) when working with the Update action of "Group".
      • Update: We have added some missing fields for Update action of "Group".
      • Update: We have removed batch support for Add Member, Remove Member, Add Owner, and Remove Owner actions.
    • Okta
      • New: We added support for a new Subdomain option in Okta REST Connection Manager, which can be used to support multiple instances when applicable.
    • RingCentral
      • Fixed: When working with the JWT authentication option in a RingCentral REST connection manager, it might report an "Invalid Authorization Header" error.
    • ServiceNow
      • New: We have added a new "Ignore Null Values" option in the ServiceNow REST destination component which can be used to prevent empty value overwrite. 
    • Shopify
      • Update: We have made some updates to Shopify metadata system in which we have added a number of new fields to Shopify components.
      • Fixed: Shopify REST connection manager might report a successful connection even though there are invalid configurations with the connection manager.
      • Fixed: in Shopify REST source component, the line_items values may not be returned from Orders>Abandoned Checkouts object.
    • Xero
      • New: We have added support for Asset API in Xero REST components.
      • Fixed: When working with Xero REST source component, the _LinkId columnd might return Null value when reading grandchild objects with LinkId mode set to Explicit Id.
    • Zoho Books
      • New: We have added support for custom fields in both Zoho Books REST source and REST destination components.

Version 23.1.1 - May 19, 2023

This release is mainly a service release, which comes with the following updates and fixes:

  • Big Data
    • Fixed: Some field might be missing in the designer when writing to X12 EDI format file.
    • Fixed: CDM source component may make repetitive failed service calls to retrieve the list of partitions when the specified path does not exist for the chosen ADLS connection. 
  • Cloud Storage
    • Fixed: When downloading an empty file from an Azure Data Lake Storage Connection Manager with Fail Bulk Download Behavior option enabled, you might run into an error complaining about the file's etag has changed.
    • Fixed: Azure Blob Storage source component may not properly download the file content when not all fields are selected in the component.
    • Fixed: Azure Blob Storage source component may not return any metadata field values if none of the x-ms fields is selected.
  • HTTP/Web Services
    • Fixed: In certain situations, HTTP service calls could possibly create a large number of concurrent open sockets, which could crash the runtime.
  • JSON & XML Processing
    • Fixed: When writing to an XML file in a XML Merge or XML Destination component that involves a parent-child relationship where the component's Value Null Mode is set to xsi:nil but no namespaces have been specified, the component might report a NullReferenceException error during runtime.
  • Message Queuing
    • Kafka
      • New: A new 'Receive Message Timeout' property has been added to the Kafka source component.
      • Fixed: In some occasions, you may run into an unexpected "Confluent.Kafka.KafkaException: Local: Broker transport failure" error.
  • Premium ADO.NET
    • Fixed: Command Timeout setting may not be applied to the metadata calls during design time.
  • Premium Data File
    • Fixed: When creating a Paraquet file that has a smallint field, the created file might not be readable by other Parquet utility or software programs.
  • REST Services
    • Acumatica
      • Fixed: Custom endpoints may not be properly discovered.
    • Clickup
      • Fixed: The parent field was missing in the GetFilteredTeamTasks operation.
      • Fixed: In the GetTasks operation/service endpoint, the subtasks query parameter was missing.
      • Fixed: Array type filter parameters may not been sent correctly.
      • Fixed: Pagination may not work properly in the source component when reading from the Tasks object.
    • ConstantContact
      • Fixed: When using the Bulk Activities > Import Contacts using a JSON Payload operation, its child input is redudant.
    • DocuSign
      • Fixed: allowEditingEnvelopesOnBehalfOfOthers and related fields were missing.
    • Facebook
      • Fixed: When using the Events > Create Event By OfflineConversionDataSet operation, the data filter is sent as a comma-separated string instead of as a JSON string as required.
      • Fixed: When using the Events > Add Event by AdsPixel operation, the data filter is sent as a comma-separated string instead of as a JSON string as required.
    • Freshservice
      • Update: Basic authentication option has been removed as it has been deprecated by the vendor.
    • LinkedIn
      • Update: 'UGC Post API' has been removed and it has been moved to the 'Post API'.
      • Update: 'Share API' has been removed and it has been moved to the 'Post API'.
    • ServiceNow
      • Update: Update action is now using the PATCH method instead of PUT previously. This is to be consistent with general industry standard.
    • Shopify
      • Fixed: 'sort_value' in Collect object should be a string field.
      • Fixed: The compare_at_price field should be using a data type of decimal instead of nvarchar.
    • SmartSheets
      • Fixed: The default batch size for some operations might be too high to cause URL length related errors during runtime.
      • Fixed: A default row location was not set when the option is not specified in the destination component, which can cause the writing to fail.
    • TikTok
      • Update: As per TikTok documentation, we have updated the create a US lead download task operation to create a lead download task.
      • Update: As per TikTok documentation, the Leads > Create a non-US lead download task endpoint has been removed.
    • Trello
      • Fix: A couple of custom field changes, including changing id to _id for the Get the options of a Dropdown Custom Field operation and adding the idValue field for the Get the Custom Field Items for a card operation.
    • Zoho Books
      • New: We have added support for Japan data center.
    • Zoom
      • Update: JWT authentication option has been removed.
    • Zuora
      • Update: WSDL version has been updated to 124 for Create and Update actions.
      • Fixed: X-Zuora-WSDL-Version header was missing for Delete action.
      • Fixed: X-Zuora-WSDL-Version header was missing for non-custom objects, when using a bulk action by having a BatchSize greater than 1.

Version 23.1 - March 17, 2023

This release comes with the following updates and enhancements - Note that this will be our last version that supports SSIS 2008 (SQL Server 2008):

  • General
    • Update: The auto-update form now displays a warning message about required maintenance for software upgrade.
    • Update: We have removed the dependency on Microsoft.NetEnterpriseServers.ExceptionMessageBox.dll assembly.
    • Fixed: KingswaySoft License Manager might report an incorrect grace period when the license is running under the grace terms.
  • New Components
    • Big Data
      • Tableau Hyper Connection Manager
      • Tableau Hyper Publish Task
      • Tableau Hyper Source
      • Tableau Hyper Destination
    • NoSQL Components
      • Couchbase Connection Manager
      • Couchbase Source
      • Couchbase Destination
    • Premium Data Flow Components
      • Premium Recordset Source
    • Premium File Pack
      • Premium File Watcher Task
    • New services in the REST framework
      • Airtable
      • Authorize.NET
      • BambooHR
      • Duo Security
      • Emarsys
      • Google Calendar
      • Google Maps
      • OneLogin
      • Ping Identity
      • RingCentral
  • Big Data
    • New: We added Output Time Zone support to CDM source component.
    • New: Premium Data File destination component now supports "Skip Write On No Rows" option.
  • Cloud Storage
    • New: We added "Bulk Download Behavior" support to Azure Data Lake Storage Connection Manager when working against ADLS Gen2, the property can be used to detect or prevent file modification when downloading the file.
    • Fixed: You may run into a 403 Forbidden error when listing items in File Chooser for a connection that uses Azure Storage Emulator.
    • Fixed: Azure Blob destination component may fail with "403 Server failed to authenticate the request" error when If-Modified-Since filter is provided.
    • Fixed: You may get error "XML specified is not syntactically valid" in Azure Blob destination component when If_None_Match is provided while the file already exists in Azure Blob.
    • Fixed: Azure Blob destination component may report "An item with the same key has already been added" error when working with Append/Page blobs.
    • Fixed: Azure Blob destination component may not set the "Content-Type" properly when working with Append blobs.
    • Fixed: Azure Files destination component may not send the x-ms header values properly.
  • Data Warehousing
    • New: We added a "Fail On No Affected Records" option to the PostgreSQL and Google BigQuery destination components. When enabled, Update or Delete action would fail if no matching rows are found in the target database table when Row-By-Row writing mode is chosen, which is the default behavior in previous versions. This can now be suppressed by unchecking this option, in which case the the component would succeed even no matching records were found for the intended action (Update or Delete).
    • Fixed: You may receive an error "cannot write DateTime with Kind=Unspecified to PostgreSQL type 'timestamp with time zone'" when working with PostgreSQL type 'timestamp with time zone' in PostgreSQL components.
    • Fixed: For some particular PostgreSQL servers, Upsert action in PostgreSQL destination component may fail with an error "Version string portion was too short or too long".
    • Fixed: Connecting to PostgreSQL through SSL Tunnel may fail with an error "An attempt was made to access a socket in a way forbidden by its access permissions".
  • Google Services
    • Fixed: Google Sheets destination component may write empty string values to unmapped columns when performing SPREADSHEETS.SHEETS.VALUES - UPDATE action.
  • HTTP/Web Services
    • New: We added support of Windows Integrated Authentication authentication mode in HTTP Connection Manager.
    • New: We added a "Drop Authorization Header On Redirects" property to HTTP Connection Manager, 
    • Enhancement: Web Service components no longer encode data in a CDATA Section.
    • Enhancement: Better metadata detection when loading WSDL files in Web Service components.
    • Update: Default "Field Expansion Depth" is now set to 5 in Web Service components.
    • Fixed: You may get "Status Reason: NotFound" error when loading some specific WSDL files in Web Service components.
    • Fixed: Loading WSDL file in Web Service components with an HTTP Connection Manager may not use the specified authentication mode correctly.
  • JSON & XML Processing
    • New: We added a "Link Ids Are Scrambled" option to JSON/XML Merge/destination component. When the option is disabled, the component will have some substantially better performance when working with multi-level JSON/XML document structure provided the link ID values inside the document are not scrambled.
    • Enhancement: Better error handling and reporting when importing an invalid JSON file to JSON Extract/Merge/source/destination component.
    • Update: Default Value Null Mode is now set to "xsi:nil" in XML Merge/destination component.
    • Fixed: HTTP Connection Manager used in an XML destination component may not send the specified credentials properly when the Credentials authentication mode is used.
    • Fixed: You may run into "System.Exception: "Is Repeated" node does not support sharing relative path with other nodes" error in JSON Extract/source component when working with repeated array of values in an array of objects.
  • Marketing Intelligence
    • New: Customer Account Id in Google Ads source component now supports listing account hierarchies.
    • Update: We updated the default API Version to latest version (v13) in Google Ads Connection Manager.
    • Update: Login Customer Id property in Google Ads Source has been updated as Customer Account Id.
  • Mail Components
    • New: We added OAuth 2 authentication support to SMTP Connection Manager.
    • New: We added OAuth 2 authentication support to IMAP and POP3 protocols in Email Connection Manager.
    • New: SMTP Connection Manager provide a Test Connection button now.
    • New: We added "Send Email By ID" action support to Email destination component when working with EWS protocol.
    • New: Email destination component now outputs Change Key ID when working with "Upload Message" and "Add Attachment" actions through an EWS connection.
    • Enhancement: "Send Raw Email" action in Email destination component has some updated metadata when working with EWS protocol.
    • Update: SMTP Task no longer requires Reply To Address to be specified.
    • Fixed: "Is Body HTML" property in SMTP Task may get unchecked when upgrading from a prior version to a recent version.
  • Message Queue Components
    • New: Azure Service Bus now supports working with TCP proxy.
    • New: We added "Move to Dead Letter" action support to Azure Service Bus destination component.
    • Enhancement: Better error handling when an invalid queue name is provided in Azure Service Bus source component.
    • Fixed: Operation Timeout setting may not work properly in Azure Service Bus connection manager.
    • Fixed: Azure Service Bus source component may output different number of records when working with a Dead Letter queue.
    • Fixed: "Receive and Delete" mode in Azure Service Bus source component may output incomplete result when working with a Dead Letter Queue.
    • Fixed: You may run into "The requested session cannot be accepted" error when working with session required queues in Azure Service Bus source component.
  • NoSQL Components
    • Fixed: MongoDB source component may not output datetimeoffset value correctly when Output Timezone is set to Local.
    • Fixed: MongoDB destination component may not escape some input values properly.
    • Fixed: You may get "JSON reader was expecting ':' but found '","'." error in MongoDB destination component when working with a value that contain quote characters.
  • Premium Data Flow Components
    • New: Premium Derived Column component now includes support for the following new functions:
      • FileExists()
      • FolderExists()
    • New: We added a "Fail On No Affected Records" option to Premium ADO NET destination component. When enabled, Update or Delete action would fail if no matching rows are found in the target database table when Row-By-Row writing mode is chosen, which is the default behavior in previous versions. This can now be suppressed by unchecking this option, in which case the the component would succeed even no matching records were found for the intended action (Update or Delete).
    • New: Premium ADO NET destination component now supports Bulk Update/Upsert/Delete and Full Sync actions against Oracle database though ODP.NET Managed data provider.
    • Update: Post Command in Premium ADO NET, PostgreSQL, Amazon Redshift, and Google AlloyDB source/destination/task component is split into Success Post Command and Error Post Command.
    • Update: Pre Command in Premium ADO NET source/destination component is moved to be the first action of the Execute method, rather than being executed in the pre-execute stage previously.
    • Update: "Autofit Column Width" property in Premium Excel destination component now takes decimal percentage values.
    • Fixed: Premium ADO NET destination component would silently truncate the string values when the input value length is larger than the target column length.
    • Fixed: Premium ADO NET destination component may not write numeric values properly when working with IBM DB2 database.
    • Fixed: Temporary tables may not get dropped properly if working with Bulk Update/Upsert/Delete and Full Sync actions in Premium ADO NET destination component against Oracle database through ODP.NET Unmanaged data provider.
    • Fixed: The big numbers with length of 16 and more may get rounded in Premium Derived Column component, for instance, value like 321825482218.2038 may get output as 321825482218.2040 previously.
    • Fixed: Premium Derived Column component may report an "Invalid binary expression specified" error when testing expression with changed test value.
    • Fixed: Output columns in a Premium Service Lookup component may get dropped when it is copied and pasted as a new component.
    • Fixed: Premium Service Lookup component may report HRESULT: 0xC0047072 error when replacing an input column in Output Columns page.
    • Fixed: Premium Lookup component may reports SSIS validation error when the upstream column's data type has changed.
    • Fixed: You may get an upgrade error which complains about duplicate output alias '_average_similarity_score'" in Premium Lookup component when the data flow task was created using an earlier version of SSIS Productivity Pack (v21.2.1) that has multiple Premium Lookup components chained together, but upgraded to v22.1.
  • Premium File Pack
    • Fixed: You may get null values on CreationTime property when working with an SFTP connection in Premium File Pack components.
    • Fixed: Premium Flat File source component may not output the data row properly when the data row starts with "#" character.
    • Fixed: You may run into an "Object reference not set to an instance of an object" error in Premium Flat File source component when reading from the <File Content in variable> option.
    • Fixed: Premium Flat File source component may report "The method or operation is not implemented" error when loading metadata using the <File Content in variable> option.
    • Fixed: You may get "Already connecting to the server" error when running multiple Premium File Pack components simultaneously while working against the same SFTP server.
    • Fixed: Premium File Pack components may report an "Invalid character: '_'." error when performing Advanced Filtering with an SSIS variable and the variable name contains "_".
  • Premium Task
    • New: We added renaming support to Azure Blob/Google Cloud Storage/S3 service in Premium File Properties Task.
    • Update: Premium File Properties Task now outputs the variable default value when reading a datetime type property and output to a datetime type variable.
  • REST components
    • General
      • New: We added a "Link Ids Are Scrambled" option to REST destination component when the component requires multiple inputs. The option is disabled by default, which can be used to improve the performance when working with multi-level JSON structures that have unscrambled ID values.
    • Acumatica
      • New: We added Company support to OAuth authentication mode in Acumatica REST Connection Manager, it can be used to retrieve the API reference of a certain company.
    • Ceridian Dayforce
      • Fixed: "IsValidateonly" field is missing in Ceridian Dayforce REST destination actions.
    • Facebook Business
      • New: We added filtering parameter support to "Read Lead By Ad" and "Read Lead By LeadgenForm" endpoints in Facebook Business source component.
      • Update: We updated the default API Version to v16.0.
    • Facebook Messenger
      • Update: We updated the default API Version to v16.0
    • Freshservice
      • New: We added support for discovering type fields when working with Asset object in REST source/destination component of a Freshservice connection.
    • LinkedIn
      • New: We added various new API support including Post, InMailContents, Conversation Ads, Images and Videos.
      • Update: LinkedIn REST components now use the new versioned APIs.
      • Fixed: LinkedIn REST destination component may report an "object is not mapped to an input" error when working with an action that has child inputs.
    • Microsoft Teams
      • Enhancement: Updated metadata for Shift object.
    • Pipedrive
      • Enhancement: Better handling when downloading files from Pipedrive REST source component but the file download url is not found.
      • Enhancement: Updated metadata.
      • Fixed: Discovering custom fields in Pipedrive REST source/destination component may not perform paging properly.
    • ServiceNow
      • New: ServiceNow REST source component now supports reading from database views.
      • Update: ServiceNow REST source/destination component no longer reports errors at design time when the connection user doesn't have permission to the data_policy table.
    • Shopify
      • New: Shopify REST source and destination component now support working with collection_reference, list.collection_reference and money types of meta fields.
      • New: We added Fulfillment Order object support to Shopify REST destination component.
      • Enhancement: Updated metadata for Product/Order/Fullfilment/Metafield object.
      • Fixed: Updating a metadata field to NULL may not work properly in Shopify REST destination component.
      • Fixed: Reading metadata field values at runtime may not perform pagination properly in Shopify REST source component.
    • Square
      • Enhancement: Updated metadata.
      • Update: We have updated our KingswaySoft Square OAuth app to the latest API version.
      • Fixed: Square REST source component may not send array type filter parameter values properly.
    • SurveyMonkey
      • Enhancement: Updated metadata for "Survey Page Question" object.
    • TikTok
      • Update: We have updated the TikTok REST components to use the latest v1.3 API endpoints. Existing components may require reconfiguration since TikTok v1.3 API is dramatically different from v1.2 API and TikTok v1.2 API will be deprecated in August, 2023.
    • Wordpress
      • Fixed: You may run into error "startIndex cannot be larger than length of string. Parameter name: startIndex" when loading objects in Wordpress REST source/destination component if the target Wordpress instance has some special third-party plugins installed.
    • Xero
      • Fixed: "If-Modified-Since" filter parameter was missing in Xero REST source component.
    • Zoom
      • New: We added "Server-to-Server OAuth" authentication support to Zoom REST connection manager.
    • Zuora
      • New: We added Invoice Items object support in Zuora REST destination component.
      • Update: We updated X-Zuora-WSDL-Version header to the latest 124 version when working with Query in Zuora REST source component.

Version 22.1 - November 2, 2022

This release comes with the following updates and enhancements - Note that this will be our last version that supports SSIS 2008 (SQL Server 2008):

  • General
    • New: We have added support for SQL Server 2022 (SSIS 2022).
    • Enhancement: We have updated the license manager program to make it more resilient in obtaining new license files or renewals should there be intermittent networking issues. The enhancement mainly applies to unattended license requests or updates using command line via Windows script, it is particularly helpful when you run our software on Azure SSIS IR as it involves license activation requests each time when the instance is started or restarted.
    • Update: The entire program has received some major branding updates in various UI elements.
  • New Components
    • Data Warehousing
      • Google AlloyDB Command Task
      • Google AlloyDB Connection Manager
      • Google AlloyDB Source
      • Google AlloyDB Destination
    • Mail Components
      • Email Destination
    • Message Queue Components
      • Azure Queue Storage Connection Manager
      • Azure Queue Storage Source
      • Azure Queue Storage Destination
      • Kafka Connection Manager
      • Kafka Source
      • Kafka Destination
    • New services in the REST framework
      • Auth0
      • Bill.com
      • Calendly
      • Ceridian Dayforce
      • Chargebee
      • Chargify
      • ClickUp
      • Discord
      • Drift
      • Expensify
      • Google Forms
      • Jotform
      • Mailjet
      • Okta
      • PowerBI
      • PrestaShop
      • ShipStation
      • Typeform
  • Big Data
    • New: EDI source component can now import multiple EDI files to create a generic data design for those chosen files, which can greatly improve development productivity when used properly.
    • New: EDI source and destination components now support Filter Nodes on the Design page.
    • New: CDM source component now supports lookup column names at runtime when the data file has no column header.
    • Fixed: Premium Data File destination component was writing deprecated INT97 data type for dates and timestamps.
    • Fixed: Flatten Segment Loops in EDI source may not work properly with some particular X12 files.
    • Fixed: EDI destination component may not generate the target EDI file properly when the child input has multiple rows.
    • Fixed: CDM components may not detect partition properly when dataPartitions has globPattern specified.
    • Fixed: CDM source component may not output number values correctly when system locale setting uses "," as number delimiter.
    • Fixed: You may run into "An existing connection was forcibly closed by the remote host" when working with multiple partition files in CDM source component.
  • Cloud Storage
    • New: We added a new "Download Chunk Size" option in the Google Cloud Storage Connection Manager.
    • New: We added a new "Download Chunk Size" option in the Google Drive Connection Manager.
    • New: Dropbox Connection Manager now supports refreshing access_token.
    • New: We added a Container option in Azure Blob Connection Manager, which can be used to specify a particular Azure Blob container to work with.
    • Update: The Dropbox Connection Manager starts to use a token file going forward for better security and portability.
    • Update: Upload Chunk Size in Box Connection Manager is changed to a checkbox named "Upload Chunk".
    • Update: "WebDAV Host", "Port" and "Use HTTP" properties in WebDAV Connection Manager have been deprecated and they are now replaced with one single property called "Server Url" - Note that this should be considered a breaking change if any of the deprecated properties are used in parameterization.
    • Update: "WebHDFS Host", "WebHDFS Port" and "Use HTTP" properties in Hadoop Connection Manager have been deprecated and they are now replaced with one single property called "WebHDFS Server URL" - Note that this should be considered a breaking change if any of the deprecated properties are used in parameterization.
    • Enhancement: Some UI performance enhancement when listing Azure Blob items.
    • Enhancement: Some UI performance enhancement when listing Amazon S3 items.
    • Fixed: You may receive a "S3 Endpoint is not in correct format" error when testing connection in an Amazon S3 Connection Manager if it has the S3 Endpoint specified.
    • Fixed: You may run into an UnsupportedHeader error in Premium Flat File destination component when writing large flat file to Azure Files using chunk upload.
    • Fixed: You may receive a "System.FormatException" when listing WebDAV items that have no Content-Length.
  • Data Quality and Comparison
    • New: We added a "License" option in Address Verification Connection Manager when working with SmartyStreet service, which can be used to specify the license or licenses (comma separated) to use for the address verification service.
    • New: We added a new "Record Ranking Strategy" feature in Duplicate Detector component, which can be used to define the winning strategy among the duplicate groups.
  • Data Warehousing
    • New: We have added support for RootCertificate, SslCertificate and SslKey parameters in the PostgreSQL Connection Manager.
    • New: Google BigQuery source/destination component and Google BigQuery Command Task now support specifying a new Billing Project option.
    • New: We added an "Authenticator" property in Snowflake Connection Manager when working with Basic Authentication type, this property can be used to specify the URL for SSO providers such Okta.
    • Update: ClientCertificate is no longer supported in PostgreSQL Connection Manager, it's replaced by SslCertificate property.
    • Update: Default Poll Throttle Rate is now set to 1 in Google BigQuery Command Task.
    • Update: Amazon Redshift/PostgreSQL destination and task components will now show an asterisk indicator if pre or post command is specified.
    • Fixed: Google BigQuery Command Task may report the error "Value cannot be null. Parameter name: source" when the query result is empty.
    • Fixed: You may run into "42601: syntax error" in Amazon Redshift/PostgreSQL destination component when the target table name contains space.
  • Encryption and Compression Tasks
    • Fixed: Decrypt action in PGP Task component may not work properly when the private key file contains multiple keys.
  • Google Services
    • General Update: We have updated the redirect url to "http://localhost" in the KingswaySoft App provided in Google Connection Managers when generating a token.
    • General Update: Default Key File Type is now set to JSON when working with Service Account authentication mode in Google Connection Managers.
    • New: We added Shared Drive support to Google Drive components.
    • New: We added PKCE OAuth authorization code flow support when generating Google OAuth token file.
    • New: Google Ads Connection Manager now supports infinite timeout by setting the Timeout value to 0.
    • New: We added FormatString property support in Google Sheets destination component.
    • Update: We updated the default API Version to version v11 in Google Ads Connection Manager.
    • Update: We updated the discovering Customer Id API call to use the Google Ads API when listing Customer Ids in Google Ads Connection Manager.
    • Update: Google Ads source component now uses DT_DECIMAL data type for number fields.
    • Update: We have deprecated Google AdWords API support because the AdWords API is no longer supported by Google.
    • Update: Google Sheets destination component now writes DT_DBDATE value in "YYYY-MM-DD" format.
    • Update: Metadata update in Google Analytics source component for Google Analytics Data API.
    • Fixed: The provided Property Id value may not work properly in Google Analytics source component when working with Google Analytics Data API.
    • Fixed: You may run into a "Batch Loading failed" error when running multiple Google BigQuery destination components in parallel and all of them are performing Bulk actions.
    • Fixed: Google Ads source component may report a 'Fields cannot be used in SELECT' error when reading from the asset report.
    • Fixed: Google Ads source component may not output number values correctly when the system locale setting uses "," as the number delimiter.
    • Fixed: Reset Columns button in Google Sheets destination component may not set precision and scale numbers properly for upstream number type fields.
    • Fixed: Google Sheets source component may report an "Object reference not set to an instance of an object" error when reading from an empty sheet.
    • Fixed: Google Sheets destination component may not write column data properly when the metadata column positions are moved to the Columns page.
    • Fixed: Google Sheets destination was writing empty values to unmapped fields when performing SHEETS_VALUES_UPDATE action.
  • HTTP/Web Services
    • New: Custom Token Authentication Mode in HTTP Connection Manager now supports manually entering the cURL command and saving it in the HTTP Connection Manager.
    • New: We added a new Allow Auto Redirect option in HTTP Connection Manager.
    • New: We added additional algorithms supported in HTTP Connection Manager for JWT authentication mode, including RS384, RS512, ES256, ES384, ES512, PS256, PS384, PS512.
    • New: We added WSSE authentication mode support in HTTP Connection Manager.
    • New: We added PKCE OAuth authorization code flow support in OAuth Token Generator.
    • New: Web Service components now support loading WSDL file from a given HTTP Connection Manager setting, this can be used for services that require authentication when downloading the WSDL file, which would be otherwise impossible to do.
    • New: We added support for working with a certificate file stored in Azure Blob Storage by specifying an Azure SAS URL as the Path to Certificate in AS2 Connection Manager.
    • Enhancement: Better metadata detection when loading WSDL files in Web Service components.
    • Fixed: Loading WSDL in Web Service and XML components may miss detecting repeated elements when the element has an attribute.
    • Fixed: Specifying invalid custom SOAP headers in Web Service Task component may cause Visual Studio to crash.
    • Fixed: Web Service components failed to load WSDL file when the referenced XSD file is specified in a relative path.
    • Fixed: "@Connection[AccessToken]" token may not work properly in Request Headers in HTTP Requester Task when the corresponding HTTP Connection Manager is configured to use Custom Token authentication mode.
    • Fixed: Multipart cURL command may not work properly in HTTP Connection Manager when working with Custom Token authentication mode.
  • JSON & XML Processing
    • Enhancement: Better nodes detection when loading JSON document with a mixed of null value and JObject value in JSON Source/Destination/Merge/Extract component.
    • Update: JSON destination/Merge component no longer outputs empty values when working with empty JSON object values or empty JSON array values while the Null Mode is set to Don't Show.
    • Update: Default Null Mode in XML destination and XML Merge components has been set to Empty String.
    • Update: Component generated _RowIndex and _ParentKeyField fields are now starting from 1. This may be considered as a breaking change if the index base matters.
    • Fixed: Document Designer Diagram View may not work properly in JSON/XML destination/Merge component when working in Visual Studio 2019.
    • Fixed: Encoded "%2f" value in relative path may get decoded at runtime when working in JSON/XML source component.
    • Fixed: Relative URL path ends with a dot character may not work properly in JSON/XML source component.
    • Fixed: JSON/XML destination component may output url-decoded value in the default HttpRequestUrl column.
    • Fixed: You may run into a "Stream was not readable" error in JSON source component when the @[ResponseBody] token is inside of an expression.
    • Fixed: JSON destination component may report an "Input string was not in a correct format" error when the Error Handling is set to Redirect Error Rows.
    • Fixed: JSON Extract component may report an "Object reference not set to an instance of an object" when default output is not attached.
    • Fixed: You may receive a "The buffer is no longer accessible" error in XML Extract component when a very small DefaultMaxBufferRows value is used in the data flow property setting.
    • Fixed: XML Extract component didn't direct the default output rows when an invalid XML document is received.
    • Fixed: You may run into a "For security reasons DTD is prohibited in the XML document" error when importing XSD files that contain DTD lines in XML components.
  • Mail Components
    • New: We added a new "Reply To Address" property in SMTP destination component.
    • Fixed: SMTP Task and SMTP destination component may not dispose attachments after sending email properly when executing the component in a Foreach Loop Container.
  • Marketing Intelligence
    • Update: OAuth scope is updated when generating Bing Ads token per the most recent API changes.
  • Message Queue Components
    • New: We added OAuth 2 authentication mode support in Azure Service Bus Connection Manager.
    • New: We added an Entity option in Azure Service Bus Connection Manager, which can be used to specify a particular queue/topic to work with.
    • New: We added HTTP proxy support in Azure Service Bus Connection Manager.
    • Update: Metadata update in Azure Service Bus source/destination component.
    • Update: Custom fields in Azure Service Bus source/destination component are now prefixed with "Custom.".
    • Update: Custom fields are now retained in Azure Service Bus source/destination component metadata when refreshing the component.
    • Update: SSL Server Name is removed from ActiveMQ/AMQP Connection Manager since it's not needed for configuring the connection.
    • Fixed: Amazon SQS destination component may send "Microsoft.SqlServer.Dts.Pipeline.BlobColumn" value as message body when input column is DT_NTEXT/DT_TEXT type.
  • NoSQL Components
    • New: MongoDB destination component now supports specifying if a field Is Object ID, when the option is set to true, the value will be wrapped in ObjectId() format.
    • New: We added support for setting readConcern to NULL when writing to MongoDB using MongoDB destination component.
    • New: We added HTTP proxy support in CosmosDB Connection Manager.
    • New: CosmosDB source component now supports using variable in the query.
    • Update: We have updated the CosmosDB components to use the latest v3 SDK.
    • Fixed: You may get "Import Failed" error in MongoDB components when importing from a collection and the documents in the collection is larger than the scan number.
    • Fixed: Mongo datetime value "0000-01-01" may not work properly in MongDB components.
    • Fixed: MongoDB destination component may report "A write operation resulted in an error" when performing Delete action if the input matching key value is NULL.
    • Fixed: You may run into "Exception from HRESULT: 0xC020401" when selecting or deselecting a column in DynamoDB source/destination component.
    • Fixed: DynamoDB source component may return invalid JSON documents when working with some special tables if the "Output as JSON" option is enabled.
  • Premium Data Flow Components
    • New: Premium ADO NET destination component now supports "Disable Foreign Key Checks" when performing Bulk Insert action against MySQL/MariaDB database through the MySQL data provider, this option allows to disable foreign key checks while loading data in the target database table during the ETL process.
    • New: Premium ADO NET destination component now supports "Ignore Unique Constraints" when performing Bulk Insert action against Oracle database through the Oracle ODP.NET Unmanaged data provider.
    • New: We added an Update Table button in Premium ADO NET Destination component that can be used to generate delta schema update script for execution.
    • New: We have added renaming output columns support in Premium Lookup component.
    • New: Premium OData source component now supports additional bindings towards a function.
    • New: We added additional bindings support to Premium OData destination component.
    • New: We added OData Actions support in Premium OData source component. Now OData Actions are supported in both Premium OData source and destination components. 
    • Enhancement: Better metadata detection in Premium OData component when working with openType properties and base entity fields.
    • Enhancement: Significant performance improvement when performing Upsert action in Premium ADO NET destination when using Row by Row write mode.
    • Enhancement: Error column name is now reported in Premium ADO NET destination component SQL Bulk InvalidOperationException is hit,
    • Update: Premium ADO NET destination and task components now show an asterisk indicator if pre or post command is specified.
    • Update: Create Table command in Premium ADO NET destination component now defaults to use NUMERIX(p,s) data type for number fields.
    • Update: Create Table command in Premium ADO NET destination component now shows a warning message that reminds developers to review the command before executing in the Create Table dialog.
    • Fixed: You may run into "DatabaseServiceException: 42601: syntax error at or near {column_name}0" error when performing Batch Insert action in Premium ADO NET destination if the target table column name contains space.
    • Fixed: Premium ADO NET destination component may report a "Conversion failed for command parameter[0]" error when working with datetime value through the SQL OLE DB connection
    • Fixed: You may run into a "42601: syntax error" in Premium ADO NET destination component when the target table name contains space while working with MySQL data provider.
    • Fixed: You may get a NULL value output row when Group By operation is used in Premium Aggregate component while there are no input rows.
    • Fixed: You may get an SSIS validation error "The package contains two objects with the duplicate name of "Premium Conversion. Outputs[Error Output].Columns[ErrorCode]" and "Premium Conversion.Outputs[Error Output].Columns[ErrorCode]"." when attaching an error output to Premium Conversion component.
    • Fixed: You may run into error "A value in the 'Column1' column failed to convert" when converting a NULL value to DT_TEXT/DT_NTEXT/DT_IMAGE data type.
    • Fixed: Premium Lookup component may fail with a "The given key was not present in the dictionary" error when upstream metadata has duplicate columns.
    • Fixed: You may receive an "Index was out of range" error in Premium PDF component when the specified SkipTable number is greater than the available table number.
    • Fixed: Excel destination component may not write data properly when "Write Column Header on First row" and "Append at end" both options are enabled.
    • Fixed: "Write Access Password" value in Premium Excel destination may overwrite the "Open Password" value when both password values are provided.
    • Fixed: No file was created when Skip Writing on No Rows is enabled in Premium Excel destination component.
    • Fixed: You may get a "The package contains two objects with the duplicate name" error when opening a Premium Conversion component while the component is linked from an error output.
    • Fixed: Premium Derived Column component may generate duplicate values when using Random() function across multiple columns.
  • Premium File Pack
    • New: We added Move Items operation support in Premium File Transfer Task.
    • New: We added WILD_CARD_MATCH operator support in Filter conditions in Premium File Transfer Task/Premium File Properties Task/Premium File System Source component.
    • New: We added Copy action support in Premium File System Destination component.
    • New: We added Auto Increment Format String support in Premium File System destination component when working with Auto Increment Overwrite Mode.
    • New: An optional Base Path is supported in Premium File System destination component.
    • New: Premium File System destination component now supports Auto Create Missing Folders when the provided PathToParent doesn't exist.
    • New: We added Count Items operation support to Premium File Properties Task component.
    • New: We have added local file system detail properties support to Premium File System source/destination and Premium File Properties Task components when working with a local file.
    • New: We added support of updating column properties for all columns in Premium Flat File Source and Destination components.
    • New: We added encoding support in FTPS Connection Manager.
    • Update: Send Files action in Premium File Transfer Task is renamed to Copy Items operation.
    • Fixed: Local network share folders and files may not sort properly in the tree view file browser in the Premium File Pack components.
    • Fixed: Downloading SFTP files using Premium Transfer Task or Premium File System component may not be downloaded completely when "Use Async Data Transfer" and the server connection is lost
    • Fixed: Files may not be completely downloaded when downloading SFTP files to a network share location using the Premium File Transfer Task.
    • Fixed: Parameterizing SFTP Connection Manager's ConnectionString and executing in a Foreach Loop may not work properly.
  • REST Services
    • General
      • New: REST Connection Manager now provides a tree view UI that is designed to select required scopes before generating an OAuth token.
      • Update: REST Connection Manager no longer has the Show/Hide button to view a sensitive property.
    • Active Campaign
      • New: Active Campaign REST Source component now supports retrieving related link data from the link urls.
    • ADP
      • New: Updated metadata for Time Cards object.
      • Fixed: ADP REST source component may not send the correct request when $expand and $filter parameters are specified while working with the Time Cards object.
    • Asana
      • Fixed: You may receive an "Object reference not set to an instance of an object" error in Asana REST destination component when uploading an attachment.
    • Azure Application Insights
      • Enhancement: Better error handling when an invalid query is provided in Azure Application Insights REST source component.
    • Azure Table
      • New: We added OAuth Authorization Code and OAuth Client Credentials authentication modes support in Azure Table REST Connection Manager.
      • New: We added Create/Delete/Set ACL Table actions support in Azure Table REST destination component.
      • Fixed: You may run into a "The given key was not present in the dictionary" error when parameterizing the Source Object in Azure Table REST source component.
    • Constant Contact
      • New: We added Constant Contact v3 API support.
    • Elasticsearch
      • New: We added a Create Index button in Elasticsearch REST destination component, the button will launch a Create Index dialog, which you can create an index mapping based on the input columns from upstream components.
      • Enhancement: Better data type detection for nested properties.
      • Fixed: You may get a "Sequence contains no elements" error when listing objects in Elasticsearch REST source/destination component if there are indexes with empty mappings.
      • Fixed: Elasticsearch REST Connection Manager may report a "Test connection succeeded" message when the test connection API call fails with 404 Not Found error.
    • Facebook Business
      • New: We added 'System User Access Token' authentication mode support in Facebook Business REST Connection Manager.
      • Update: We updated the default API Version to v14.0.
    • Facebook Messenger
      • Update: We updated the default API Version to v14.0
    • Freshdesk
      • New: Metadata update for Contact object.
      • Update: Freshdesk REST source component no longer fails the SSIS data flow, but rather it would report a warning message in SSIS log when the List All Tickets service endpoint reaches the maximum 300 pages API limit.
    • Jira
      • Fixed: Jira REST Source component may send an invalid json request when working with the Issues object if the provided jpl query contains a quote.
    • LinkedIn
      • New: We added PKCE OAuth authorization code flow support when generating a LinkedIn OAuth token file.
      • New: We added Standardized Data API support in LinkedIn REST source component.
      • Update: Metadata update for Organization Follower Statistics and Organization Page Statistics objects.
      • Fixed: You may get an "Object reference not set to an instance of an object" error when generating a token file in an existing LinkedIn REST Connection Manager when the connection manager is saved with Access Token.
      • Fixed: LinkedIn REST source component may send invalid timeIntervals parameter values when working with “Get Page Statistics” endpoint.
      • Fixed: You may run into "syntax error" when working with "Get Comments on Comments" endpoint or "Get Statistics for Specific Shares" endpoint or "Search Creatives" endpoint in LinkedIn REST source component.
    • Magento
      • Update: Magento service has been renamed to Magento/Adobe Commerce to reflect the vendor's recent branding changes.
    • Pipedrive
      • Update: Metadata update.
    • Salesforce Pardot
      • New: We added Pardot v5 API support.
    • ServiceNow
      • Enhancement: Better error handling when the status value in the API response body is "failure".
    • Shopify
      • New: We now support working with Shopify custom fields in Shopify REST source/destination component.
      • New: We added Collection endpoints support in Shopify REST source component when working with Product.
      • Update: Default API version is set to the 2nd most recent version when using <Default> API Version in Shopify REST Connection Manager.
      • Update: We have some updated metadata for Customer Object.
    • Smarsheet
      • New: We have added Row Location properties support when working with discovered sheet object in Smartsheet REST destination component.
      • Fixed: Smarthseet REST source component may not read report data properly when working with discovered report objects.
      • Fixed: Pagination may not work properly when reading from discovered report object in Smarsheet REST source component.
    • Xero
      • New: We added PKCE OAuth authorization code flow support when generating an Xero OAuth token file.
      • Update: Default and maximum Throttle Rate in Xero REST Connection Manager is now set to 60 requests/minute.
    • Zoho CRM
      • New: Zoho CRM REST destination component now supports uploading file content to FileUpload/ImageUpload fields.
      • Update: Zoho CRM API support has now been updated to v3.
      • Update: We updated the paging strategy to use the "page_token" when paging through Zoho CRM records.
    • Zoom
      • New: We added API support to Zoom REST source/destination component, available values are: Zoom Meeting, Zoom Meeting Master Account, Zoom Phone, Zoom Phone Master Account, Zoom Video, Zoom Chat.
      • Update: We have updated the Zoom metadata.
    • Zuora
      • Update: We updated X-Zuora-WSDL-Version header to the latest 115 version when working with Query in Zuora REST source component.
      • Update: Zuora REST source/destination component no longer reports an error at design time when the metadata discovery call fails with permission error.
      • Fixed: Specified Zuora Entity Ids value in Zuora REST Connection Manager may not get set properly in the API request.

Version 21.2.1 - December 17, 2021

This release is mainly a service release, which comes with the following updates and fixes:

  • Cloud Storage
    • Enhancement: Performance enhancement when downloading non-exist file item from Azure Blob using Premium File Transfer Task.
    • Enhancement: Uploading files to Azure Blob Storage no longer makes API calls to list parent folder items when File Overwrite Mode is set to "Overwrite existing item" in Premium File Transfer Task.
    • Fixed: You may run into error "System.ArgumentOutOfRangeException: startIndex cannot be larger than length of string" in Premium File Transfer Task when downloading Azure Files files with "LESS THAN OR EQUAL TO" filter condition.
    • Fixed:  You may run into error "System.ArgumentOutOfRangeException: startIndex cannot be larger than length of string" in Premium File Transfer Task when downloading Azure Data Lake Storage Gen2 files with "LESS THAN OR EQUAL TO" filter condition.
    • Fixed: Pagination in OneDrive may not work properly.
  • Data Warehouse
    • New: Commands in Snowflake Task component now supports the execution of multiple-statement commands.
    • New: Pre & Post Commands in Snowflake Destination component now support the execution of multiple-statement commands.
    • Fixed: You may get a "Numeric value is not recognized" error in Snowflake Destination component when performing Bulk Copy action if the system has a special locale settings that uses "," as the decimal symbol.
    • Fixed: You may run into error "Load into table failed" in Amazon Redshift Destination component when Bulk Insert into Redshift table while the system has a special locale settings that uses "," as the decimal symbol.
  • JSON & XML Processing
    • Update: RequestHeaders and ResponseHeaders columns in HTTPRequests output now default to DT_NTEXT data type in JSON Source and XML Source components.
    • Fixed: XML Extract may output NULL value for those pass-through columns.
  • Google Services
    • New: We added Login Customer Id support in Google Ads Source component, which can be used to access the reporting data for a particular customer account.
    • Fixed: Google Drive Connection Manager may not take the provided OAuth ClientId value properly.
    • Fixed: Google Drive Destination component may not set mimeType properly when uploading files using Simple or Multipart upload mode.
    • Fixed: You may get "Cannot access a closed Stream" error in Google BigQuery Destination component when performing bulk actions.
    • Fixed: Google Ads Connection Manager may not set developer token properly when working with a token file generated by My Own App.
  • Marketing Intelligence
    • Update: Updated metadata for Bulk service in Bing Ads Source component.
    • Fixed: Retry on Intermittent Errors option in Bing Ads Connection Manager may not work properly.
  • NoSQL Components
    • Fixed: In some rare situations, you may get error "Could not load file or assembly 'MongoDB.Driver.Legacy' or one of its dependencies" in MongoDB Source/Destination component during runtime.
  • Premium Data Flow Components
    • New: Premium ADO NET Destination component now reports MySQL bulk load warnings in SSIS Execution Result when working with MySQL data provider.
    • Fixed: NULL value was written as 0 when performing Bulk Insert action to MySQL database through MySQL data provider in Premium ADO NET Destination component.
    • Fixed: Premium ADO NET Destination component may not write datetime values properly when working with MySQL data provider.
    • Fixed: "Append at end" write mode in Premium Excel Destination component may not work  properly when the component is configured to "Write No Column Header".
    • Fixed: "Calculated without format" Output Format may not work properly when reading with "Not Specified" Column Name in Premium Excel Source component.
  • Premium File Pack
    • Fixed: Premium File Transfer Task may cause Visual Studio to crash when repeatedly opening the component with constant double clicks.
  • REST Services
    • General
      • Fixed: REST Source component may report KeyNotFoundException when parameterizing the Source Object.
    • Magento
      • Fixed: Magento REST Source component may not output records correctly for the Search service endpoint.
    • SugarCRM
      • Enhancement: Improved API version detection when getting latest REST version.
    • Wordpress
      • Fixed: You may get error "Can not convert Array to String" when selecting certain endpoints in WordPress REST Source/Destination component .
    • Zoom
      • Update: Updated metadata for "Get User's Call Logs" endpoint to include more fields in Zoom REST Source component.

Version 21.2 - November 11, 2021

This release comes with the following updates and enhancements:

  • New Components
    • Cloud Storage
      • Google Drive Connection Manager
      • Google Drive Source
      • Google Drive Destination
    • Data Warehousing
      • Amazon Redshift Command Task
      • Google BigQuery Command Task
      • PostgreSQL Command Task
      • Premium ADO NET Command Task
      • Snowflake Command Task
    • HTTP/Web Services
      • AS2 Connection Manager
    • Message Queue Components
      • ActiveMQ Connection Manager
      • ActiveMQ Source
      • ActiveMQ Destination
      • SMPP Connection Manager
      • SMPP Source
      • SMPP Destination
    • NoSQL Components
      • Redis Connection Manager
      • Redis Source
      • Redis Destination
  • New services in the REST framework
    • DocuSign
    • Freshsales
    • GitHub
    • Pipedrive
    • Quickbase
    • Zoho Books
  • General
    • New: We added a new action button in the KingswaySoft License Manager which makes it easy to request a free trial.
    • New: We added limited password attempts feature to Connection Managers that use OAuth token file. When the limit is reached, access_token and refresh_token values will be deleted from the token file, this is to protect the file from unauthorized use. 
  • Big Data
    • New: EDI Destination component now supports transmitting EDI messages through AS2 Connection Manager.
    • New: We added EDI file writing properties support in EDI Destination component, which can be used to define the separator characters.
    • Fixed: Encoding in EDI Destination component may not work properly.
    • Fixed: You may get "System.InvalidCastException: Specified cast is not valid" error in Premium Data File Destination component when writing datetime values to a Parquet file.
  • Cloud Storage
    • New: We added VPC Endpoint support in Amazon S3 Connection Manager, which can be used to access Amazon S3 using AWS PrivateLink.
    • New: You can now manually specify S3 Endpoint in Amazon S3 Connection Manager.
    • New: We added a new "Download Chunk Size" option in the Box Connection Manager.
    • New: We added a new "Download Chunk Size" option in the OneDrive Connection Manager.
    • Update: We updated the API version to 2020-10-02 for Azure Blob Storage connection.
    • Update: We updated the API version to 2020-10-02 for Azure Data Lake Storage Gen2 connection.
    • Enhancement: There are some performance improvements when uploading files to Box using Premium File System Destination with Overwrite Mode.
    • Fixed: You may get "The given key was not present in the dictionary" error when reading Amazon S3 file properties in Premium File Properties Task while the S3 bucket has no folder records.
  • Data Generation and Anonymization
    • Fixed: Data Anonymizer component may create incorrect output values for RowIndex or Incremental Value anonymization type if the starting value and incremental value are different.
    • Fixed: Data Anonymizer component always outputs NULL values for RowIndex or Incremental Value anonymization type when the input value is NULL.
  • Data Warehousing
    • New: We added Amazon IAM Authentication Mode support in Amazon Redshift Connection Manager.
    • New: Snowflake Destination component now supports specifying Bulk Copy Temp Folder Prefix when using Bulk Copy.
    • Enhancement: We updated Snowflake client SDK to the latest v1.2.8 library.
    • Enhancement: Snowflake components now retry on 503 and 508 error codes.
    • Update: Preview function in Amazon Redshift Source component now always uses Explicit transaction type, this helps avoid committing changes during the preview query execution if there are any.
    • Update: Preview function in PostgreSQL Source component now always uses Explicit transaction type, this helps avoid committing changes during the preview query execution if there are any.
  • Data Quality and Comparison
    • Fixed: You may receive a KeyNotFoundException in Duplicate Detector when working with special character (like "İ") when the "Ignore Case" option is enabled.
    • Fixed: Duplicate Detector may report a KeyNotFoundException when using fuzzy Phone Number Match and the input value contains non-numeric character.
    • Fixed: In some rare situations, you may run into "String was not recognized as a valid Boolean" error in Duplicate Detector after upstream metadata changes.
  • Google Services
    • [General] New: Google service related connection manager now support using a JSON key file for the server-to-server authentication.
    • New: We added Google Analytics Data API support in Google Analytics Connection Manager, which can be used to extract report data for a Google Analytics 4 property.
    • New: Google Ads API support has been updated to v8.
    • New: We added Update/Upsert/Delete/FullSync action support when working with TABLEDATA object in Google BigQuery Destination component.
    • Fixed: Google BigQuery Destination component may fail with OutOfMemoryException when batch loads a large set of data.
    • Fixed: Uploading a 0 bytes empty file to Google Cloud Storage using Premium File Transfer Task may not work properly.
  • HTTP/Web Services
    • New: OAuth Token Generator now supports using .PEM private key file to generate OAuth JWT assertion token.
    • New: HTTP Connection Manager supports infinite timeout by setting the Timeout value to 0.
    • Fixed: Setting Host or Date HTTP header in HTTP Connection Manager may not work correctly.
  • JSON & XML Processing
    • New: We added Property Name From Column Value Source Type support in JSON Destination and JSON Merge components.
    • Enhancement: JSON/XML Destination/Merge components now retain input mapping when they are disconnected and re-connected from upstream components.
    • Fixed: XML Source/Destination/Extract/Merge component may report NullReference error when importing XSD file that has no schemaLocation attribute.
  • Mail Components
    • New: We added a new Resource Output in Email Source component, which returns those images contained in the email body.
    • Update: You can now change Tenant ID property when generating OAuth token for Exchange Web Service in the Email Connection Manager.
  • Marketing Intelligence
    • Fixed: You may get a System.IndexOutOfRangeException when working with Reporting object in Bing Ads Source component if only a few columns are selected in Columns page.
    • Fixed: Bing Ads Source component may report "Download report has corrupted data" when working working with Reporting.
  • Message Queue Components
    • New: Azure Service Bus Source component now supports working with Dead-Letter Queues.
    • New: AMQP Destination component now supports Delete message action.
    • New: Azure Service Bus Destination component now supports Delete message action.
    • New: RabbitMQ Destination component now supports Delete message action.
    • New: MSMQ Destination component now supports Delete message action.
    • Enhancement: There are some performance improvements when reading messages using the MSMQ Source component.
  • NoSQL Components
    • New: MongoDB source and destination components are significantly re-engineered, so they can both support complex JSON document structures. 
  • Premium Data Flow Components
    • New: Premium Derived Column component and Premium Expression Task now include support for the following new functions which can be used for logging purpose:
      • FireError()
      • FireInformation()
      • FireWarning()
    • New: Premium OData Source component now supports sending expand fields in $select query string parameter when working with SharePoint implementation.
    • Update: Premium OData Source component no longer fails on 404 Not Found error.
    • Update: Preview in Premium ADO NET Source component always uses Explicit transaction type.
    • Fixed: You may receive a KeyNotFoundException in Premium Excel Destination when one of the fields was not mapped.
    • Fixed: You may run into "ORA-01722: invalid number" error in Premium ADO NET Destination component when bulk insert numeric data into Oralce database using ODP.NET Unmanaged data provider.
    • Fixed: You may get error "ORA-00972: identifier is too long" in Premium ADO NET Destination component when performing bulk insert action with lookup configured.
  • Premium File Pack
    • New: Premium Flat File source component now supports using variable as the source.
    • New: We added a new SSH Tunnel (Proxy Jump) proxy type support in the SFTP Connection Manager.
    • New: We added Server Type option support in SFTP Connection Manager, which can be used to specify the target OS type.
    • New: SFTP Connection Manager now supports specifying Transfer Type option.
    • New: We added a new SSH Tunnel (Proxy Jump) proxy type support in FTPS Connection Manager.
    • New: We added a new File Overwrite Mode option in Premium File Transfer Task when performing Send Files action.
    • Update: Duplicate Mode in Premium File System Destination has now been renamed to Overwrite Mode. This should be considered a breaking change.
    • Fixed: Premium File Transfer Task may report "The item already exists" error even though the file does not actually exist under the target folder when transferring files to local file system.
    • Fixed: Premium File System Destination component may report a "Cannot create a file when that file already exists" error when performing the Move action with Overwrite duplicate handling mode.
    • Fixed: Premium Flat File Source component may not output data correctly when working with Fixed Width file with a Skipped Rows value specified.
  • REST Services
    • [General] New: You can now use SSIS variables in Boolean/Integer/Enum type Filter Parameter in REST Source component.
    • Azure Application Insights
      • Fixed: Query object in Azure Application Insights Source component may not load the metadata properly.
    • Azure Tables
      • New: We have added a new Output as Raw JSON support in Azure Tables REST Source component.
      • New: We have added a new Write as Raw JSON support in Azure Tables REST Destination component 
    • Elasticsearch
      • New: We added Manage Fields support in Elasticsearch REST Source and Destination components, which can be used to manually define that a field is an array type.
      • Enhancement: Elasticsearch REST Source component now supports sending "_source_includes" or "_source_excludes" properties dynamically based on field selections.
    • Facebook Business
      • Enhancement: Better error message in Facebook Business REST Source component when "Use Page Token" enabled but a page_id is not specified.
      • Update: We updated the default API Version to v12.0.
      • Fixed: Pagination may not work properly when reading from Insights Result object.
    • Facebook Messenger
      • Update: We updated default API Version to v12.0
    • Magento
      • New: We added Magento Query Language support in Premium Service Lookup component by utilizing Magento API searchCriteria query parameter.
      • Enhancement: Better custom fields detection.
    • MailChimp
      • Enhancement: Better MailChimp metadata detection for the raw object fields.
      • Fixed: MailChimp REST Source and Destination components may report a 426 Unknown "UpgradeRequired" error when trying to retrieve metadata from the service.
    • Microsoft Teams
      • New: We added Impersonation Id (App Acts As) support in Microsoft Teams REST Source and Destination components when the connection manager uses Client Credential authentication mode.
      • Fixed: Create or Replace Schedule action in Microsoft Teams Destination component may not work properly.
    • Salesforce Pardot
      •  New: We added Bulk Export support for Visitor Activity, List Membership, Prospect, Prospect Account, and Visitor in Salesforce Pardot REST Source component.
    • ServiceNow
      •  New: ServiceNow REST Destination component now supports detecting data policy rules and surfaces optional writable fields in metadata.
    • Shopify
      • Enhancement: We have some updated metadata for Order object and Transaction Object.
    • Stripe
      • New: We added Stripe-Version header support when sending API requests to Stripe.
      • Enhancement: Updated metadata.
    • SurveyMonkey
      • Enhancement: Updated Survey, Survey Response and Survey Questions objects metadata.
    • Xero
      • Enhancement: Updated Journals object metadata.
      • Fixed: Pagination in Xero REST Source component may not work properly with Journals object in Account API.
    • Zuora
      • New: Zuora REST Source component no longer fails on 50000040 Not Found reason code.
      • Fixed: Pagination in Zuora REST Source component may not work properly with Order object when a filter parameter is specified.

Version 21.1 - May 28, 2021

This release comes with the following updates and enhancements:

  • New Components
    • Big Data
      • CDM Source
      • CDM Destination
    • Data Quality
      • Address Parser
    • Premium Data Flow Components
      • Premium Service Lookup - this is a data flow component that provides lookup capabilities against all supported ADO.NET connections and a number of cloud applications such as Microsoft Dynamics 365, HubSpot,NetSuite, and most of our REST connections.
    • Testing and Simulation
      • Dummy Destination Component
  • New services in the REST framework
    • Active Campaign
    • Dynamics 365 Customer Insights
    • Microsoft To Do
    • Sendinblue
    • SendGrid
    • Snapchat Business
    • SuiteCRM
    • TikTok Business
    • YouTube Analytics
    • Zoho Desk
  • General
    • New: We now ship a new console version of KingswaySoft License Manager program which is designed to work more reliably in a container environment.
    • New: KingswaySoft License Manager program now always uses a secure service endpoint for activation and deactivation requests.
    • Enhancement: Some more high-DPI support improvements.
    • Enhancement: We added support for TLS 1.3 for those HTTP based connections.
  • Big Data
    • New: We have added three new EDI format support in EDI source/destination component.
      • HL7 - you can now work with health data within SSIS pipeline
      • NCPDP Script
      • NCPDP Telco
    • Update: In supporting the above new formats, we have introduced a new version of EDI assemblies. In order for the new version to work with existing packages, you will need to re-download those EDI assemblies utilized in the data flow.
    • Enhancement: EDI components are now equipped with some better output detection when option "Flatten Segment Loops" is enabled.
  • Cloud Storage
    • New: We added a new "Download Chunk Size" option in the Amazon S3 Connection Manager.
    • New: We added a new "Download Chunk Size" option in the Azure Data Lake Storage Connection Manager for ADLS Gen2 connections.
    • New: We added a new "Download Chunk Size" option in the Azure Files Connection Manager.
    • New: Azure Blob Storage Connection Manager now supports a new SAS Token authentication mode so that you can specify a SAS URL for connection purpose.
    • New: We added Share and Unshare actions support to Box destination component, which can be used to grant or revoke file access permissions.
    • Fixed: You might receive an error indicating "Either 'folder' or 'file' must be provided, but not both" in Premium File Transfer Task when transferring OneDrive files between different folders while the "Preserver Timestamp" option is enabled.
    • Fixed: Renaming an OneDrive file using Premium File Properties Task may not work properly.
  • Data Quality and Comparison
    • Fixed: Diff Detector component may report "The value being written to DT_TEXT or DT_NTEXT column is not a string or an array of bytes" when working with DT_TEXT or DT_NTEXT column.
    • Fixed: "Object reference not set to an instance of an object" error when "Treat Empty String as NULL" option is enabled in Duplicate Detector and there are null values in the input.
  • Data Warehousing
    • New: We added OAuth 2 and JWT authentication modes support in Snowflake Connection Manager.
    • New: Snowflake destination component now supports outputting Bulk Copy information to log during the runtime.
    • New: You can now use SSIS variables in the Pre & Post commands in Snowflake source/destination component.
    • New: We added an "Encoding" property support in PostgreSQL Connection Manager.
    • Enhancement: Significant performance improvement when performing Bulk Copy action with large data loads in Snowflake destination component.
    • Enhancement: Significant performance improvement when bulk uploading large data loads in Redshift destination component.
    • Enhancement: PostgreSQL destination component has some significant performance improvements when auto mapping a large number of columns at design time.
    • Fixed: Test connection in PostgreSQL Connection Manager may still report "SSL connection is required" error while SslMode has been specified.
    • Fixed: You may run into "System.NullReferenceException" when running multiple Snowflake destination components in parallel.
    • Fixed: Command Timeout setting in Snowflake Source/Destination component may not work properly.
  • Encryption and Compression Tasks
    • New: We added two new actions in PGP Task.
      • Encrypt And Sign
      • Verify Encrypted and Signed File
    • New: Output Detailed Information support in PGP Task.
    • Fixed: You may receive an "exception decrypting secret key" error when decrypting a PGP-encrytped file while the private key file contains multiple keys.
  • Google Services
    • New: We have added support for Google Ads API in Google Ads Connection Manager.
  • HTTP/Web Services
    • New: We added Bearer Token authentication mode support in HTTP Connection Manager.
    • New: We added support of Azure OAuth authentication mode in HTTP Connection Manager, which supports client credential and certificate OAuth types to authenticate to Azure services.
    • New: We added a new Google Service Account authentication mode support in HTTP Connection Manager.
    • Update: HTTP Requester Task component now uses separate properties to store Query String Parameters and Request Headers. This change should be considered as a breaking change, as a prior versions (v20.2.1 or earlier) would not be able to open or process an SSIS package saved by the new version.
  • JSON & XML Processing
    • Enhancement: JSON/XML Source/Destination/Merge/Extract component now tries to detect encoding automatically upon file import.
    • Fixed: You may receive a "String was not recognized as a valid DateTime" when working with Microsoft JSON datetime format (format like "/Date(1224043200000)/") in JSON Source/Extract component.
    • Fixed: XML Source/Extract may not output the repeated element values correctly when there are empty tag values like <{NodeName}/> involved. 
  • Mail Components
    • New: We added OAuth2 authentication support for Exchange Web Service protocol in Email Connection Manager.
    • Fixed: In some rare situations, you may receive an error indicating "The specification of a mailbox with the public folder root is invalid" when testing connection in Email Connection Manager while using Exchange Web Service protocol.
  • Message Queue Components
    • New: We added a new "Retry on Intermittent Errors" option in IBM MQ Connection Manager, which can be used to retry upon intermittent connection failure errors.
    • New: We added a "Peek then Delete" option to RabbitMQ source component, which can be used to ensure the message retrieval reliability when using Receive and Delete receive mode.
    • New: We added some new regions support in Amazon SQS Connection Manager.
    • Fixed: RabbitMQ destination component might report a "Value cannot appear as table value" error when writing to custom datetime or GUID data type fields.
  • NoSQL Components
    • New: Amazon DynamoDB source component now supports reading from Global Secondary Index.
    • New: We added some new regions support in Amazon DynamoDB Connection Manager.
    • Enhancement: MongoDB source component now reports a better error message when the specified database or collection does not exist.
    • Update: Max Degree of Parallelism now defaults to 1 in CosmosDB destination component.
    • Fixed: Refreshing Amazon DynamoDB source/destination component resets the object to the first object in the list.
  • Premium Data Flow Components
    • New: Premium Derived Column component now includes support for the following new functions:
      • RaiseError()
      • GetItemAtPositionInString()
      • GetItemCountInStringArray()
      • ShowMessageBox()
    • New: Premium Derived Column component now supports renaming a column by modifying the output alias through Advanced Editor.
    • New: We added AutoFit Column Width support in Premium Excel destination component.
    • New: We have added "SharePoint" service implementation in Premium OData Connection Manager, which is used for OData service implementations that closely follow the Microsoft SharePoint documentation.
    • New: You can now use SSIS variables in the OData Query Builder in Premium OData source component.
    • New: Premium OData source component now supports performing bound actions towards a collection of entities.
    • New: You can now use SSIS variables in the Pre & Post commands in Premium ADO.NET source/destination component.
    • New: Premium ADO.NET destination component now supports batch insert action for all the connections.
    • New: Premium ADO.NET destination component now validates that at least one input column is mapped for Delete action.
    • New: We added a "CombineAll" table combining strategy in Premium PDF source component
    • Enhancement: Some performance enhancement when loading Preview in Premium ADO.NET source component.
    • Update: The maximum batch size value in Premium OData source component is updated to 1,000,000.
    • Fixed: Premium OData source/destination component may "The attribute 'ConcurrencyMode' was not expected in the given context" error when retrieving metadata for a Dynamics NAV/Business Central on-premises connection.
    • Fixed: You may receive an "ORA-00933: SQL command not properly ended" error when loading Preview in Premium ADO NET source component through an Oracle Provider for OLEDB connection.
    • Fixed: "Format String" option in Premium Excel destination component was applied to the entire column, while it should only be applied to the written cells.
    • Fixed: You may get error "An item with the same key has already been added" when there are duplicate column names specified in Premium Excel Destination component.
  • Premium File Pack
    • New: We added a "Skip Writing On No Row" option in Premium Flat File destination component, which can be used to skip creating the empty file when there are no input rows.
    • New: Premium Flat File destination component now supports a new Append to file option.
    • Fixed: Premium Flat File source component may not read complete data from DT_NEXT or DT_TEXT type field for large data columns (>10,000 length).
    • Fixed: Premium File System source component may report “The process cannot access the file because it is being used by another process” error when reading fileContent or fileSize properties in some special situations.
  • REST Services
    • [General]: REST Source component no longer fails on 404 Not Found error.
    • ADP
      • New: We added "asOfDate" filter parameter support for Workers service endpoint in ADP REST source component.
      • Fixed: ADP REST source component may not output any rows when reading from Time Off > Time Off Requests service endpoint.
    • Azure Tables
      • Fixed: Azure Tables REST destination component failed whole batch when the first record in the batch failed.
    • Eventbrite
      • Update: We have removed 'event.description' field but added 'event.summary' field to Event object in Eventbrite REST component.
    • Facebook Business
      • New: Added Ad Insights breakdown fields metadata to Facebook Business REST source component.
    • Infusionsoft
      • Update: Infusionsoft service has been renamed to Keap/Infusionsoft to respect the vendor's recent branding changes.
    • Jira
      • New: Jira REST Connection Manager now supports Basic authentication mode.
    • LinkedIn Business
      • Update: We have adapted the LinkedIn query tunneling feature so that reading requests are now using the POST HTTP method.
    •   Magento
      • New: You can now call a writing action endpoint (PUT and POST endpoints) in Magento REST source component.
      • Update: Now store code specified in Magento REST Connection Manager is applied to every request.
    • Microsoft Teams
      • Fixed: Microsoft Teams REST source component may not retrieve channels records properly.
    • Salesforce Pardot
      • New: We added Pardot v3 API support.
      • Update: We have removed Pardot API authentication mode support from Salesforce Pardot REST Connection Manager as Pardot’s user authentication system has been discontinued.
      • Fixed: Missing output rows when reading from “Get specific Prospect by Email” endpoint in Salesforce Pardot REST source component.
    • ServiceNow
      • Fixed: In some rare situations, you may run into “The requested query is too long to build the response pagination header URLs” error when reading from ServiceNow REST source component.
    • Shopify
      • Fixed: Pagination in Shopify REST source component worked improperly with Payouts and Transactions objects.
    • Smartsheet
      • New: Smartsheet REST destination now supports auto-detect input data type when writing to Smartsheet Text/Number columns for discovered sheet objects.
    • Square
      • New: Instance Type support in Square REST Connection Manager.
      • Update: Updated metadata to latest API version.
    • Xero
      • Enhancement: Updated Journal and Reports objects metadata for Accounting API.
      • Fixed: “String was not recognized as a valid DateTime” error when reading Xero datetime values.
    • Zoom
      • Update: Zoom REST source component no longer fails on 404 Not Found error.
    • Zuora
      • New: We added support for Query source type in Zuora REST source component.
      • New: We added “List all records” endpoint support to many Zuora objects in Zuora REST source component.
      • Update: Zuora REST source component no longer fails on 404 Not Found error.
      • Update: Zuora REST component now list custom object with a suffix of “(Custom Object)” if the custom object name is conflict with system object.
  •   Template Merge Components
    • New: HTML source component now supports using variable as the source.

Version 20.2.1 - December 10, 2020

This release is mainly a service release, which comes with the following updates and fixes:

  • [General] Enhancement: We added the ability to toggle numeric fields to string DT_WSTR(32) and DT_WSTR(64) data types in Source components that support data type toggling. This is helpful when string data type is more appropriate.
  • Data Warehousing
    • Fixed: Snowflake Destination component may report “The number of files exceeds the 1,000 limit” error when Bulk Copy a large number of records to Snowflake.
    • Fixed: You may get “Timestamp is not recognized” error when using Bulk Copy in Snowflake Destination component.
    • Fixed: You may run into KeyTooLongError when Bulk Copy using a temp table in Snowflake Destination component.
  • Encryption and Compression Tasks
    • Fixed: Deflate and Gzip compression formats in Compression Task may error out when the file is great than 2 GB.
  • Mail Components
    • Fixed: Email Connection Manager may report “The specification of a mailbox with the public folder root is invalid” error when testing connection using Exchange Web Service.
  • Marketing Intelligence
    • Fixed: Bing Ads Source component may not report detailed error message when error occurs.
  • NoSQL Components
    • Fixed: MongDB Source component worked improperly with empty array values.
    • Fixed: You may get “An error occurred writing the value for the 'xxx' column to the document” error when writing array of values in MongoDB Destination component.
  • Premium Data Flow Components
    • Fixed: Premium ADO NET Destination component using Custom Command may report “Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index” error after upgrading to v20.2.
    • Fixed: Premium ADO NET components may not detect the tables properly when using a third-party data provider.
  • Premium File Pack
    • New: We added a “Max Concurrent Connections” option in FTPS Connection Manager, which can be used to managed the maximum number of concurrent connections established to the FTP site.
    • Fixed: You may run into “Specified method is not supported” error in Premium File System Source when reading SFTP files with “Async Data Transfer” enabled in SFTP Connection Manager.
    • Fixed: Premium File Transfer Task may fail with an UnauthorizedAccessException when saving files to a local file path where the user has no read permission to the target folder.  
  • REST Services
    • Azure Tables
      • Fixed: Azure Tables REST Source and Destination components may not work properly with string type datetime values.
    • Facebook Business
      • Update: We updated the default API Version to version v9.0.
      • Update: Updated metadata in Ads Insights object to include breakdown metadata.
    • Facebook Messenger
      • Update: We updated default API Version to version v9.0.
    • Jira
      • Update: Jira REST Source component no longer fails on 404 Not Found error when reading worklogs or comments by issueId and the issue had no worklogs or comments available.
      • Fixed: Pagination in Jira REST Source component may not work properly with User, Boards and Sprints objects when working with Jira On-Premises environment.
    • Zoom
      • Fixed: Zoom REST Destination component reported error message in XML format.

Version 20.2 - November 4, 2020

This release comes with the following updates and enhancements:

  • New Components
    • Big Data
      • EDI Destination
    • Data Warehousing
      • Amazon Redshift Connection Manager
      • Amazon Redshift Source
      • Amazon Redshift Destination
      • PostgreSQL Connection Manager
      • PostgreSQL Source
      • PostgreSQL Destination
    • Marketing Intelligence
      • Bing Ads Connection Manager
      • Bing Ads Source
      • Bing Ads Destination
    • Premium Data Flow Components
      • OData Connection Manager
      • Premium OData Source
      • Premium OData Destination
      • Premium PDF Source
  • New services in REST
    • Copper
    • GoToWebinar
    • Mailgun
    • WeChat
    • Zoho
    • Zoom
  • General
    • New: KingswaySoft License Manager now includes the ability to show and copy the LicenseId within the program which can be used for renewal purposes without having to reveal the full license key details, for instance, if a third-party reseller or agent is involved.
    • New: KingswaySoft License Manager program now offers a link in the UI to help renew license maintenance or subscription with one single click.
    • New: For all connection managers that involves the use of a certificate file, we now support having the file stored in Azure Blob Storage for easy access.
  • Big Data
    • Fixed: "System.ArgumentException: Value does not fall within the expected range" error when deploying package with EDI Source component.
  • Cloud Storage
    • New: We added a new "Download Chunk Size" option in the Azure Blob Storage Connection Manager.
    • Fixed: You may encounter a "Sequence contains no elements" error when uploading files to Azure Data Lake Storage Gen1 root path using Premium File Transfer Task.
    • Fixed: Azure Data Lake Storage Source component only reads x-ms prefixed columns when reading from a Azure Data Lake Storage Gen2 instance while FileContent column is enabled.
    • Fixed: Amazon S3 Source component only reads xAmz prefixed columns when reading from a Azure Data Lake Storage Gen2 instance while FileContent column is enabled .
    • Fixed: "The provided 'x-amz-content-sha256' header does not match what was computed" error when uploading multiple files to Amazon S3 in parallel.
    • Fixed: "Bucket Name was not provided" error in Premium File Transfer Task when uploading files to Amazon S3 bucket path.
    • Fixed: "Update blob operation was not valid" error in Azure Blob Storage Destination component when performing Update Blob action.
    • Fixed: "TlsVersionNotPermitted" error when downloading Azure Blob Storage files using Premium File Transfer Task.
  • Data Generation and Anonymization
    • New: Data Spawner and Data Anonymizer components now support SSIS variables as spawn/anonymization types.
    • New: Custom spawn/anonymization type in Data Spawner and Data Anonymizer components supports using SSIS variable as List of Values.
    • New: We have add a new <Null> anonymization type to the Data Anonymizer component.
    • Update: The <Ignore> spawn type has been renamed to <Null> in Data Spawner.
    • Fixed: "Source Data Affinity" option may not work correctly with the Regex anonymization type in Data Anonymizer.
  • Data Quality and Comparison
    • Fixed: "PipelineBuffer has encountered an invalid column index value" error in Duplicate Detector when the input has a column called "GroupCode".
  • Data Warehousing
    • New: We have added a new "Use Bulk Copy" option in the Snowflake Destination component, which can be used to work with large data loads leveraging Azure Blob Storage or Amazon S3 as intermediate cloud storage.
    • Fixed: Snowflake Source and Destination components might fail to list the table drop-down due to the extraordinary number of tables available in the working schema.
  • Encryption and Compression Tasks
    • New: We now support writing those errors to SSIS variables in PGP Task.
  • Google Services
    • [All] New: We added a new ThrottlingRateUnit option in all Google Connection Managers, so that you have more granular control over the throttling rate.
    • New: We added a new SPREADSHEET_DELETE_ROWS_OR_COLUMNS action to the Google Sheets Destination component. This action can be used to delete certain dimensions from the sheet.
    • [All] Update: We have lifted the maximum API Throttle Rate number, which was previously limited to 10 for all Google connection managers in prior versions.
    • [All] Fixed: "Empty path name is not legal" error in Google Connection Manager when using Service Account authentication mode.
    • Fixed: "The operation has timed out" error when you have multiple Google Sheets Connection Managers in one package and run "Test Connection" on all of them.
    • Fixed: API Throttling Rate may work not correctly in Google Analytics Connection Manager.
    • Fixed: "Object reference not set to an instance of an object" error when writing to TABLEDATA in Google BigQuery Destination component.
  • HTTP/Web Services
    • Enhancement: We have some further improved support for some special WSDL files in Web Service Components.
    • Enhancement: JSON Extract and Source components now support outputing datetime values as they are received from the service endpoint if it is configured as a string type column (such as DT_STR, or DT_WSTR).
    • Fixed: "Exception from HRESULT: 0xC0204019" error in XML Extract and Source components when importing XML files into the Document Designer.
    • Fixed: "System.Runtime.InteropServices.COMException: Exception from HRESULT: 0xC0047041" error in the JSON/XML Extract and Source components when removing nodes from a filtered tree view in the Document Designer.
    • Fixed: XML Extract and Source components does not work properly with XML elements that contain periods (.) in their name.
    • Fixed: Missing the first output row in child outputs from XML Extract or Source components when there are multiple repeated element outputs.
  • Mail Components
    • New: Email Source component now supports reading raw email content in EML and MSG file format.
    • New: Email Source component supports showing non-email folders in the File Browser dialog when working with Exchange Web Service connections.
    • New: The Test Connection function in Email Connection Manager now reports Public Folder detection results when working with Exchange Web Service connections.
  • Message Queue Components
    • Fixed: "Object reference not set to an instance of an object" error in IBM MQ Connection Manager when connecting to a remote queue manager without credentials.
  • Premium Data Flow Components
    • New: We have now added support for Pre and Post Commands in the Premium ADO.NET Source component.
    • New: When connected to an Oracle database, the Premium ADO.NET Source and Destination components now support switching to a different schema using the newly introduced Schema button.
    • New: Premium Excel Destination component supports writing column headers at a specific row.
    • New: Premium Excel Source and Destination components now come with Import/Export column functions.
    • New: Premium Excel Destination component provides two new alignment options - HorizontalAlignment and VerticalAlignment, which work for cell and header formatting.
    • New: Premium Derived Column component now includes support for the following 3 new functions:
      • IsFileLocked()
      • FileLockedBy()
      • GenerateJWT()
    • Update: (DT_DBTIMESTAMP) cast function in Premium Derived Column now follows local machine's Windows locale setting.
    • Update: Premium Excel Source component replaces line breaks with spaces when discovering Column Headers from a file.
    • Enhancement: Premium Slowly Changing Dimension component has some significant performance improvements when both of the inputs are sorted.
    • Enhancement: Premium Lookup component has some significant performance improvements when loading a large number of columns at design time.
    • Enhancement: Significant performance improvement when Create table with a large number of input columns in Premium ADO NET Destination component.
    • Fixed: "Memory is locked" error in Premium Lookup when processing DT_TEXT/DT_NTEXT/DT_IMAGE type columns while working with large data sets.
    • Fixed: NULL values from Premium Excel Source component when using Not Specified Column Names mode.
    • Fixed: "System.ArgumentNullException: Value cannot be null. Parameter name: key" error in the Premium Aggregate component when performing Group By operation, and the input column contains NULL values.
    • Fixed: Deadlock error in Premium ADO.NET Destination component when performing Bulk Update/Upsert/Delete/Full Sync action towards the same SQL table with multiple Destination components.
    • Fixed: "The given key was not present in the dictionary" error when deploying Premium Slowly Changing Dimension component and not all the outputs are attached.
    • Fixed: "Object reference not set to an instance of an object" error when performing Full Sync action with "Row by Row" write mode in Premium ADO.NET Destination component.
  • Premium File Pack
    • New: Premium File Transfer Task component now supports filtering for Send Files and Delete Files actions when working with Amazon S3, Azure Blob Storage, Azure Data Lake Storage, Azure Files, Box, Dropbox, Google Cloud Storage, OneDrive, and WebDAV connections.
    • New: Premium File System Source and Destination components support working with Amazon S3, Azure Blob Storage, Azure Data Lake Storage, Azure Files, Box, Dropbox, Google Cloud Storage, OneDrive, WebDAV connections.
    • New: SFTP Connection Manager now supports a new "Use Async Data Transfer", which can be used to transfer files asynchronously in the background, which could help improve upload performance for certain SFTP connections.
    • Enhancement: Some substantial performance improvement when using the "Remove Directory" action in the Premium File Transfer Task with an Amazon S3 connection.
    • Update: "Use Streamed Download" option in SFTP Connection Manager is renamed to "Use Streamed Data Transfer", which can be used to upload/download data from/to stream to improve transfer performance.
    • Fixed: A number of Unicode encodings were missing in Premium Flat File Destination component.
    • Fixed: "No item exists" error when emptying a local folder using Delete Files action with filter in Premium File Transfer Task.
    • Fixed: Filter Parameters grid was disabled for editing in Premium File Transfer Task if Delete Files action is used.
  • Premium Tasks
    • New: Premium File Properties Task supports working with Amazon S3, Azure Blob Storage, Azure Data Lake Storage, Azure Files, Box, Dropbox, Google Cloud Storage, OneDrive, and WebDAV connections.
  • REST
    • [All] New: We have added _HttpRequestUrl, _HttpRequestMethod, _HttpRequestHeaders, _HttpRequestBody, _HttpResponseCode, _HttpResponseCodeName, _HttpResponseHeaders output columns in the REST destination component's Default Output, which can be used for debugging purpose.
    • ADP
      • New: We added Applicant Onboard V2 API support.
    • Facebook Business
      • New: REST Facebook Business Connection now supports an APIVersion option.
      • Fixed: "Invalid appsecret_proof provided in the API argument" error in the REST Facebook Business Source and Destination components when "Use AppSecret Proof" is enabled in the Connection Manager and the token file is generated using "My Own App".
    • Jira
      • New: Jira REST Connection Manager now supports OAuth2 authentication.
      • New: REST Jira Source component now supports Issue Worklogs object.
      • New: REST Jira Destination component now supports Issue Watchers object.
      • New: Pagination support is added to Get Users from Group or Find Users By Query endpoints in REST Jira Source component.
      • Update: Field "fields.Sprint" in Issues object works with raw JSON in the REST Jira Source and Destination components.
      • Fixed: "(500) Internal Server Error" error in the REST Jira Source component when reading from Issues with worklog output enabled.
      • Fixed: "The group name can not be empty" error in the REST Jira Source component when reading from "Get Users From Group" endpoint and the "groupname" filter parameter is specified.
      • Fixed: "Error parsing time" error in the REST Jira Destination component when working with datetime values under particular conditions.
    • LinkedIn Business
      • New: LinkedIn Business REST connection now supports working with an OAuth token file, which provides the ability to automatically refresh the access_token to provide a more robust connection infrastructure.
      • Fixed: 403 Forbidden error when performing Update Ad Account action in REST LinkedIn Business Destination component.
    • Magento
      • Fixed: "Unable to cast object of type 'System.String' to type 'jey`2[System.Object,System.Object]'" error in the REST Magento Source component when working with certain special custom objects.
      • Fixed: Magento REST Source component didn't output the custom_attributes values in the child outputs.
      • Fixed: Search parameters are not properly cleared when changing source endpoints in the REST Magento Source component.
    • MYOB:
      • Fixed: "Access denied" error in the REST MYOB Connection Manager when connecting to AccountRight without MYOB credentials.
    • Microsoft Teams
      • New: We have added support for Microsoft communications API.
    • PayPal
      • New: PayPal v2 API for Invoicing, Orders, Partner Referrals, and Payments objects is supported in the REST PayPal Source and Destination components.
    • Salesforce Pardot:
      • New: Salesforce Pardot connection now supports OAuth2 authentication.
      • Fixed: "Object reference not set to an instance of an object" in REST Salesforce Pardot Source and Destination component when selecting Prospect object and the Prospect object has no custom fields.
    • ServiceNow
      • Fixed: "Object reference not set to an instance of an object" error when getting incident object's endpoints when the connection user has no full metadata permission.
    • Shopify
      • New: Shopify connection now has support for a new APIVersion option.
      • Fixed: "{query_string_paraemter} cannot be passed when page_info is present" error in the REST Shopify Source component when a filter parameter is used.
    • Slack
      • Fixed: "over_pagination_limit" error in the REST Slack Source component when reading from team.accessLogs object.
    • Smartsheet
      • Fixed: Smartsheet REST Source and Destination components may fail to list the Source/Destination Object drop-down when there are more than 100 sheets in the instance.
    • Teamwork
      • Enhancement: Updated metadata for Projects and Tasks objects in REST Teamwork Source component.
      • Fixed: "String was not recognized as a valid DateTime" error when reading due-date and start-date values from Projects object in REST Teamwork Source component.
    • Zendesk
      • Fixed: "Filename cannot be blank" error in the REST Zendesk Destination component when uploading attachment to Zendesk Support.
    • Zuora
      • New: Zuora REST Source and Destination components now support custom objects.
  • Timing & Automation Components
    • New: Time Zone Conversion component now supports working with multiple input datetime columns in the same component.
    • New: We have added a new "Output Column Type" option to the Time Zone Conversion component, which can be used to output converted datatime values into DT_DBTIMESTAMPOFFSET data type when needed.

Version 20.1 - June 9, 2020

With this release, we have added support for 20 new services (APIs), 69 components among a total of over 500 new features, updates and enhancements. Here are the following updates and enhancements:

  • New Components
    • Cloud Storage
      • Azure Files Connection Manager
      • Azure Files Source
      • Azure Files Destination
    • Timing & Automation
      • Azure Functions Connection Manager
      • Azure Functions Source
      • Azure Functions Destination
      • Azure Functions Task
      • SSH Task
    • Message Queue
      • Premium Message Queue Task
    • Conversion
      • Composition
      • Decomposition
    • Premium Data Flow
      • Premium Aggregate
    • Premium Task
      • Premium Expression Task
      • Premium File Properties Task
    • Encryption & Compression
      • Premium Hash
    • Premium File Pack
      • WebDAV Connection Manager
      • WebDAV Source
      • WebDAV Destination
  • New services in REST
    • Acumatica
    • Azure Application Insights
    • Azure Tables
    • BaseCamp
    • BigCommerce
    • eBay
    • ElasticSearch
    • EventBrite
    • Facebook Messenger
    • FreshBooks
    • Insightly
    • Magento
    • LinkedIn Business
    • Sage Business Cloud
    • Teamwork
    • Twitter Business
    • Xero
  • [General] New: We added support for working with a token file stored in Azure Blob Storage by specifying an Azure SAS URL as the token file path for any Connection Manager that supports token file.
  • [General] Enhancement: All the Transformation components and Destination components in SSIS Productivity Pack now support working with duplicate column names from upstream components as long as the columns are coming from different sources.
  • [General] Enhancement: We have made some minor improvements in our retry implementation on intermittent errors.
  • [General] Update: We have updated our software signing by using a new certificate vendor, which might trigger a SmartScreen alert within the first couple of months from the release date. Rest assured we have done our best to make sure that your downloads from our website are trustworthy.
  • [General] Update: We have adopted a new versioning strategy in this release. Going forward, all future releases will be versioned as YY.ReleaseWave.ServiceReleaseNumber.BuildNumber, where YY is the year in two digits. This helps simplify our communications with partners and clients in terms of a particular toolkit installation's maintenance status among many other benefits. This is implemented across the board for all of our SSIS toolkits. All our current releases should have the same version number of v20.1.0 with a revision number between 1561 and 1601.
  • [General] Update: We have introduced a new branding panel in our UI forms to distinguish our components from those out-of-box ones.
  • [General] Update: We updated .NET framework requirement to v4.6.1 for SSIS 2012 and above.
  • [General] Update: Our license manager program now requires .NET Framework 4.0 or above.
  • Premium Data Flow Components
    • Premium ADO.NET
      • New: Premium ADO.NET Source component now supports using SSIS variables as table names when Custom Command option is used.
      • New: Premium ADO.NET Destination component now supports returning additional output columns.
      • New: Premium ADO.NET Destination component now supports writing to MySQL tables in Batch Insert mode and Bulk Insert mode when using MySQL Data Provider.
      • New: We added a "Write Mode" option in Premium ADO.NET Destination component, available options include: Row by Row, Batch and Bulk.
      • Enhancement: Premium ADO.NET components now automatically detect the supported Transaction Isolation Level for the specified connection manager.
      • Update: We removed the "Use Bulk" option in Premium ADO.NET Destination component.
      • Fixed: Premium ADO.NET Source component may report an "Only MySqlParameter objects may be stored" error when clicking the Preview button with a MySQL Data Provider connection in the case that an SSIS variable is used in the command.
      • Fixed: You may get an error "The target table 'target' of the DML statement cannot have any enabled triggers if the statement contains an OUTPUT clause without INTO clause" when performing Bulk Update/Upsert/Delete/Full Sync actions against a SQL table which has triggers defined.
      • Fixed: You may run into an error "Cannot insert duplicate key in object '{TableName}'" when performing non-bulk Upsert action against a SQL client connection manager.
      • Fixed: You may get a "CLI0129E An attempt to allocate a handle failed because there are no more handles to allocate" error in Premium ADO.NET Destination after writing thousands of records to an IBM DB2 table.
      • Fixed: Premium ADO.NET Destination may not report the detailed error message on each failed record when performing non-bulk Insert action and the Error Handling is set to "Redirect rows to error output".
    • Premium Excel
      • New: Premium Excel Source/Destination components support working with worksheet index now.
      • New: We added an "Ignore Cast Exception" option in Premium Excel Source columns, which can be used to prevent the component from failing should an InvalidCastException occur.
      • Update: We removed the "Specify End Row" option from Premium Excel Destination component when write mode is set to "Write to specific rows"
      • Fixed: Premium Excel components may not detect the format and background colors properly when Column Name option is set to Start Row.
      • Fixed: You may run into a "System.ArgumentException: An item with the same key has already been added" error when running multiple Premium Excel Source components to read from the same file simultaneously.
    • Premium Derived Column
      • New: We added the following functions to Premium Derived Column component:
        • Char()
        • Try()
        • FormUrlEncodedToJson()
        • GzipCompress()
        • GzipDecompress()
        • DeflateCompress()
        • DeflateDecompress(),
      • New: HtmlEncode() function now supports representing by entity name.
      • Fixed: Expression NULL(DT_NTEXT) had an output data type of DT_WSTR(255).
      • Fixed: SubString() function was using test value for validation in Premium Derived Column.
      • Fixed: WriteValueToVaraible() may not work properly when Premium Derived Column is used in a Foreach Loop container.
      • Fixed: You may get an "Unable cast to type 'System.IConvertible'" error in Premium Derived Column when casting bytes to a numeric data type.
    • Premium Slowly Changing Dimension
      • New: We added support for using GUID column as surrogate key in Premium Slowly Changing Dimension component.
      • Fixed: "Use Bulk" option was disabled when writing to Oracle ODP.NET Unmanaged connection in Premium Slowly Changing Dimension component.
    • Premium Conversion
      • New: We added an "Ignore Cast Exception" option in Premium Conversion columns, which can be used to prevent the component from failing should an InvalidCastException occur.
      • Fixed: The Premium Conversion component may still report a NullReferenceException when Error Handling is set to "Redirect rows to error output".
  • Cloud Storage
    • Amazon S3
      • New: We added support for Set ACL action in Amazon S3 Destination component.
      • New: We added a new "Ignore Certificate Errors" option in Amazon S3 Connection Manager, which can be used to ignore any SSL certificate errors.
      • Fixed: You may get 'System.OutOfMemoryException' error while uploading large files (>1GB) to Amazon S3 using multi-threaded file uploading.
    • Azure Blob Storage
      • New: Azure Blob Storage Destination component now reports HTTP error status code in the ErrorCode column in the Error Output with a prefix of "800000" such as "800000409" to represent a 409 error..
      • Enhancement: Azure Blob Storage Source component has some significant performance improvement when file_content and the x-ms prefixed columns are not selected.
      • Fixed: You may get 'System.OutOfMemoryException' error while uploading large files (>1GB) to Azure Blob Storage.
    • Box
      • New: We added a "Max Depth" option in Box Source component, which can be used to specify how many levels of folders to read when reading in the recursive mode.
      • New: We added an "API Throttle Rate" option in Box Connection Manager.
      • New: We added support of using My Own App in Box Connection Manager.
      • Update: We have switched to use token files instead of relying on Windows registry to store and manage authentication tokens for better security and easier deployment.
      • Fixed: You may run into 404 Not Found error when updating tags of a folder record in Box Destination component.
      • Fixed: Downloading a specific file from Box using Premium File Transfer Task may not work properly.
      • Fixed: You may get a NullReferenceException error when downloading Box files recursively in Premium File Transfer Task.
    • Dropbox
      • New: We added support of using My Own App in Dropbox Connection Manager.
      • Fixed: You may get a "The process cannot access the file because it is being used by another process" error in Premium File Transfer Task when uploading files to Dropbox.
    • Google Cloud Storage
      • Fixed: Google Cloud Storage Destination component may validate for required "ObjectResource" field but the field is not available in the destination metadata.
      • Fixed: You may receive a 'System.OutOfMemoryException' error while uploading large files (>1GB) to Google Cloud Storage.
    • OneDrive
      • New: We added a "Tenant Id" property in OneDrive Token Generator, which can be used to authenticate towards a specific Azure tenant.
  • Google Services
    • [All] Update: We have switched to use token files instead of relying on Windows registry to store and manage authentication tokens for better security and easier deployment.
    • [All] Fix: You may find a warning message in SSIS Execution Result that the Google token is generated using the app provided by KingswaySoft when the Google token was actually generated using My Own App.
    • [All] Fixed: You may receive a "System.NullReferenceException: Object reference not set to an instance of an object." error in Google Connection Manager when testing connection using Service Account authentication mode, this only happens to some unique system situations.
    • Google Analytics
      • New: Google Analytics Source component now supports outputting sampling information (sampleSize and sampleSpace).
      • New: We added support of specifying custom metrics and custom dimensions in Google Analytics Source component.
      • Enhancement: Improved handling of user permission errors when authenticating using Service Account in Google Analytics Connection Manager.
      • Fixed: You may run into NULLReference exceptions when testing connection in Google Analytics Connection Manager with a service account while a proxy is in use.
    • Google Ads
      • New: We added support for discovering available CustomerIds for the authenticated user in Google Ads Connection Manager.
      • Enhancement: Improved UI performance with select/unselect all output columns in Google Ads Source component.
      • Fixed: Google Ads Source component may crash when selecting LANDING_PAGE_REPORT report type.
    • Google BigQuery
      • Enhancement: We improved the error handling when authentication failed in Google BigQuery Connection Manager.
      • Enhancement: Improved UI performance with select/unselect all output columns in Google BigQuery Source/Destination component.
      • Fixed: Google BigQuery Source/Destination may fail listing all the datasets in a project when the project contains has more than 50 datasets.
    • Google Sheets
      • Update: We removed "Specify End Row" option from Google Sheets Destination component.
      • Fixed: You may run into a "Cannot deserialize the current JSON object' error" in Google Sheets Source/Destination component when the specified worksheet contains a filter view.
      • Fixed: Google Sheets Source component may fail with the "Input string was not in a correct format" error when reading an empty cell while the output column is in a numeric data type.
      • Fixed: You may receive an error "System.ArgumentException: Value does not fall within the expected range" in Google Sheets Destination when the default output is attached.
      • Fixed: Google Sheets Destination component may not work properly with NULL value with those non-string type fields.
  • HTTP/Web Services
    • New: Added a new AWS Signature authentication mode in HTTP Connection Manager, which supports Amazon Signature Version 4 and Signature Version 2.
    • New: We added support of Kerboros authentication mode in HTTP Connection Manager.
    • New: We added JWT authentication mode support in HTTP Connection Manager.
    • New: HTTP Connection Manager now supports Custom Token authentication by making a web request to retrieve an authorization token using a CURL command from a file, then extract the token from the web service response.
    • New: JSON/XML Source component now supports using variable as the source.
    • New: We added a new "Key Value Pivot" Output Type in JSON/XML Extract/Source component, which can be used to work with key/value pairs values.
    • New: JSON/XML Source component now supports @[ResponseStatusCode] token for expression evaluation.
    • New: We added an "Allow Data Truncation" option in JSON/XML Source component.
    • New: We added support of sending JSON formatted token request in OAuth Token Generator when the Content-Type request header is set to "application/json".
    • Update: HTTP Connection Manager now uses certificate thumbprint to specify the SSL certificate instead of using the certificate subject.
    • Update: We have renamed Credential authentication mode in HTTP Connection Manager to "Credential (Basic, Digest, NTLM)".
    • Update: HTTPRequestURL default output column in JSON/XML Destination component now has a default length of 4000.
    • Update: RequestURL output column in JSON/XML Source component now has a default length of 4000.
    • Update: The maximum allowed Max Identical value in JSON/XML Source component is now set to 500.
    • Fixed: You may find an error "The PrimeOutput method returned success, but did not report an end of the rowset" in SSIS Execution Results when a child output is enabled but not attached in JSON/XML Source.
    • Fixed: JSON/XML Source component may fail on 403 HTTP status code even though 403 has not been specified as an error code in HTTP Connection Manager.
    • Fixed: You may run into "Irony.Interpreter.ScriptException" error in JSON/XML Source component when running multiple JSON/XML source components
      in parallel and the same project parameter is used in each source component.
    • Fixed: You may get NULL value in _HttpRequestIndex column in the HTTP Request Output in JSON/XML Source component.
    • Fixed: JSON/XML Destination component may report duplicate column validation error on [ErrorCode] column when the input contains a column named "ErrorCode".
    • Fixed: The default output of JSON/XML Destination component may lost all output columns after metadata changes from upstream components.
    • Fixed: In some specific situations, you may get a NullReferenceException in JSON Source component after processing hundreds of records if the component is used in a Foreach Loop Container.
    • Fixed: JSON/XML Source component may fail reading the local file if the file is encoded in UCS-2 LE BOM.
    • Fixed: Encoded value "%20" in URL may get sent as "+" when testing connection in HTTP Connection Manager.
    • Fixed: HTTP Requester component may report OutOfMemory error when downloading a large file into the output DT_IMAGE field.
  • Mail Components
    • New: We added a "Post Retrieve Action" option in Email Source component, which can be used to delete or mark received email as deleted on the email server.
    • New: Email Source component now supports outputting the FolderPath of the email record.
    • New: We added support of getting email by MessageId in Email Source component for IMAP/Exchange Web Service connections.
    • Enhancement: Significantly performance improvement when working with Exchange Web Services protocol in Email Source if the Attachment output is not attached.
    • Enhancement: Some UI drag & drop improvement in WYSIWYG designer in SMTP Task/Destination component.
    • Fixed: SMTP Task/Destination component may not work properly when an image src path uses SSIS variables in the HTML email body.
  • NoSQL Components
    • New: CosmosDB Source/Destination component now supports working with raw document text as a column.
    • Enhancement: CosmosDB Destination component now validates the node type of the root node in order to prevent the "Object serialized to Array. JObject instance expected" error when the root node is accidentally set to an array.
    • Update: Cassandra/MongoDB Connection Manager now uses certificate thumbprint to specify the SSL certificate instead of using the certificate subject.
    • Update: We have renamed "Convert ObjectId to String" option in MongoDB Source component to "Convert Mongo types to strings" to better support MongoDB datetime values when "Output as JSON" option is enabled.
    • Fixed: CosmosDB Source component UI always sets the same variable for the Input Variable and Output Variable when working with Document Change Feeds.
    • Fixed: You may get error "There is no Database named 'xxx'." when running multiple CosmosDB Source components in parallel.
    • Fixed: MongDB Destination component may write input datetime values in local system timezone while the component Input Timezone has actually been set to UTC.
  • Premium File Pack
    • New: Send Files and Delete Files actions in Premium File Transfer Task component now support filtering when working with Local/SFTP/FTPS connection.
    • New: We added a "Use Legacy Group Exchange" option in SFTP Connection Manager, which can be used to specify whether to use legacy form of Diffie-Hellman group exchange.
    • New: We added support of using wildcard characters within SFTP and local files in Premium File System Source component.
    • New: Premium File System Source component now supports filter parameters.
    • Update: FTPS Connection Manager now uses certificate thumbprint to specify the SSL certificate instead of using the certificate subject.
    • Fixed: You may get a "The connection was closed by the server" error when downloading files from SFTP server in recursive mode.
    • Fixed: Premium File System Source component may report a System.InvalidCastException error when outputting a string value to a DT_NTEXT field.
  • REST
    • [All] New: You can now use SSIS variables in the Filter Parameters grid in REST Source component.
    • [All] New: We added support for outputting raw response bodies in REST Destination component.
    • [All] Enhancement: Improved OAuth Configuration & Sign-In UI for all any REST connections that use a token file.
    • [All] Fixed: You may find an error "The PrimeOutput method on "REST Source" returned success, but did not report an end of the rowset" in SSIS Execution Results when a child output is enabled but not attached in the REST Source component.
    • Act-On
      • Fixed: Sending null values to Act-On to overwrite existing values may not work properly when performing Update action in Act-On REST Destination component.
    • ADP
      • New: We added support for "Codelists - Emp. Profile and Ben. Grps" endpoint in ADP REST Source component.
      • Update: The maximum batch size in ADP REST Source component is set to 100.
    • Facebook Business
      • New: We updated the API support to version v6.0.
      • New: Facebook Business REST Source/Destination component now supports using App Access Token.
      • Enhancement: Updated metadata.
    • Jira
      • Fixed: You may run into a BadGateway error in Jira REST Connection Manager when clicking the Generate Token button and the server URL does not end with "/".
      • Fixed: Jira REST Source component may fail with "System.ArgumentNullException: Value cannot be null. Parameter name: value" error when reading from Boards object while working with a Jira on-premises environment.
    • MailChimp
      • Enhancement: Better MailChimp metadata detection for the array of objects.
      • Fixed: You may run into error "The resource submitted could not be validated" in MailChimp REST Destination component when sending an empty string to a raw field with a batch size greater than 1.
    • Microsoft Teams
      • Enhancement: Updated metadata for the Chat Message object.
      • Update: We have updated some Microsoft Teams preview objects to use the Microsoft Graph REST v1.0 API.
    • MYOB
      • Enhancement: Updated metadata to support the Multi-location feature in AccountRight.
      • Fixed: Sending null values to MYOB to overwrite existing values may not work properly with Update action in MYOB REST Destination component.
    • Salesforce Pardot
      • New: We now support working with Salesforce Pardot custom fields that have Record and Display Multiple Response option enabled.
      • Fixed: Salesforce Pardot REST components may fail with an "Invalid API key or user key" error after the package has been running for over 30 minutes .
      • Fixed: Pagination in Salesforce Pardot REST Source component may not work properly with Campaign, List and Email Click objects.
      • Fixed: Salesforce Pardot REST Destination component might ignore the batch size setting when using Batch action with Prospect object.
    • ServiceNow
      • New: ServiceNow REST Connection Manager now supports specifying the service Base URL.
      • Update: We removed Instance Type from ServiceNow REST Connection Manager.
    • Shopify
      • New: We added support for cursor-based pagination in Shopify REST Source component to support version 2019-07 of the API and above.
      • New: We added support of using My Own App in Shopify REST Connection Manager for the Public App (OAuth) authentication mode.
      • Enhancement: Updated metadata.
    • Smartsheet
      • New: We added support of working with Smartsheet Gov Account.
      • New: We added a new Sheet object in Smartsheet Source/Destination component to work with existing sheets in a tabular format by discovering the metadata from the sheet.
      • New: We added a new Report object in Smartsheet Source component to read from existing reports in a tabular format by discovering the metadata from the report.
    • SurveyMonkey
      • New: SurveyMonkey REST Source component now supports outputting the survey response in a flatten format through the new "Get Survey Response Answers in Bulk" endpoint.
      • Fixed: SurveyMonkey Source component may not return any records in SSIS pipeline when reading Webhook object even there were records returned.
    • WordPress
      • New: We added support of working with WordPress.com hosting.
      • Fixed: WordPress REST Source component may crash when there is a problem with the connection.
      • Fixed: WordPress REST Destination component might ignore the batch size setting when working with WooCommerce objects.
    • Wunderlist
      • Deprecation: We have removed Wunderlist support.
    • Zendesk
      • New: We added support for Zendesk Help Center API.
      • New: We added Zendesk incremental export API support, which can be used to retrieve delta changes in Zendesk Support since a given datetime.
      • New: Zendesk REST Source component now supports retrieving Ticket Comments along with the associated Attachments when working with Tickets object.
      • New: Zendesk REST Source component now supports retrieving User Identities when working with Users object.
      • New: We added a sinceDateTime filter parameter to Ticket Audits object in Zendesk REST Source component, which can be used to retrieve ticket audits records relative to a given date.
      • Enhancement: Improved handling of retry on HTTP 429 errors.
  • Data Quality and Comparison
    • Fixed: Diff Detector/Duplicate Detector component may report duplicate column validation error on [ErrorCode] column when the input contains a column named "ErrorCode".
  • Data Warehousing
    • New: Snowflake Source/Destination component now outputs the Snowflake queryId in the error message.
    • Update: We removed the Region option from Snowflake Connection Manager, user needs to specify the full account name in the Account property. Existing Snowflake Connection Manager should upgrade smoothly.
  • Encryption and Compression Tasks
    • New: We added a "Compression Format" option in Compression Task component, which allows you to compress/decompress the file in Zip, Gzip and Deflate formats.
    • New: Compression Task now supports wildcard when performing Decompress Zip file action.
    • Fixed: PGP Task may work improperly when performing Decrypt action and the key ring contains multiple private keys.
  • Message Queue Components
    • New: We added a "Use MQCSP Authentication" option in IBM MQ Connection Manager.
    • Update: AMQP/RabbitMQ Connection Manager now uses certificate thumbprint to specify the SSL certificate instead of using the certificate subject.
    • Fixed: RabbitMQ Destination component may not close the connection properly during runtime when it is executed through SQL Server agent job.
  • Template Merge Components
    • Enhancement: Some UI drag drop improvement in WYSIWYG designer in HTML Merge component.
    • Fixed: HTML Merge component may work improperly when an image src path uses SSIS variables in.
    • Fixed: HTML Merge component may report duplicate column validation error on [ErrorCode] column when the input contains a column named "ErrorCode".
    • Fixed:HTML Merge component may work improperly when the input column or variable value contains HTML.
  • EDI Source Component
    • New: We added Error Handling support in EDI Source component to report Segment/Loop parsing errors.
    • Fixed: EDI Source component may output null values in the _ParentKeyFiled column when the parent output is not attached.
    • Fixed: You may receive a "System.NullReferenceException: Object reference not set to an instance of an object." error in EDI Source when working with some specific EDI files with "Flatten Loop Segments" option enabled.
    • Fixed: Importing an EDI file with repeated segments at the root level in EDI Source component may fail with a "There are multiple column nodes with the Data Name of 'xxx' underneath of the 'Root' output node" error.

Version 10.0 - October 3, 2019

This release comes with the following updates and enhancements:

  • New Components
    • Big Data
      • Hadoop Connection Manager
      • HDFS Source
      • HDFS Destination
      • Premium Data File Source
      • Premium Data File Destination
    • Cloud Storage
      • Azure Data Lake Storage Connection Manager
      • Azure Data Lake Storage Source
      • Azure Data Lake Storage Destination
    • Data Warehousing
      • Snowflake Connection Manager
      • Snowflake Source
      • Snowflake Destination
    • Message Queue
      • AMQP Connection Manager
      • AMQP Source
      • AMQP Destination
    • Miscellaneous Components
      • Value Mapping
    • NoSQL Components
      • CosmosDB Connection Manager
      • CosmosDB Source
      • CosmosDB Destination
    • Premium Data Flow Components
      • Premium Conversion
  • New Services in REST
    • Asana
    • Facebook Business
    • Infusionsoft
    • Microsoft Teams
    • MYOB
    • Twillio
    • Yammer
    • Zuora
  • [All] Enhancement: There are some updates to the License Manager program that provide better tracking of license installation and easier license management by our client services team.
  • [All] Enhancement: Improved Azure SSIS-IR licensing to avoid unexpected unsuccessful activations upon restart.
  • NoSQL Components
    • DynamoDB
      • Fixed: Amazon DynamoDB Source component may output empty JSON arrays values "[,,]" when reading from DynamoDB list type attribute and the list is a collection of maps.
      • Fixed: Amazon DynamoDB Destination component may not report error properly when performing Upsert/Delete action with a batch size greater than 1.
      • Fixed: Amazon DynamoDB Destination component did not report error when Error Handling set to "Fail on error".
    • MongoDB
      • New: We added Null Mode support in MongoDB Destination component, which can be used to specify how to handle NULL values.
      • Fixed: You may get "Index was outside the bounds of the array" error in MongoDB Destination component when writing to MongoDB _id field.
  • Cloud Storage
    • Box
      • Fixed: Box Connection Manager may crash when clicking on "Add User ID (In App)" button and the selected location had no existing tokens.
    • Amazon S3
      • New: We added support for multi-threaded file upload in Amazon S3 Connection Manager.
      • Fixed: You may get "SignatureDoesNotMatch. The request signature we calculated does not match the signature you provided" error when deploying package with Amazon S3 components.
    • Azure Blob Storage
      • Fixed: Azure Blob Storage may fail with "System.DivideByZeroException: Attempted to divide by zero." error when performing Create action to Append Blob object with a chunk size of 0.
      • Fixed: You may run into "The MAC signature found in the HTTP request '' is not the same as any computed signature" error in Azure Blob Storage Destination component when performing Delete action.
    • Dropbox
      • Update: We removed Authorize In App option in Dropbox Connection Manager.
    • Google Cloud Storage
      • Update: We added an option called "Upload Chunk Size" in Google Cloud Storage Connection Manager which helps the support of uploading large files.
      • Fixed: Google Cloud Storage Destination component may fail with "System.ArgumentException" error when writing to 'labels' field.
      • Fixed: Downloading Google Cloud Storage files using Premium File Transfer Task may not retain the original hierarchical structure.
    • OneDrive
      • New: We added an "Impersonate As" option in OneDrive Connection Manager for OneDrive for Business connections, which can be used to access other user's OneDrive for Office global admins.
      • New: We added support of using My Own App in OneDrive Connection Manager.
      • Enhancement: The OneDrive connection manager starts to use the Azure AD app and the Graph API once authorized in the new version, and it will be using a token file going forward for better security and portability. Existing connection manager should still function by using registry-based token and old API service endpoints, we do however recommend moving to the new token file option.
      • Update: We have updated our OneDrive components to use Microsoft Graph API for both OneDrive Personal and OneDrive Business connections.
      • Update: We have updated our KingswaySoft OAuth app to Azure AD app.
      • Update: We now use token files to save OneDrive tokens.
      • Fixed: You may get a validation error "Please select a file" in Premium Flat File/Premium Excel components when selecting an OneDrive SharedWithMe file.
  • Message Queue
    • IBM MQ
      • Fixed: You may get NULLReference exception when testing connection in IBM MQ Connection Manager if the authorized user doesn't have a password.
    • Azure Service Bus
      • New: Azure Service Bus Source component now supports specifying a maximum number of messages to retrieve messages.
    • Amazon SQS
      • New: We added support of Change Message Visibility action in Amazon SQS Destination component.
      • Fixed: Amazon SQS Source component may output expired ReceiptHandle value if the message was retrieved more than once.
      • Fixed: Extend Automatically option in Amazon SQS Source was not working properly.
      • Fixed: Amazon SQS Destination component may fail sending MessageDeduplicationId if the input column is non-string type when sending messages.
      • Fixed: Amazon SQS Destination component may send empty message body if the Body Column Type is set to Text when performing Send Message action.
  • Premium Data Flow Components
    • Premium Excel
      • New: We added support for Excel 2019 in Premium Excel components.
      • New: Premium Excel Source/Destination component now supports working with hyperlinks.
      • New: We added formatting support in Premium Excel Destination component.
      • New: We added support of specifying sheet name in Premium Excel Destination component, the component will create the sheet if the specified sheet name not exist in the target file.
      • Fixed: Premium Excel Source component did not save the column data type changes when using "Start Row" for the column names.
    • Premium Slowly Changing Dimension
      • New: Premium Slowly Changing Dimension component now supports writing to a Snowflake table directly through a Snowflake Connection Manager.
      • Fixed: Premium Slowly Changing Dimension component may report "System.ArgumentNullException: Value cannot be null. Parameter name: key" error if the component was executed from an SSIS Execute Package Task.
    • Premium Lookup
      • Fixed: You may run into error "NullReferenceException: Object reference not set to an instance of an object" when using fuzzy match with special match types in Premium Lookup component.
      • Fixed: You may get "Generic.KeyNotFoundException" error in Premium Lookup component when using fuzzy match with special match types and the Lookup table is empty.
    • Premium ADO.NET
      • New: We added Implicit Transaction Type support in Premium ADO.NET Source/Destination component.
      • New: Premium ADO.NET Destination component now supports using a permanent temporary table when performing Bulk Update/Upsert/Delete and Full Sync actions.
      • Enhancement: Significantly performance improvement with the writing actions in Premium ADO.NET Destination component in non-bulk mode.
      • Enhancement: Performance enhancement in Premium ADO.NET Destination component when no output attached while performing Bulk Update/Upsert/Delete and Full Sync actions.
      • Fixed: You may run into "[DB2/NT64] SQL0104N An unexpected token "[" was found following "SELECT * FROM "." error in Premium ADO.NET components when loading DB2 metadata with DB2 OLEDB provider.
    • Premium Derived Column
      • New: We added the following functions in Premium Derived Column component: JoinStringArray(), EscapeUriDataString(), UnescapeUriDataString(), FormContentUrlEncode(), FormContentUrlDecode(), Sleep().
      • New: We added format string support in string cast functions: DT_WSTR, DT_STR, DT_TEXT, DT_NTEXT.
      • New: (DT_BOOL) cast function now supports more string values (case insensitive): "y", "n", "yes", "no", "t", "f".
      • Enhancement: Better data length detection for functions with static results.
      • Fixed: Milliseconds works improperly in DateTime functions, you may get 0 for function DatePart( "ms", GETDATE() ).
      • Fixed: Casting DT_DBTIMESTAMPOFFSET data types in Premium Derived Column may fail with "Unable to cast object of type 'System.DateTimeOffset' to type 'System.IConvertible'" error for expressions like (DT_DBDATE)[DateTimeOffset].
  • REST
    • New: We added an Expand Fields feature in REST Source component, which can be used to select additional outputs or fields from the returned object from the server.
    • New: We have updated the child outputs name in REST Source component to a name foramt of "{parent_output_name} -> {child_output_name}", so that the output names will be shown in a hierarchical tree structure in SSIS. This change should be considered as a breaking change, as a prior version (v9.0 or earlier) would not be able to open or process an SSIS package saved by the new version.
    • New: We have introduced a new token file format when using OAuth authentications in REST Connection Manager when working with Act-On, MailChimp, ServiceNow, Smartsheet, Square, Zendesk services. The new token file is json formatted and only has the sensitive information encrypted, a prior version (v9.0 or earlier) of Productivity Pack would not be able to open or process the new format token file.
    • New: Various UI enhancements.
    • ServiceNow
      • New: We added support for _attachment object in ServiceNow REST Source component by utilizing ServiceNow Attachment API.
      • New: ServiceNow REST Destination component now supports working with system fields by setting sysparm_suppress_auto_sys_field value accordingly.
      • Enhancement: We have improved the quality of metadata in ServiceNow REST components to support extend tables.
      • Enhancement: Better metadata detection to support Delete actions for ServiceNow objects in REST Destination component.
      • Fixed: You may find "[SSIS.Pipeline] Error: No object exists with the ID -1." error in SSIS Execution Results when executing a ServiceNow REST Source component.
    • Slack
      • Fixed: You may get error "Unexpected character encountered while parsing value: [. Path 'definitions.objs_user_profile.properties.fields.type'" when getting Slack metadata in Slack REST component.
    • Zendesk
      • New: We added support of downloading attachment content when working with Attachment object in Zendesk REST Source component.
      • New: We added comment.uploads field to Ticket object when performing Update action in Zendesk REST Destination component, which can be used to attaching files to ticket.
      • New: Upload Attachment action in Zendesk REST Destination component now supports outputting _AttachmentToken in its default output.
    • Trello:
      • New:We added support of downloading attachment content when working with Attachment object in Trello REST Source component.
      • New: Reading from Action and Card objects in Trello REST Source component now supports pagination.
    • Square
      • Enhancement: Updated metadata.
      • Update: We have updated our KingswaySoft Square OAuth app to the latest API version.
    • ADP
      • New: We added a Mask Data option in ADP REST Source component, which can be used to get unmasked sensitive data from ADP.
      • Fixed: ADP REST Source component may report NullReferenceException error when reading from workers with pagination.
  • HTTP/Web Services
    • New: We added Preview support in HTTP Requester Task and Web Service Task components.
    • New: HTTP Requester component now supports working with HTTP Multipart response.
    • New: We added a new option called ThrottlingRateUnit in HTTP Connection Manager.
    • New: We addes support of compressing the request body by specifying a Content-Encoding header in HTTP Connection Manager.
    • New: We have added the ability to remove the Accept-Encoding header from requests by adding Accept-Encoding as a default custom header in the HTTP Connection Manager
    • New: You can now use SSIS variables in the Input Parameters grid in Web Service Source component and Web Service Task.
    • New: Web Service Destination component now supports output response columns from the WSDL file.
    • New: We added a "Field Expansion Depth" option in Web Service components (Source, Destination and Task).
    • New: The HTTP connection manager now supports selecting a list of pre-defined HTTP headers.
    • New: We have introduced a new token file format in HTTP Connection Manager when using OAuth authentications, the new token file is json formatted and only has the sensitive information encrypted. A prior version (v9.0 or earlier) of Productivity Pack would not be able to open or process the new format token file.
    • Enhancement: Better metadata detection when importing WSDL in Web Service components.
    • Update: We updated the default HTTP Method to POST in Web Service Task component.
    • Update: We removed Export Settings button in the OAuth Token Generator. Token file created in the new format will be used as the settings file as well. Settings file created in a prior version (v9.0 or earlier) of Productivity Pack continues to work when importing in the OAuth Token Generator.
    • Fixed: Web Service Source and Web Service Task components may not show any input parameters if the selected operation in the WSDL file has no input columns.
    • Fixed: You may get error "Unable to cast object of type 'System.Xml.XmlElement' to type 'System.Web.Services.Description.ServiceDescriptionFormatExtension'" in Web Service components when importing some specific WSDL files.
    • Fixed: Web Service Destination may output NULL ResponseBody value if RequestBody column is not enabled.
    • Fixed: HTTP Requester component may report error "Stream was not readable" when 'ResponseBodyError' column is enabled in Error Output and the corresponding error response has an empty body.
  • JSON & XML Processing
    • New: We introduced a new Document Designer in JSON/XML components, which supports more complex structure of the JSON/XML file. This change should be considered as a breaking change, as a prior version (v9.0 or earlier) would not be able to open or process an SSIS package saved by the new version.
    • New: We added format string support in JSON/XML Merge/Destination component.
    • New: We added encoding support in JSON Extract/Merge component.
    • Enhancement: Significantly performance improvement when working with large JSON/XML files in JSON/XML components.
    • Enhancement: Better memory usage when processing large JSON/XML files in JSON/XML components.
    • Update: JSON/XML Source/Extract component no longer output the raw _json and _xml fields, packages designed using these _json and _xml columns need to be updated to remove using them.
    • Fixed: You may get NULLReferenceException in XML Extract/Source component when the imported XML file has no schemaLocation defined.
  • Premium File Pack
    • SFTP
      • New: Key authentication Method in SFTP Connection Manager now supports specifying password.
      • Fixed: You may run into "Channel closed" error when using Streamed Download to download files from SFTP server.
    • Premium Flat File
      • New: We added decompress/compress the file support in Premium Flat File Source/Destination component.
      • New: We added format string support in Premium Flat File Destination component.
      • New: We added support of specifying Text Qualifier at the columns level in Premium Flat File Destination component, the default option is 'Auto'.
      • Enhancement: More efficient memory usage when working with large files whether on cloud or on premise.
      • Fixed: Premium Flat File Destination component may not respect the system locale setting when writing datetime values.
      • Fixed: Premium Flat File Source component may output 0 rows when Row Filter "Skip Last Rows" is used.
    • Premium File Transfer Task
      • Fixed: Premium File Transfer Task may report "The item already exists" error when performing Send Files action to a cloud storage service while the source file doesn't exist at the specified destination path.
  • Data Generation and Anonymization
    • New: We have added the following new spawn/anonymization types to the Data Spawner and Data Anonymizer components: Name Prefix, Name Suffix.
    • Fixed: Data Spawner/Anonymizer may generate duplicate Firstname and Lastname pairs when using Person entity with a seed.
    • Fixed: You may get random State value in Data Spawner/Anonymizer with a specific Country setting when the State column is part of an Address entity.
  • Data Quality and Comparison
    • Enhancement: Some code refactoring for better performance in Diff Detector component when the Business Key field uses exact First Name Match.
  • Google Services
    • New: We added Google Service Account authentication support in all Google Connection Managers and Google Token Manager.
    • New: We added support of specifying redirect_url when using "My Own" authentication type mode in all Google Connection Managers and Google Token Manager.
    • New: We added Authorize In Browser support in all Google Connection Managers and Google Token Manager.
    • Fixed: You may get "invalid request" error in Google components after the access token is expired.
    • Google Big Query
      • Fixed: Google BigQuery Destination component may fail inserting TableData if the input column value contains new line characters.
      • Fixed: Table drop-down list in Google BigQuery component may not list all tables if the specified dataset has more than 50 tables
  • Encryption and Compression Tasks
    • New: We added support for specifying Key Size when generation PGP key pairs in PGP Task.
    • Fixed: PGP Task may fail with "System.Exception: exception decrypting secret key" error when decrpting a file and the a key ring contains multiple private keys.

Version 9.0 - February 21, 2019

This release comes with the following updates and enhancements:

  • [All] New: We have added support for SQL Server 2019.
  • [All] Enhancement: Various UI enhancements and performance improvements.
  • [All] Deprecation: We removed support for SQL Server 2005.
  • Cloud Storage
    • New: We added the following new components:
      • Google Cloud Storage Connection Manager
      • Google Cloud Storage Source
      • Google Cloud Storage Destination
  • REST
    • New: We have added the following services to REST components:
      • ADP
      • PayPal
      • Salesforce Pardot
      • ServiceNow
      • Shopify
      • Smartsheet
      • Stripe
      • Trello
      • WordPress/WooCommerce
      • Wunderlist
    • New: You can now search for objects & endpoints in the REST source and destination components
    • Enhancement: We have added icons to help distinguish REST services when selecting a service from the REST Connection Manager editor, or select and Connection Manager from the REST Source or Destination component editors.
    • Enhancement: We have improved error messages during failed authentication in Jira REST components.
    • Enhancement: We have improved the quality of metadata in Zendesk REST components.
    • Enhancement: We have improved the quality of metadata in Freshdesk REST components.
  • HTTP, JSON, XML, Web Service
    • New: We have added the ability to define HTTP error codes and set them as retryable or not retryable in the HTTP Connection Manager.
    • New: We have added the ability to remove the Expect: 100-continue header from requests by manually specifying it in the HTTP connection manager
    • New: We added support for more HTTP related additional output columns in JSON and XML Destination components.
    • New: We added support for specifying static values underneath array nodes in JSON Merge and Destination components.
    • New: We have added a ‘Qualified Output Names’ checkbox to the JSON Extract, JSON Source, XML Extract, and XML Source components. This will make sure output names are unique when importing documents
    • New: JSON Extract and Source components now support importing JSON Schema documents.
    • New: We have added the ability to import YAML files into JSON Extract and Source Components
    • Enhancement: JSON and XML Extract components now pass through upstream columns to the root output.
    • Enhancement: We have made headers case insensitive when working with HTTP components (e.g. JSON Destination) and the ‘GetValueFromPreviousResponseHeaders’ function
    • Enhancement: We have improved the error message when errors occur during expression evaluation in JSON Source, JSON Extract, XML Source, and XML Extract components.
    • Enhancement: We have improved the ability to parse different types of WSDL files in Web Service Components.
    • Enhancement: Web Service Source components can now send valueless parameters.
    • Enhancement: The JSON Source, JSON Extract, XML Source, and XML Extract components now support more than 1 logical root output.
    • Fixed: The JSON Source, JSON Extract, XML Source, and XML Extract components may not have correctly generated outputs when importing settings.
    • Fixed: The JSON Source, JSON Extract, XML Source, and XML Extract components may have failed if executed in optimized mode and not all outputs were attached.
    • Fixed: The XML Extract component may have failed if input XML was NULL.
  • Premium ADO.NET
    • New: We added support for Transaction Isolation Level in the Premium ADO.NET Source and Destination components.
    • New: We added support for Pre and Post commands in Premium ADO.NET Destination component.
    • Enhancement: The Premium ADO.NET Destination component now maintains the scale of DateTime2 fields over a SQL client connection manager.
    • Deprecation: We have removed the Identity Insert option in the Premium ADO.NET Destination component because we now handle it internally as needed.
  • Data Spawner/Anonymizer
    • New: We have added the following new spawn/anonymization types to the Data Spawner and Data Anonymizer components:
      • Address Line 1
      • Address Line 2
      • Country (ISO Alpha 2)
      • Country (ISO Alpha 3)
      • Country (ISO Numeric)
      • Credit Card CVV
      • Credit Card Number
      • Credit Card Type
      • Email (Business)
      • Email (Personal)
      • Facebook URL
      • Gender
      • Identification Number
      • Regex
      • State/Province
      • State/Province Abbreviation
      • Static Value
      • Street Name
      • Twitter Url
      • Zip/Postal Code
    • New: We have added support for specifying a random seed at the column level for both the Data Spawner and Data Anonymizer components.
    • New: We have added the ability to generate connected data in the Data Spawner and Data Anonymizer components via Entities.
    • Enhancement: We have added expression support for anonymization type specific custom properties. (e.g. MinYear and MaxYear properties for the Date Time anonymization type).
    • Deprecation: We have removed the following spawn/anonymization types from the Data Spawner and Data Anonymizer components because they have been replaced with better ones:
      • CountryAbbreviated
      • Email
      • StreetAddress
      • UkCountry
      • UkPostalCode
      • UsState
      • UsStateAbbreviated
      • ZipCode
  • Premium Derived Column
    • New: We have added support for comments (both single and multi-line) in Premium Derived Column expressions.
    • Enhancement: We now maintain line breaks and whitespace in Premium Derived Column expressions.
    • Fixed: Your Premium Derived Column component may have failed if one of the expressions was using a string function that contained a NULL parameter.
  • Message Queue
    • New: We have added throttling to Rabbit MQ connection managers.
    • New: We have added SSL support to IBM MQ connection managers.
  • MongoDB
    • New: We have added the ability to control how to handle UUID fields by specifying the BinData subtype (3 or 4) in the MongoDB Connection Manager.
    • Fixed: Your MongoDB source component may have returned NULL for multi-level (dot-delimited) fields.
  • Premium File Pack
    • New: We have added the ability to preserve timestamps when sending files in the Premium File Transfer Task over supported Connection Managers.
    • New: We have added row filtering options in the Premium Flat File Source component.
  • SFTP/FTPS
    • New: We have added the ability to output the log in the SFTP Connection Manager.
    • New: We have added the ‘Transfer Type’ option in the FTPS Connection Manager.
    • New: We have added support for logging in the FTPS Connection Manager.
  • PGP
    • New: We have added the ability to rename files after being decrypted in PGP Tasks.

Version 8.1 - August 17, 2018

This release comes with the following updates and enhancements:

  • New: We added the following new components:
    • REST Components
      • REST Connection Manager
      • REST Source
      • REST Destination
    • Message Queue Components
      • Amazon SQS Connection Manager
      • Amazon SQS Source
      • Amazon SQS Destination
    • Google Services
      • Google Ads Connection Manager
  • New: We added the following services to REST components:
    • Act-On
    • Constant Contact
    • Freshdesk
    • Jira
    • MailChimp
    • Slack
    • Square
    • SugarCRM
    • SurveyMonkey
    • Zendesk
  • New: OAuth Token Generator now supports OAuth 1 authentication type.
  • New: We added a Lookup feature in Premium ADO.NET Destination component.
  • New: We added a new option called "Prevent Null Overwrite" in Premium ADO.NET Destination component, which can be used to ignore any fields that have a null value. By ignoring a field, the null value will not be sent to the target table.
  • New: We added MongoDB change streams support in MongoDB Source component.
  • New: We added 7 new functions to the Premium Derived Column component, which provide support computing HMAC.
  • New: HTTP Requester data flow component now supports getting custom response header values.
  • New: We added a new option called "Row Delimiter" in Premium Flat File Source/Destination components, which can be used to correctly parse files with rows.
  • New: Premium Excel Destination component now supports create the file/sheet at the specified location when the file/sheet does not exist.
  • New: We added support for "Orphaned Children Error Output" output in the JSON/XML Merge/Destination component. This is a breaking change, as a prior version (v7.1 or earlier) would not be able to process an SSIS package that contains a JSON/XML Merge/Destination component with the "Orphaned Children Error Output" output enabled.
  • New: We added Google Analytics v4 API support in Google Analytics components. This is a breaking change, as a prior version (v7.1 or earlier) would not be able to process an SSIS package that contains a Google Analytics Connection Manager using v4 API version.
  • New: Fuzzy Match in Premium Lookup component now supports token based match algorithm.
  • New: We added a new option called Host Key Algorithm in SFTP Connection Manager, which can be used to set preferred host key (server key) algorithm.
  • New: We added an Encoding option in SFTP Connection Manager which can be used to decode the file system information on an SFTP server.
  • New: We added a Use Streamed Download option in SFTP Connection Manager which can be used to download large files from an SFTP server.
  • New: We added a new spawn type/anonymization type called "CountryAbbreviated" in Data Spawner/Data Anonymizer components, which can be used to generate country abbreviation values.
  • New: Email spawn type/anonymization type in Data Spawner/Data Anonymizer component now supports providing a static domain value.
  • Enhancement: We have updated the license manager program to now report details of distinct connections in use.
  • Enhancement: Improved UI performance with select/unselect all output columns in Premium Lookup component.
  • Enhancement: Some code refactoring for better performance with a large number of lookup rows in Premium Lookup component.
  • Update: JSON Source component no longer fails when the service call response is empty.
  • Update: We updated the default report version to v201806 for Google Ads/AdWords Connection Manager.
  • Update: The performance of JSON/XML Destination/Merge components can be significantly improved by sorting the link key columns in the upstream.
  • Fixed: Our software may report a connection metering related error during runtime for some specific system environments.
  • Fixed: Retry on Intermittent Errors option in HTTP Connection Manager may not work properly.
  • Fixed: You may run into "Stream was too long" error when downloading a large file (>10G) from SFTP server using Premium File Transfer Task.
  • Fixed: Premium File Transfer Task may report UnauthorizedAccess exception when downloading files from a read-only permission network sharing folder.
  • Fixed: PGP Task may fail encrypting file when the encryption key did not have a "publickey user ID".
  • Fixed: You may get error "Value cannot be null. Parameter name: bytes" when using POST/DELETE/PUT/PATCH method in HTTP Requester Task component without providing a request body.
  • Fixed: You may run into OutOfMemory error in Premium Lookup component when performing fuzzy match with a large number of lookup rows and the lookup data contains empty string values.
  • Fixed: Premium Lookup component may report "System.ArgumentOutOfRangeException" error when using a non-string type column as the matching key.
  • Fixed: Premium Excel Source component may report "File does not exist" error when using Box Connection Manager with a valid source file path.
  • Fixed: You may run into "Folder does not exist" error in Premium Flat File Destination component when using Box Connection Manager with a valid destination file path.
  • Fixed: You may get "startIndex cannot be larger than length of string" error in OneDrive Destination component when writing to root directory.
  • Fixed: Premium ADO.NET Destination component using Update or Upsert action may fail with error "Incorrect syntax near 'W'" when the component was created by version 4.0 or earlier and upgraded to v7.1.
  • Fixed: You may get "Invalid column name" error in Premium ADO.NET Destination component when Bulk reporting outputs are enabled while performing Bulk Update/Upsert/Delete and Full Sync actions with column name contains special characters like "-".
  • Fixed: Premium ADO.NET Destination component may drop the time part of the input datetime value when writing to Oracle DATE type field.
  • Fixed: HTML Merge component may generate "Microsoft.SqlServer.Dts.Pipeline.BlobColumn" value in the merged document when input column is DT_NTEXT/DT_TEXT type.
  • Fixed: Google Analytics Source component may drop the millionseconds information when retrieving custom datetime dimension value.
  • Fixed: Opening Analytics View dialog in Google Analytics Source component may crash Visual Studio in a very unique situation when the Google Analytics account has no web properties under the account.
  • Fixed: Google Sheet Source component may crash if the specified sheet id does not exist.

Version 7.1 - June 1, 2018

This release comes with the following updates and enhancements:

  • New: We added Full Sync action support in Premium ADO.NET Destination component, which can be used to synchronize table data when working with Sqlclient Data Provider and Oracle Data Provider for .NET.
  • New: We added a Command Timeout option in Premium ADO.NET Destination component.
  • New: We added a Batch Size property in Premium ADO.NET Destination component, which can be used to specify how many records you want to send to the target database at a time when option "Use Bulk" is enabled.
  • New: We added a Duplicate Handling option in Premium ADO.NET Destination component, which can be used to specify how input duplicates should be handled when "Use Bulk" option is enabled on Update/Upsert/Delete/Full Sync actions
  • New: Premium Slowly Changing Dimension component now supports writing to target database table directly through an ADO.NET connection.
  • New: OAuth Token Generator component now supports OAuth 2.0 JWT authentication flow.
  • New: We added Client Credentials grant type support in OAuth Token Generator.
  • New: We added Country Match support in Diff Detector, Duplicate Detector and Premium Lookup components, which can be used to match English short country name with country code according to ISO 3166-1 standard.
  • New: We added US State Match support in Diff Detector, Duplicate Detector and Premium Lookup components, which can be used to match Canada and United States subdivision names with codes according to ISO 3166-2 standard.
  • New: We added a FileContent spawn/anonymization type in Data Spawner/Data Anonymizer, which can be used to generate random binary column data based on files stored in a provided folder.
  • Enhancement: Improved UI performance with select/unselect all columns in Data Spawner component.
  • Enhancement: Premium Lookup now supports comparing numeric keys of different data types.
  • Enhancement: Grant Type in OAuth Token Generator component now accepts type-in values.
  • Enhancement: Automatically paired fields in Diff Detector component now default to Exact Match match type.
  • Update: Bulk option in Premium ADO.NET Destination component when using Update/Upsert/Delete action with Sqlclient Data Provider now has 3 default outputs: Bulk Reporting Output - Deleted Records, Bulk Reporting Output - Inserted Records, and Bulk Reporting Output - Updated Records. This change should be considered as a breaking change, as a prior version (v7.0 or earlier) would not be able to open or process an SSIS package saved by the new version.
  • Update: When an email fails to process in Email Source component, the component now reports error log information in SSIS execution result instead of failing the component.
  • Fixed: Premium ADO.NET Destination may report pre-execution error "Invalid object name 'xxx'." when destination table name contains "." (dot).
  • Fixed: "Use Identity Insert" may work improperly when writing to a SQL table using "Use Bulk" in Premium ADO NET destination component.
  • Fixed: You may get "Could not find Access Token" error when creating a new OneDrive Connection Manager.
  • Fixed: Duplicate Detector may work improperly when performing First Name/Company Name Match and options "Ignore Case" and "Ignore Leading and Trailing White Spaces" are disabled.
  • Fixed: You may run into "Value cannot be null. Parameter name: source" error when querying Google BigQuery table data using Google BigQuery Source component and the source command returns 0 rows.
  • Fixed: Test Connection in HTTP Connection Manager may remove "access_token" query parameter which is added manually in Base URL for non-oauth authentication types.
  • Fixed: JSON Source/Extract component may output numeric values incorrectly when local system format setting uses "," (comma) as the decimal symbol.
  • Fixed: Premium Derived Column component may output "Microsoft.SqlServer.Dts.Pipeline.BlobColumn" value when casting a null DT_NTEXT value to DT_WSTR/DT_STR.
  • Fixed: You may get error "System.IO.IOException: The process cannot access the file because it is being used by another process." when uploading local files to Box using Premium File Transfer Task with option "Delete Item From Source Upon Completion" enabled.

Version 7.0 - April 26, 2018

This release comes with the following updates and enhancements:

  • New: We added the following new components:
    • Cloud Storage
      • Box Connection Manager
      • Box Source
      • Box Destination
    • Data Quality and Comparison
      • Address Verification Connection Manager
      • Address Verification
    • Google Services
      • Google BigQuery Connection Manager
      • Google BigQuery Source
      • Google BigQuery Destination
    • Miscellaneous Components
      • EDI Source
  • New: We added support for Azure-SSIS Integration Runtime (IR) deployment and licensing.
  • New: Standard use licensing model, this limits the number of distinct connections to 8 per connection type within a 24 hour period at runtime.
  • New: We added a new spawn type/anonymization type called "RandomString" in Data Spawner/Data Anonymizer component, which can be used to generate random strings.
  • New: We added a new spawn type/anonymization type called "IncrementalValue" in Data Spawner/Data Anonymizer component, which can be used to generate incremental numbers.
  • New: We added Move Column and Clone Column capabilities in Data Spawner component.
  • New: We added ZipCode format support in Data Spawner and Data Anonymizer components.
  • New: We added spawn order support for Custom type in Data Spawner and Data Anonymizer components.
  • New: We added a new option called "Decimal Places" for numeric types in Data Spawner and Data Anonymizer components, which can be used to control the decimal places for the spawned/anonymized number.
  • New: OAuth Token Generator now supports specifying additional Request Header when requesting a token from a service.
  • New: We added Password grant type support in OAuth 2 Token Generator.
  • New: We added a "Custom" Access Token location option in HTTP Connection Manager when OAuth2 authentication mode is selected, so that OAuth access token can now be inserted in any location of the HTTP requests in whichever way needed for Web Service, and JSON/XML Source/Destination components.
  • New: Testing connection in HTTP Connection Manager now reports Request Duration, which can be used for some preliminary benchmarking.
  • New: We added PATCH method support in HTTP/Web Services components.
  • New: HTTP Requester data flow component now supports outputting HttpStatusCode, HttpStatusCodeName and HttpResponseUrl in default output.
  • New: We added optional Request Body and Response Body fields to the Default Output of Web Service Destination component.
  • New: XML Source component and Destination component now support importing XML structure and columns from WSDL files.
  • New: We added a Bucket option in Amazon S3 Connection Manager, which can be used to specify a particular S3 bucket to work with.
  • New: We added Fixed Width text file support in Premium Flat File Source and Destination components.
  • New: We added a "Delete Item From Source Upon Completion" option in Premium File Transfer Task, which can be used to delete the source items when file transfer is completed.
  • New: We added OneDrive shared files support in OneDrive components.
  • New: We added a new option called "Keep Alive Interval" in SFTP Conenction Manager, which can be used to send empty packets to SFTP server periodically to prevent the connection from being closed by the server.
  • New: We added two logging related options to SFTP connection manager, so you can now specify a log file to write to, and the log level that is needed.
  • New: We added a new option to the Azure Service Bus connection manager - IgnoreCertificateErrors, which can be used to ignore any SSL certificate errors.
  • New: We added "Add Wrapping Root Node" option in JSON Merge and JSON Destination components, which can be used to generate more JSON structures.
  • New: We added a RemoveDiacriticalMarks method to the Premium Derived Column component which can be used to remove some special language accents.
  • New: We added multi-select support using keyboard in JSON/XML Destination/Merge components, so you can drag and move within the document structure, including the support of Delete to delete all selected nodes in one key stroke.
  • New: Web Service Task and Web Service components now provide a dialog to help enter SOAP headers with ease through a popup window.
  • New: MSMQ, RabbitMQ and Azure Service Bus components now support reading/writing binary message data directly.
  • New: Azure Service Bus components now support encoding for text messages.
  • New: We added a new "Retry on Intermittent Errors" option in Azure Service Bus Connection Manager.
  • New: We added a new "Ignore Certificate Errors" option in Azure Service Bus Connection Manager, which can be used to ignore any SSL certificate errors.
  • Enhancement: We added command line support for Google Token Manager program.
  • Enhancement: We added command line support for OneDrive Token Manager program.
  • Enhancement: Better bulk action support in Premium ADO.NET Destination component to avoid potential SQL Server merge concurrency issues.
  • Enhancement: More robust support for complex WSDL files in Web Services components.
  • Enhancement: More robust support for different string type parameters in WSDL files in Web Service components.
  • Enhancement: Better length detection for certain spawn types in Data Spawner component.
  • Enhancement: Improved UI performance when loading table metadata in Premium ADO.NET components.
  • Enhancement: We improved the error handling when incoming full path is invalid in Amazon S3 Destination component.
  • Update: We introduced some new metadata and options to the Google Analytics source component, it now supports any date range. This change should be considered as a breaking change, as a prior version (v6.1 or earlier) would not be able to open or process an SSIS package saved by the new version.
  • Update: Premium ADO.NET components now prompt a message when columns are not supported due to their data types.
  • Update: Premium ADO.NET components now exclude those system table schemas from being retrieved when working with Oracle.
  • Update: HTTP Method in HTTP/Web Services components now accepts type-in values.
  • Update: Web Service components now list the namespaces specified in the WSDL file.
  • Update: Premium File Transfer Task now creates the directory path when sending a file to a path that does not exist in local file system.
  • Update: We surfaced some additional advanced SFTP settings in SFTP Connection Manager UI, which used to be only available in its Properties window in v6.1.
  • Update: We updated the default report version to v201802 for Google AdWords connection manager.
  • 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 as of today (April 26, 2018).
  • Fixed: Data Anonymizer component did not overwrite input values when working with DT_NTEXT and DT_TEXT fields.
  • Fixed: For some special WSDL files, the Web Service Task component might create a request message with invalid namespace prefixes which may not be properly processed by the service on the server side.
  • Fixed: JSON Destination component may report "Http response body is invalid JSON" error when the service call response is empty.
  • Fixed: You may get "One or more of the passed properties are invalid" error when selecting "None" as Encryption Algorithm in MSMQ Destination component.
  • Fixed: The mappings in Data Profiler component may get mixed when reopening an existing package. This fix is a breaking change, as a prior version (v6.1 or earlier) would not be able to process an SSIS package that contains a Data Profiler component saved in new versions.
  • Fixed: The column mappings in JSON/XML Destination/Merge component may get mixed when reopening an existing package. This fix is a breaking change, as a prior version (v6.1 or earlier) would not be able to process an SSIS package that contains a JSON/XML Destination/Merge component saved in new versions.
  • Fixed: Test Connection in HTTP Conenction Manager may add duplicate access_token query parameters in the request URL when using Put Access Token In Query String option with OAuth2 authentication type.
  • Fixed: Some UI issues in JSON/XML Destination/Merge component when expanding/collapsing nodes in Input Columns design page.
  • Fixed: You may get error "Unexpected character while parsing path indexer: n" when hierarchy grandparent and parent outputs are unchecked in JSON/XML Extract/Source components.
  • Fixed: JSON/XML components may report error "Invalid Expression: Invalid character" when SSIS parameter is used in the expressions.
  • Fixed: Encoded value "%2F" in URL may get decoded when using HTTP/Web Service components.
  • Fixed: Web Service components may throw error "Index was out of range. Must be non-negative and less than the size of the collection" when a selected field is an array but the input is empty.
  • Fixed: Some web service endpoints might report a "Couldn't create SOAP message" error when the Web Service component is built upon a SOAP version 1.2 WSDL file.
  • Fixed: Premium Excel Destination component may write DT_TEXT or DT_NTEXT input string values incorrectly.
  • Fixed: Premium Excel Destination component may ignore the "First Row has Column Name" setting under "Clear and write new" mode.
  • Fixed: Amazon DynamoDB Destination component may write DT_TEXT or DT_NTEXT input string values incorrectly.
  • Fixed: You may run into "The given key was not present in the dictionary" error when using SSIS parameter or SSIS varaible in Text Merge mode in XML Destination component.
  • Fixed: JSON/XML Destination component may still process the action for 0 incoming rows.
  • Fixed: JSON Destination component may not parse response properly when the response is an array of objects.
  • Fixed: Premium Flat File Source component may report error "The MaxBufferSize must be greater than 0" when upgrading to a recent version.
  • Fixed: In some particular situation, you may run into error "Connection Closed" when downloading files from SFTP server.
  • Fixed: You may get "Invalid Request" error when you have a Premium File Transfter task to upload files to OneDrive, and the component is immediately followed by a data flow task that contains an OneDrive destination component which write to the exactly same files using the same connection.
  • Fixed: You may get error "SqlCommand.Prepare method requires all variable length parameters to have an explicitly set non-zero Size" when writing to SQL datetimeoffset type column using Premium ADO NET Destination component.
  • Fixed: Premium ADO NET Destination component tries to retrieve table schemas when opening an exsiting configured component.
  • Fixed: You may run into "Insufficient memory to continue the execution of the program" error when using EncodeBase64() function in Premium Derived Column component to process some large binary contents.
  • Fixed: You may receive a "The given key was not present in the dictionary" error when comparing strings contain extended Latin characters in Duplicate Detector component.
  • Fixed: Diff Detector/Premium Lookup component may find unmatch for spaces and NULL values when advanced comparison settings "Ignore All WhiteSpaces" and "Treat Empty String as Null" enabled.
  • Fixed: You may get error "The value specified for the input parameter, 'parameters_data_type', is not valid" when deploying package with RabbitMQ components.
  • Fixed: You may run into "OutOfMemoryException" when reading files in a recursive fashion using Premium File System Source component.
  • Fixed: Premium File System Source component may not read file contents properly for some files in some special situations.
  • Fixed: API Throttling Rate may work improperly in HTTP Connection Manager.
  • Fixed: Files may get transferred to incorrect location when using Premium File Transfer Task to download files from Amazon S3.
  • Fixed: Files may get transferred to incorrect location when using Premium File Transfer Task to download files from Azure Blob Storage.

Version 6.1 - December 22, 2017

This release comes with the following updates and enhancements:

  • New: We added 6 new functions to the Premium Derived Column component, which provide support for various character escaping and unescaping.
  • New: We added a Service Endpoint option in the Azure Service Bus Connection Manager which can be used to specify an alternate URI instead of the default one when working with Azure Service Bus.
  • Enhancement: Some more high-DPI support improvements.
  • Enhancement: Diff Detector now supports comparing numeric keys of different data types.
  • Fixed: You may get error "Implicit conversion from data type sql_variant is not allowed" when using SSIS variable in Premium ADO.NET Source component.
  • Fixed: Premium ADO NET destination may find no match when using a datetime type field as the matching key.
  • Fixed: You may run into "String was not valid DateTime" error when working with Premium ADO.NET Destination component for some special locale regions.
  • Fixed: The text mode in the XML destination component's expression editor did not work properly.

Version 6.0 - December 14, 2017

This release comes with the following updates and enhancements:

  • New: We added the following new components:
    • Cloud Storage
      • Azure Blob Storage Connection Manager
      • Azure Blob Storage Source
      • Azure Blob Storage Destination
    • Data Quality and Comparison
      • Data Profiler
    • Google Services
      • Google Sheets Connection Manager
      • Google Sheets Source
      • Google Sheets Destination
  • New: Premium ADO NET Destination component now supports Bulk Update/Upsert/Delete actions with SQL and Oracle databases.
  • New: Premium ADO NET Destination component now supports Custom Command action.
  • New: We added a Create Table button in Premium ADO NET Destination component that can be used to create a new table with a default CREATE TABLE statement based on input column metadata.
  • New: Premium Flat File Source/Destination component now support Amazon S3 Connection Manager.
  • New: We added support of allowing duplicate keys in both Old Data and New Data inputs in Diff Detector component, the corresponding options are "Allow Duplicate Keys in Old Data" and "Allow Duplicate Keys in New Data" in the Advanced Settings page.
  • New: OAuth Token Generator now supports specifying the path within the HTTP response (JPath) received to obtain access_token, refresh_token, and expiry.
  • New: JSON Destination and XML Destination now support upload byte array content.
  • New: We added a new comparison option "Treat Empty String as Null" in both Diff Detector and Duplicate Detector components.
  • New: Web Service components now support working with repeating elements.
  • New: We added an option called "Upload Chunk Size" in OneDrive Connection Manager which helps the support of uploading large files.
  • New: PGP Task now supports working with GPG files.
  • New: We added support for cloud storage connections (OneDrive, Dropbox, SharePoint, SFTP, FTPS, and potentially more in the future) in Premium Excel components.
  • New: Google Analytics Source component supports getting specific goals.
  • New: We added column/field filtering capabilities in Cassandra Source component and Premium Flat File Source component.
  • New: We added new functions in Premium Derived Column to convert between DateTime and Unix timestamps called DateTimeToUnixTimeStamp() and UnixTimeStampToDateTime().
  • New: We added new functions in Premium Derived Column to format numbers and datetimes as strings called NumberToString() and DateTimeToString().
  • New: We added new functions in Premium Derived Column to replace nested conditionals called IfElse() and SwitchCase().
  • New: We added a new function in Premium Derived Column to get the line count of a file called ReadLineCount().
  • Enhancement: ReadTextContent() function in Premium Derived Column now supports additional parameters to get specific lines of a file.
  • Enhancement: Premium Derived Column has more accurate design time validation and data type detection when using static values.
  • Enhancement: Commands in Premium ADO.NET Source and Premium ADO.NET Destination components are now parameterized and prepared once before the execution.
  • Enhancement: More robust SSL certificate handling in HTTP Connection Manager, RabbitMQ Connection Manager, Cassandra Connection Manager, MongoDB Connection Manager, and FTPS Connection Manager.
  • Enhancement: Improved detection of SOAP versions in Web Service components.
  • Enhancement: More robust usage of XML namespaces in Web Service components.
  • Enhancement: More detailed reporting when error occurs in Premium Excel Source component.
  • Fixed: You may run into "An item with the same key has already been added" error when using non-string type columns as business key in Diff Detector.
  • Fixed: Premium ADO.NET Source component reported InvalidOperationException error when opening the Preview window.
  • Fixed: You may have trouble opening a Premium ADO.NET Source component when you have a sensitive SSIS parameter specified in the package.
  • Fixed: We fixed the automatic truncation of decimal numbers in the Premium ADO.NET Source component.
  • Fixed: Google Analytics Source component did not save the data type changes made to columns within the Columns page.
  • Fixed: Google Analytics Source component ignored the segment setting but always inputting the "New Visitor" segment.
  • Fixed: When option "Expire Current Dimension Records not found in New Source" is enabled, Premium Slowly Changing Dimension component would expire rows already in the expired state.
  • Update: Update of licensing component to better support servers within a clustered environment to minimize potential false licensing errors.

Version 5.0 - October 6, 2017

This release comes with the following updates and enhancements:

  • New: We added the following new components:
    • Cloud Storage
      • Amazon S3 Connection Manager
      • Amazon S3 Source
      • Amazon S3 Destination
    • JSON & XML Processing
      • HTML Table Source
    • Message Queue Components
      • IBM MQ Connection Manager
      • IBM MQ Source
      • IBM MQ Destination
    • Google Services
      • Google AdWords Connection Manager
      • Google AdWords Source
  • 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.
  • New: We added Web Services Addressing (WS-Addressing) support in Web Service components.
  • New: We added an option called "SOAP Version" in Web Service components, which can be used to specify the SOAP version used by the Web Services.
  • New: We added a button called "Add From WSDL" in Custom SOAP Headers page in Web Service components, which supports loading SOAP headers from the WSDL file.
  • New: Web Service Source component now supports paging.
  • New: We have added an "Export Settings" button in JSON/XML Source component and Destination component, which can be used to export the configurations.
  • New: We have added an "Import Settings" button in JSON/XML Source component and Destination component, which can be used to import the configurations.
  • New: We added "Client Id" and "Client Secret" options in Google Analytics connection manager, which allows to use your own application to authorize.
  • New: We added a new option to the FTPS connection manager - IgnoreCertificateErrors, which can be used to ignore any SSL certificate errors.
  • New: We added a new function in Premium Derived Column called RegexFindMatch().
  • New: We added a new function in Premium Derived Column called StripHTMLTags().
  • New: Duplicate Detector now supports Fuzzy Match and Advanced Comparison Options on business key fields.
  • Enhancement: Design nodes can now be reordered in JSON Merge, JSON Destination, XML Merge, and XML Destination
  • Enhancement: Premium ADO.NET components connecting to Azure will reconnect and continue execution after a TCP timeout occurs.
  • Enhancement: More robust support for complex WSDL files in Web Services components
  • Enhancement: Added a new Authentication mode to HTTP Connection Manager: Basic Authentication which adds basic authentication headers to HTTP requests.
  • Enhancement: Test Connection in HTTP Connection Manager allows every part of a test http request to be customized, and all parts of the response can be viewed to determine if the test was successful.
  • Fixed: At run time throttle rate can be higher or lower than the rate that was actually set in the HTTP Connection Manager
  • Fixed: HTTP Connection Manager editor can crash in rare situations.
  • Fixed: HTTP Request components may ignore the HTTP Method setting.
  • Fixed: HTTP Requester incorrectly retrieves content length.
  • Fixed: You may get FormatException if you have unselected the _JSON field from outputting in JSON Source component.
  • Fixed: Replace an input DT_NTEXT type column may not work properly in Premium Derived Column component.
  • Fixed: Token() function in Premium Derived Column may work improperly to get the last token.
  • Fixed: You might get "The given key was not present in the dictionary" error when using Fuzzy Match in Duplicate Detector component.
  • Fixed: Client certificate was always required when SSL is enabled in MongoDB Connection Manager.
  • Fixed: You may run into "Incorrect syntax near 'SE'" error when all fields are selected as key fields in Premium ADO.NET Destination component with Update/Upsert action.
  • Fixed: You may get incomplete results when perform large load to Excel file using Premium Excel Destination component.
  • Fixed: You might run into error "One or more of the passed properties are invalid" when sending messages to MSMQ using MSMQ Destination component in some special situations.
  • Fixed: You may get "Bad Request" error when Edit Account Information in Dropbox Connection Manager.
  • Fixed: You may run into error "Permission Denied" when using Premium Transfer Task to work with SFTP server.
  • Fixed: Some updates to the licensing component.

Version 4.0 - July 7, 2017

This release comes with the following updates and enhancements:

  • New: We added support for SQL Server 2017.
  • New: We added the following new components:
    • Premium Data Flow Components
      • Excel Connection Manager
      • Premium Excel Source
      • Premium Excel Destination
    • Data Pack and Unpack
      • JSON Source
      • JSON Destination
      • OAuth Token Manager
      • XML Source
      • XML Destination
    • NoSQL Components
      • Cassandra Connection Manager
      • Cassandra Source Component
      • Cassandra Destination Component
      • DynamoDB Connection Manager
      • DynamoDB Source Component
      • DynamoDB Destination Component
    • Miscellaneous Components
      • Google Analytics Connection Manager
      • Google Analytics Source Component
      • Google Analytics Token Manager
  • New: We added Shared Mailbox and Impersonation support in Email Connection Manager, which is available for Exchange Web Services protocol connection to allow you to access to a shared mailbox or "act as" different user.
  • New: We added DB2 data provider support in ADO.NET source and destination components.
  • New: We added a Connectivity Mode option in Azure Service Bus Connection Manager, which can be used to specify the underlying wire-level protocol used to communicate with Service Bus.
  • New: We added Match Type support in Diff Detector component. This is a breaking change, as a prior version (v3.0 or earlier) would not be able to process an SSIS package that contains a Diff Detector component with "Match Type".
  • New: We added a Default to DT_WSTR option in Premium Flat File source component, which can be used to determine whether applying SSIS type DT_WSTR to all string type columns or using DT_STR with corresponding code page for string columns.
  • New: OneDrive connection manager now supports listing existing tokens.
  • New: We added HTTP Method support in Web Service and HTTP components.
  • Enhancement: Performance enhancement when loading a large number of columns at design time in Diff Detector.
  • Enhancement: Performance enhancement when loading a large number of columns at design time in Premium Slowly Changing Dimension.
  • Updated: We hid some Premium ADO.NET components' properties from listing in the Propertities window. This is a breaking change, as any packages will be automatically upgraded, and the package will not work with a prior version once the upgrade is done.
  • Updated: We have updated the XML node types in XML Extract component to support repeating elements. This is a breaking change, and we automatically upgrade when the component is opened, which may not be compatible with prior versions.
  • Updated: We have removed the HTTP Method property in HTTP Connection Manager and add HTTP Method support at component level.
  • Fixed: You may lose Local File connection manager in Premium File System components.
  • Fixed: The FileContent field in Premium File System components was using data type 'ntext'.
  • Fixed: The Premium ADO.NET components may fail to get schema information for ODBC connections.
  • Fixed: The Diff Detector may not work properly when performing string comparison.
  • Fixed: The output results can be incorrect if the target dimension table has no currrent data when using Premium Slowly Changing Dimension.
  • Fixed: You may get InvalidCastException error when using DT_IMAGE type columns for comparison in Premium Lookup Component.
  • Fixed: Functions Substring(), HexToBytes(), HexToString() were using test value for validation in Premium Derived Column.
  • Fixed: JSON Extract component has trouble working with a JSON document contains special characters in the JSON name.
  • Fixed: Unselected columns at root level might still get merged in JSON Merge and XML Merge components.
  • Fixed: Web Service components failed to load WSDL file when a contained XSD file is inaccessible.
  • Fixed: Premium File Transfer Task component may hang when uploading large files (>3GB) to SFTP/FTPS server.
  • 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 3.0 - March 15, 2017

This release comes with the following updates and enhancements:

  • New: We added support for MSMQ, RabbitMQ, and MongoDB connections in SSIS Productivity Pack which come with the the following nine new components:
    • Message Queue Components
      • MSMQ Connection Manager
      • MSMQ Source Component
      • MSMQ Destination Component
      • RabbitMQ Connection Manager
      • RabbitMQ Source Component
      • RabbitMQ Destination Component
    • NoSQL Components
      • MongoDB Connection Manager
      • MongoDB Source Component
      • MongoDB Destination Component
  • New: SSIS Integration Toolkit for Microsoft OneDrive and SSIS Integration Toolkit for Dropbox are now included in the SSIS Productivity Pack adding an additional 6 SSIS components as well as a token manager utility for OneDrive. For release notes prior please see the Dropbox Change Log or the Microsoft OneDrive Change Log.
    • Dropbox Connection Manager
    • Dropbox Source Component
    • Dropbox Destination Component
    • OneDrive Connection Manager
    • OneDrive Source Component
    • OneDrive Destination Component
    • OneDrive Token Manager
  • Other changes have been made to the following components:
    • New: We added an option called "Use Identity Insert" in ADO.NET destination component, which can be used to allows explicit values to be inserted into the identity column of a SQL table.
    • New: We added support for custom Email header fields in Email source component, which can be added as needed in its editor window.
    • New: "Expand All" and "Collapse All" support have been added in XML Extract and JSON Extract components.
    • New: We added a ProxyMode option to HTTP connection manager, Dropbox connection manager and OneDrive connection manager, which now supports three types of proxy mode: No Proxy, Auto-detect and Manual.
    • Enhancement: We added a few more properties to SFTP Connection Manager and FTPS Connection Manager, which can be used to improve the performance when uploading/downloading files to/from SFTP and FTPS servers.
    • Update: We changed the default output column name to "DetectedChangeType" in Premium Slowly Changing Dimension (This basically introduces a new SSIS metadata, which is considered as a breaking change - as any packages will be automatically upgraded, and the package will not work with a prior version once the upgrade is done).
    • Update: Some minor UI adjustments including renaming "Lookup Type" to "Match Type" in General page of Premium Lookup component.
    • Fixed: Some UI displaying issues under high DPI settings have been fixed.
    • Fixed: HTTP Connection Manager may not authenticate properly.
    • Fixed: The Auto Detect function for surrogate key in Premium Slowly Changing Dimension may not work correctly when the target dimension table is empty.
    • Fixed: In some special case, you may get "The given key was not present in the dictionary" error when using Diff Detector component.
    • Fixed: You may run into "System.ArgumentOutOfRangeException: Index was out of range" error when using Premium Lookup component in some unique situations.
    • Fixed: When removing columns in Unmatched Rows Output in Premium Lookup component, you may get the following error: 'ColumnIndexOutOfRange'.
    • Fixed: XML Merge and JSON Merge components always output the root matching key value even when the field is unchecked.
  • Update: We have an updated license agreement.

Version 2.0 - January 27, 2017

This release comes with the following updates and enhancements:

  • New: The following ten components have been added to the SSIS Productivity Pack:
    • Premium Data Flow Components
      • Premium Lookup
      • Premium Slowly Changing Dimension
    • Azure Service Bus
      • Azure Service Bus Connection Manager
      • Azure Service Bus Source Component
      • Azure Service Bus Destination Component
    • Data Pack and Unpack components
      • XML Merge
      • XML Extract
      • JSON Merge
      • JSON Extract
    • Miscellaneous Components
      • Time Zone Conversion
  • New : The Premium File Pack is now part of the SSIS Productivity Pack with 2 new components (Premium File System Source and Destination) adding an additional 6 components in total to the SSIS Productivity Pack:
    • FTPS Connection Manager
    • SFTP Connection Manager
    • Premium File System Source
    • Premium File System Destination
    • Premium Flat File Source
    • Premium Flat File Destination
    • Premium File Transfer Task
    • Release notes for the Premium File Pack below, for release notes prior to v2.0 please see the Premium File Pack release note archive page.
      • New: We added a new data flow component called Premium File System Source component, which can be used to read / retrieve data from a File System including SFTP, FTPS connections.
      • New: We added a new data flow component called Premium File System Destination component, which can be used to write data to a File System including SFTP, FTPS connections .
      • Enhancement: Some code refactoring for better performance when writing to local flat files.
      • Fixed: Premium Flat File source component does not allow rename column name shorter than 7 characters.
      • Fixed: Premium Flat File source component does not allow rename unselected column.
      • Fixed: Premium Flat File source component may return 0 instead of null for number type columns.
      • Fixed: You might run into error when importing external columns contain datatype DT_TEXT or DT_NUMERIC (Thanks to Henrik for reporting this).
      • Fixed: The ConnectionString property of SFTP connection manager and FTPS connection manager cannot be parameterized.
      • Fixed: The item may not get fully overwritten using Premium File Transfer Task send files to local system when "Overwrite Existing Items" option is enabled.
  • The following changes have been made to Diff Detector component:
    • New: We changed the inputs name to "New Data" and "Old Data" for clarity purpose.
    • New: We added options to enable both new data columns and old data columns to the Changed Rows output in Diff Detector component.
    • Enhancement: We added support for column level similarity threshold configuration.
    • Enhancement: Performance enhancement when loading a large number of columns at design time.
  • The following changes have been made to Premium Derived Column component:
    • Fixed: The length detection might be incorrect when using conditional function in Premium Derived Column component.
    • Fixed: The WriteValueToVariable function does not accept using DT_NTEXT type value as its input.
    • Fixed: The LEFT and RIGHT functions were using test value for validation.
    • Fixed: The Premium Derived Column returns empty value for escaped quote value "/"".
    • Fixed: You may get "Invalid expression error" when using Type Cast expressions.
  • Other changes have been made to the following components:
    • New: We added a Batch Size option in Email source component, which is available for Exchange Web Services protocal connections to allow you to specify how many records you want to retrieve each time.
    • Enhancement: Some minor UI adjustments including positioning "Generate New Key Pair" button to the bottom in PGP Task component.
    • Update: We changed the default chunk size value to 0 in HTTP Connection Manager.
    • Update: We removed the typing function in SMTP destination component.
    • Fixed: Data Spawner source component may return 0 instead of null for number type columns.
    • Fixed: In some special case, you may get "Error reading JArray from JsonReader. Path" error when sending emails using SMTP Task component.

Version 1.0 - October 24, 2016

This is our first official release of SSIS Productivity Pack.

  • Support for SSIS 2016, 2014, 2012, 2008R2, 2008, or 2005
  • Twenty-Three components
    • Data Generation and Anonymization
      • Data Anonymizer
      • Data Spawner
    • Data Quality and Comparison
      • Diff Detector
      • Duplicate Detector
    • Encryption and Compression Tasks
      • Compression Task
      • PGP Encryption Task
    • Template Merge
      • HTML Merge
      • Text Merge
    • Premium Data Flow Components
      • Premium Derived Column
      • Premium ADO.NET Source
      • Premium ADO.NET Destination
    • Email Components
      • Email Connection Manager
      • Email Source Component
      • SMTP Connection Manager
      • SMTP Destination Component
      • SMTP Task
    • HTTP/Web Service Components
      • HTTP Connection Manager
      • HTTP Requester
      • HTTP Requester Task
      • Web Service Source Component
      • Web Service Destination Component
      • Web Service Task Component
    • Other Task Components
      • Timer Task