Progress DataDirect for ODBC for Salesforce

      An asterisk (*) indicates support that was added in a hotfix or software patch subsequent to a release

    Refer to the following resources for additional information:

    • Product Compatibility Guide: Provides the latest data source and platform support information. 
    • Fixes: Describes the issues resolved since general availability.  

    Version 8.0.0

    Enhancements
    • The driver is now compiled with a Visual Studio 2022 compiler for the Windows platforms. As a result, you must have Microsoft Visual C/C++ runtime version 14.40.33810 or higher on your machine to run the driver.
    • The driver has been enhanced to support JSON web token (JWT) grant authentication. Refer to Configuring the driver to use OAuth 2.0 with JWT grant for details. This upgrade is available starting in the build 08.00.0892.*
    • On Windows platforms, the driver includes an enhanced setup dialog, the Progress DataDirect Salesforce Configuration Manager, for quick configuration and testing of your driver in a web browser. The tool allows you to:
      • Configure data sources
      • Generate and edit connection strings
      • Test connect data sources and connection strings
      • Execute SQL commands for testing
      • Access connection option descriptions and the full product documentation
      For details, refer to Generating connection strings with the Configuration Manager and Testing connections and queries with the Configuration Manager. This upgrade is available starting in the build 08.00.0892.*
    • For AIX platforms, the ICU library files that are installed with the product have been upgraded to version 74.1. As a part of this upgrade, the ICU library file names have changed. For the 32-bit driver, the ICU file name has changed from libivicu28.a to libivicu.a. For the 64-bit driver, the ICU file name has changed from libddicu28.a to libddicu.a. This upgrade does not apply to the other UNIX platforms. This upgrade is available starting in build 08.02.1072 of the ICU library files.*
    • For Windows platforms, the ICU library files that are installed with the product have been upgraded to version 74.1. As a part of this upgrade, the ICU library file names have changed. For the 32-bit driver, the ICU file name has changed from ivicu28.dll to ivicu.dll. For the 64-bit driver, the ICU file name has changed from ddicu28.dll to ddicu.dll. This upgrade is available starting in build 08.02.1072 of the ICU library files.*
    • For Linux platforms, the ICU library files that are installed with the product have been upgraded to version 74.1. In addition, the ICU library file names have changed for Linux platforms. For the 32-bit driver on Linux, the ICU file name has changed from libivicu28.so to libivicu.so. For the 64-bit driver on Linux, the ICU file name has changed from libddicu28.so to libddicu.so. This upgrade does not apply to UNIX platforms. This upgrade is available starting in build 08.02.0965 of the ICU library files.*
    • The installer program has been enhanced to support Azul Zulu JRE 11. As a result of this change, the installer has ended support for platforms that do not support Java SE 8 or higher. The installer supports the following operating systems after the enhancement:
      • Windows 8.1 or higher
      • Windows Server 2012 RC2 or higher
      • UNIX/Linux: Any operating system on a machine using a JRE that is Java SE 8 or higher (LTS version), including Oracle JDK, OpenJDK, and IBM SDK (Java) distributions.
      • Important: These changes do not affect the operating system requirements of the driver.*

    • The driver has been enhanced to support the Salesforce Bulk API V2 for bulk load operations. This functionality can be enabled and configured using the new Bulk Load Version and Bulk Load Job Size connection options.* Refer to Bulk tab for details.
    • The driver has been enhanced to support the Apply ToLabel connection option. This option determines whether the driver applies the toLabel() function to the picklist fields when executing queries.* Refer to Apply ToLabel for details.
    • A Password Encryption Tool, called ddencpwd, is now included with the product package. It encrypts passwords for secure handling in connection strings and odbc.ini files. At connection, the driver decrypts these passwords and passes them to the data source as required. See Password Encryption Tool (UNIX/Linux only) for details.*
    • The drivers using base version B0649 and later have been enhanced to include timestamp in the internal packet logs by default. If you want to disable the timestamp logging in packet logs, set PacketLoggingOptions=1. The internal packet logging is not enabled by default. To enable it, set EnablePacketLogging=1.*
    • yes, no, on and off have been added as valid values for the connection options that accept boolean values.*
    • The Driver Manager for UNIX/Linux has been enhanced to support setting the Unicode encoding type for applications on a per connection basis. By passing a value for the SQL_ATTR_APP_UNICODE_TYPE attribute using SQLSetConnectAttr, your application can specify the encoding at connection. This allows your application to pass both UTF-8 and UTF-16 encoded strings with a single environment handle.*
      The valid values for the SQL_ATTR_APP_UNICODE_TYPE attribute are SQL_DD_CP_UTF8 and SQL_DD_CP_UTF16. The default value is SQL_DD_CP_UTF8.
      This enhancement is available in build 08.02.0449 of the driver manager.
    • The driver has been enhanced to support OAuth 2.0, which is an open protocol for token-based authentication. OAuth 2.0 allows you to authenticate without specifying a user ID or password, eliminating the risk of exposing them to unauthorized access.* Refer to Configuring OAuth 2.0 authentication for details.
    • The driver has been enhanced to support the Salesforce Bulk API, including PK chunking, for bulk fetch operations. This functionality can be enabled and configured with the Enable Bulk Fetch, Bulk Fetch Threshold, Enable Primary Key Chunking, and Primary Key Chunk Size connection options. Refer to Summary of options for using the Bulk API with SQL statements for details.
    • The driver has been enhanced to support multiple simultaneous sessions. This allows the driver to scale performance by distributing the workload across multiple sessions. The number of active sessions should not exceed the number permitted by your Salesforce account and can be limited by the setting of the new WS Pool Size connection option. Refer to WSPoolSize for details.
    • The following Refresh Map SQL extension has been added to the driver. REFRESH MAP discovers native objects that have been added to the native data store since connection or since the last refresh and maps the objects into your relational view of native data. It also incorporates any configuration changes made to your relational view by reloading the schema map and associated files. Refer to Refresh Map (EXT) for details.
    • The SQL Engine Mode connection option now supports Auto mode. When this setting is enabled, the driver automatically determines whether the SQL engine runs in server or direct mode based on availability. In addition, the default value for the SQL Engine Mode connection option on Windows has been updated to 0 (Auto). Refer to SQL Engine Mode for details.
    • The driver is now compiled using Visual Studio 2015 for improved security.
    • The driver includes a new Tableau data source file (Windows only) that provides improved functionality when accessing your Salesforce data with Tableau. Refer to Accessing data in Tableau (Windows only) for details.
    • The driver and Driver Manager have been enhanced to support UTF-8 encoding in the odbc.ini and odbcinst.ini files. Refer to Character encoding in the odbc.ini and odbcinst.ini files for details.
    Changed Behavior
    • The installer program now requires you to install a JRE that is Java SE 11 or higher before running the installer. In earlier versions, the JRE used by the installer program was included in the product. However, to avoid potential security vulnerabilities, the installer program no longer includes a JRE. Instead, the installer program uses the JRE in your environment to allow for the most secure version of a JRE to be used.

      Notes:

      • This change does not affect the JVM requirements for the driver. For the latest driver requirements, refer to the Product Compatibility Guide.
      • The installer program cannot remove the already installed JRE files from the install directory automatically. Remove them manually.
      • To install the 32-bit drivers on 64-bit Windows platforms and start the SQL engine service, the installer requires the 32-bit version of Java SE 11 or higher installed on your machine and defined on your path.
    • The product package no longer includes the ODBC Cursor library file (odbccurs.so) because it has some known security vulnerabilities that could potentially expose you to security risks.*
      Note: The installer program cannot remove the ODBC Cursor library file automatically while installing a new version of the driver. Remove it manually.
    • The driver updates string values in an existing DSN to number values when the Configuration Manager is used to update the Authentication Method connection option. The following updates occur:
      • The string value oauth2.0 is updated to 24
      • The string value userIDPassword is updated to 0
    • When existing DSNs are updated using the Configuration Manager, the boolean values of "0" and "1" are converted to "true" and "false" for relevant connection options.
    • The installer program has been updated to no longer install common components for drivers that do not use them. As a result, the installer program no longer installs the following common components for the Salesforce driver:*
      • OpenSSL library files, such as ivopenssl30.so, ddopenssl30.so, fips.so, and openssl.cnf.
      • Curl library files, such as libivcurl28.so and libddcurl28.so.

      If the files are not used by any other DataDirect driver on your machine, you can safely remove them from existing product directories.

    • The driver has been enhanced to make SOAP API calls using only internal components. In earlier versions, the driver used an external library, the CXF library, to make these calls. Note that the product package no longer includes the CXF library as a result.*
    • The configuration options have been deprecated. However, the driver will continue to support them until the next major release of the driver when they will be added back as connection options.*
    • The driver has been updated to require a Java Virtual Machine (JVM) that is Java SE 8 or higher, including Oracle JDK, OpenJDK, and IBM SDK (Java) distributions.* Refer to for Driver requirements details.
    • The precision for the Integer data type has been changed from 10 to 9.*
    • The NUM_PREC_RADIX value for the Double data type has been changed from 10 to 2.*
    • In addition to the information listed here, refer to the compatability FAQ for guidance on upgrading from the Progress DataDirect for ODBC for Salesforce 7.1 driver to the 8.0 driver.
    • The driver’s SQL engine was upgraded for this release. Consequently, there are differences in how the driver handles some SQL queries. Refer to this SQL engine upgrade document for details.
    • The 8.0 driver pushes queries to Salesforce whenever possible. Queries that cannot be pushed to Salesforce with the 8.0 driver may be slower than comparable queries made with earlier versions of the driver because data may be paged to disk while completing an operation. If you experience slow performance, please contact Technical Support. Our team will quickly address any performance issues you encounter.
    • Bulk load operations are no longer restricted to 10,000 rows for evaluation installations of the driver.
    • The native CURRENCY and PERCENTAGE data types now map to the DECIMAL JDBC data type. In earlier releases, these data types mapped to the DOUBLE data type. Refer to Data types for details.
    • The Database connection option has been replaced by the new Schema Map option. Similar to Database, Schema Map is used to specify the name and location of the configuration file where the relational map of native data is written; however, there are changes to the file name format and default behavior. The Database attribute will continue to be supported for this release, but it will be deprecated in subsequent versions of the product. Refer to Schema Map for details.
    • The Create Database connection option has been replaced by the new Create Map option. The CreateDB attribute will continue to be supported for this release, but it will be deprecated in subsequent versions of the product. Refer to Create Map for details.
    • The Logon Domain connection option has been deprecated. As a result, the User Name option has been updated to accept the user name and domain. Refer to User Name for details.
    • The Refresh Dirty Cache option has been deprecated. Now, for every fetch operation, the driver refreshes the cached object to pick up changes made to tables and rows.
    • The Server DB Directory connection option has been deprecated. To specify the location of database files, use the Schema Map connection option. Refer to Schema Map for details.
    • The default value for the Server Port Number connection option has been updated:
      • For the 32-bit driver, the default is 19938.
      • For the 64-bit driver, the default is 19937.
    • The default value for the JVM Arguments connection option has been updated:
      • For the 32-bit driver when the SQL Engine Mode connection option is set to 2 (Direct): Xmx256m
      • For all other configurations: Xmx1024m
    • The default value of the Enable Bulk Load connection option has been updated to 1 (enabled). By default, the bulk load protocol is used for inserts, updates, and deletes when the size of the operation exceeds the threshold determined by the Bulk Load Threshold option. Refer to Enable Bulk Load for details.
    • The default value for the Statement Call Limit connection option has been updated to 100. By default, the driver can make a maximum of 100 Web service calls when executing any single SQL statement or metadata query. Refer to Statement Call Limit for details.
    • The default value for the AuditColumns config option has been updated to All (AuditColumns=All). By default, the driver includes the all of the audit columns and the master record id column in its table definitions. Refer to AuditColumns (Config Option) for details.
    • The default value for the CustomSuffix config option has been updated to Include (CustomSuffix=Include). By default, the driver includes the "__c" suffix table and column names when mapping the remote data model to the relational data model. Refer to Custom Suffix (Config Option) for details.
    • The default value for the MapSystemColumnNames config option has been updated to 0 (MapSystemColumnNames=0). By default, the driver does not change the names of the Salesforce system columns when mapping them to the relational model. Refer to Map System Column Names (Config Option) for details.
    • The short attribute name for the Config Options connection option has changed from CO to CFGO. Refer to Config Options for details.
    • The Security tab has been removed from the setup dialog. As a result:
      • The Security Token connection option has been moved to the General tab.
      • The User Name connection option has been moved to the General tab.
    Notes, Known Issues, and Limitations
    • The driver does not support specifying values for the same connection option multiple times in a connection string or DSN. If a value is specified using the same attribute multiple times or using both long and short attributes, the connection may fail or the driver may not behave as intended.
    • When Salesforce Bulk API version is set to V2, the driver does not support INSERT INTO SELECT statements and an exception is thrown. For example:
      Insert into TestTable(COL_1,COL_2,COL_3) select COL_1,COL_2,COL_3 from TempTable
    • Stored procedures are not supported when connected to database.com using the Salesforce driver. However, the Salesforce driver incorrectly returns a response to SQLGetInfo(..., SQL_PROCEDURES, ...) to indicate that stored procedures are supported when connected to database.com.
    • The SELECT...INTO statement is supported for local tables only. The source and destination tables must both be local tables. Creating remote tables in Salesforce or loading from remote Salesforce tables using SELECT...INTO is not supported. Additionally, the option to create the destination table as a temporary table does not currently work.
    • You may receive a 126 error when adding or configuring a data source stored on a network location. This is caused by the settings of the User Account Control (UAC) security feature on Windows 10. To work around this issue:
      1. From the Start menu, type regedit in the search field; then, select regedit from the results list. The Registry Editor window opens.
      2. Navigate to the following registry subkey:
        HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
      3. Right click on the subkey; then, select New > DWORD Value.
      4. Rename the new value EnableLinkedConnections.
      5. Right-click EnableLinkedConnections, and then click Modify. The Edit DWORD Value window opens.
      6. In the Value data field, type 1. Click OK.
      7. Close the Registry Editor; then, restart your computer.
      Important: Implementing this fix disables security safeguards that are designed to protect your machine. Before starting, refer to the following Microsoft documentation for potential risks associated with disabling the UAC feature: http://windows.microsoft.com/en-us/windows/what-are-user-account-control-settings
    • When trying to connect to a database using SSL encryption, you may receive an error message similar to: "PRNG not seeded". This is because certain versions of some operating systems do not generate truly random numbers necessary for encryption. For more information about this error and available patches, please refer to the Web site:
      http://www.openssl.org/support/faq.html#USER1
      On SUSE Linux Enterprise Server 10.0, attempts by the drivers to connect using SSL Encryption will not succeed due to a problem loading the SSL libraries.
    • All of the Release 8.0 Core Components (header files, etc.) needed for development of ODBC applications on UNIX and Linux are installed into the /include directory created by the product installer.
      Please read the notices.txt file in the installation directory for licensing information regarding the ODBC Core Components. Contact your Progress DataDirect representative if you have any questions.
      Developers using programming languages other than C++: The DataDirect ODBC Driver Manager is a C++ shared library. The ODBC Driver Manager can be used with any language that supports loading a C++ shared library; however, if you are using a programming language other than C++, you must take additional steps to ensure that the C++ libraries are initialized properly when loaded. If you are not using C++, consult your compiler documentation for instructions on using C++ shared libraries with your application.
    • The DataDirect ODBC Driver Manager is a C++ shared library. The ODBC Driver Manager can be used with any language that supports loading a C++ shared library; however, if you are using a programming language other than C++, you must take additional steps to ensure that the C++ libraries are initialized properly when loaded. If you are not using C++, consult your compiler documentation for instructions on using C++ shared libraries with your application.
    • A default installation of the product on UNIX and Linux assumes that the value of the LANG environment setting is en_US. If your locale is not set to en_US, the drivers may not return error messages properly. In this case, you must create a symbolic link in the <Install_Dir>/locale directory that has the same value as the LANG environment setting. This link must point to the <Install_Dir>/locale/en_US directory.
    • The column attributes 1001 and 1002, which were assigned as DataDirect-specific attributes, were inadvertently used as system attributes by the Microsoft 3.0 ODBC implementation. Applications using those attributes must now use 1901 and 1902, respectively.
    • Because of inconsistencies in the ODBC specification, users attempting to use SQL_C_NUMERIC parameters must set the precision and scale values of the corresponding structure and the descriptor fields in the Application Parameter Descriptor.
    • One of the most common connectivity issues encountered while using IIS (Microsoft's Internet Information Server) concerns the use and settings of the account permissions. If you encounter problems using DataDirect drivers with an IIS server, refer to KnowledgeBase document number 4274 on the Progress DataDirect web site:
      http://knowledgebase.datadirect.com.
    • Some IBM AIX C compilers, such as xlc 3.1.4, do not support the use of C++ build binaries. C developers on AIX should consult their compiler documentation and verify that their AIX C compiler supports the use of C++ shared libraries or the application could be unstable.

    Version 7.1.6

    No features introduced 

    Version 7.1.5

    No features introduced 

    Version 7.1.4

    No features introduced 

    Version 7.1.3

    No features introduced

    Version 7.1.2

    No features introduced 

    Version 7.1.1

    No features introduced 

    Version 7.1.0

    Enhancements
    • The RefreshSchema option determines whether the driver automatically refreshes the remote object mapping and other information contained in a remote schema the first time a user connects to the specified embedded database.
    • The KeywordConflictSuffix keyword=value pair specifies a string of up to
      five alphanumeric characters that the driver appends to any object or field name that conflicts with a SQL engine keyword. For example, if you specify KeywordConflictSuffix=TAB, then the driver maps the Case object in Salesforce to CASETAB.

Connect any application to any data source anywhere

Explore all DataDirect Connectors

A product specialist will be glad to get in touch with you

Contact Us