Microsoft Dynamics 365 ODBC 8.0.0 Linux
- Last Updated: May 8, 2026
- 12 minute read
- OpenAccess SDK
- Documentation
README
Progress(R) DataDirect(R)
Progress(R) DataDirect(R) for ODBC for Microsoft Dynamics 365(TM)
Linux Platforms (32- and 64-bit)
Release 8.0.0
February 2026
***********************************************************************
Copyright (C) 2026 Progress Software Corporation and/or its
subsidiaries or affiliates. All Rights Reserved.
***********************************************************************
This README file contains information for Progress(R) DataDirect(R)
for ODBC for Microsoft Dynamics 365(TM).
This README file contains information not included in the PROGRESS
DATADIRECT(R) FOR ODBC FOR MICROSOFT DYNAMICS 365(TM) DRIVER USER'S GUIDE.
CONTENTS
Post-GA Product Announcements
Requirements
Installation Directory
Data Source and Platform Support
Changes Since 8.0.0 GA
Release 8.0.0 Features
Configuring Data Sources
Notes, Known Problems, and Restrictions
Driver WorkAround Options
Documentation
Installed Files for 32-bit Drivers
Installed Files for 64-bit Drivers
Post-GA Product Announcements
The readme files will no longer be updated with product announcements and new
features after the General Availability (GA) of the product. For the latest
updates and enhancements, please refer to the release notes
(https://www.progress.com/datadirect-connectors/whats-new).
Requirements
The readme file will no longer be updated with product announcements and
new features after the General Availability (GA) of the driver. For the
latest updates and enhancements, please refer to the release notes
(https://www.progress.com/datadirect-connectors/whats-new).
Data Source and Platform Support
For the latest data source and platform support information, refer to the
Product Compatibility Guide:
https://docs.progress.com/bundle/datadirect-product-compatibility/resource/
datadirect-product-compatibility.pdf
Changes Since 8.0.0 GA
CVE-2022-41853 - Use of Externally-Controlled Input to Select Classes or Code
('Unsafe Reflection')
-----------------------------------------------------------------------------
Several Progress DataDirect ODBC drivers utilized a version of HyperSQL
Database that was vulnerable to remote code execution described in
CVE-2022-41853. All impacted drivers have been patched to fix this
vulnerability. For details on impacted drivers and fixed versions, refer to
the following KB article:
https://community.progress.com/s/article/DataDirect-ODBC-Critical-Security-
Bulletin-November-2022-CVE-2022-41853
Enhancements
------------
* The driver binaries now include debugging symbols that can be used
for diagnosing and debugging issues in the driver.
* 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
the 32-bit driver, the ICU file name has changed from libivicu28.so to
libivicu.so. For the 64-bit driver, the ICU file name has changed from
libddicu28.so to libddicu.so.
This upgrade is available starting in build 08.02.0965 of the ICU library
files.
* The driver has been enhanced to support fetching data from all the companies
to which the user has access. Earlier, it supported fetching data only from
the default company of the user. You can configure this functionality using
the new Cross Company (CrossCompany) connection option.
Feature details:
Available: Driver version 8.0.0.1485 (B1227, U1070)-J2178
* 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:
* 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 allow you to configure whether requests
to web services timeout when the service is unresponsive. You can configure
this functionality using the new Web Service Timeout (WSTimeout) connection
option.
* 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.
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:
https://docs.progress.com/bundle/datadirect-product-compatibility/resource/
datadirect-product-compatibility.pdf
- The installer program cannot remove the already installed JRE files from the
install directory automatically. Remove them manually.
* 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 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 Microsoft Dynamics 365
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 following connection options have been removed from the driver:
Connection Retry Count (ConnectionRetryCount), Connection Retry Delay
(ConnectionRetryDelay), LoginTimeout (LoginTimeout), and Query Timeout
(QueryTimeout).
Release 8.0.0 Features
The Progress DataDirect for ODBC for Microsoft Dynamics 365 driver supports SQL
read-write access for ODBC applications to Microsoft Dynamics 365 apps. To
support SQL access to Dynamics 365 apps, the driver creates a relational map of
the Dynamics 365 data model and translates SQL statements to Dynamics 365
requests. In addition, the driver employs a SQL engine component that provides
support to SQL constructs unavailable in Microsoft Dynamics 365. This
functionality offers a number of advantages, including support for reporting
data and metadata in a form that ODBC applications are ready to use.
Features:
* Supports SQL read-write access to the following Microsoft Dynamics 365 apps.
- Dynamics 365 Marketing
- Dynamics 365 Sales
- Dynamics 365 Field Service
- Dynamics 365 Project Service Automation
- Dynamics 365 Customer Service
* The driver supports all ODBC Core and Level 1 functions and some Level 1 and
Level 2 features.
* Supports Dynamics 365 data types through data type inference.
* Supports OAuth 2.0 authentication
* Supports NTLM authentication
* Supports the handling of large result sets with paging and the
Fetch Size (FetchSize) connection option
* Supports optimizing insert, update, and delete operations with the Batch
Update Chunk Size (BatchUpdateChunkSize) connection option.
Configuring Data Sources
Data sources are stored in the system information file (typically,
odbc.ini). This file can be edited using a text editor or the DataDirect
Configuration Manager. For details on configuring this file, see the PROGRESS
DATADIRECT FOR ODBC FOR MICROSOFT DYNAMICS 365 DRIVER USER'S GUIDE.
Notes, Known Problems, and Restrictions
The following are notes, known problems, and restrictions for the
8.0 release of the driver:
Specifying values for the same connection option multiple times
---------------------------------------------------------------
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.
Connection delay
----------------
An initial connection may take a few minutes, depending on network speeds and
the amount of metadata the driver must retrieve from the service. Similar
delays may occur in the following scenarios.
* When the Create Map (CreateMap) connection option is set to 4 (OnChange)
(default) and changes have been made to the schema on the Dynamics 365
backend
* When starting a new session with Create Map set to 3 (Session)
* When Create Map is set to 0 (NotExist) and the internal schema files specified by
SchemaMap do not exist
* When Create Map is set to 1 (ForceNew)
Using Tableau and other third-party tools
-----------------------------------------
When using third-party tools such as Tableau, network speeds and the amount of
metadata retrieved from the service can cause timeout and out-of-memory errors.
You can work around these issues in the following ways.
1. Increase timeout settings in your third-party tool. For example, Tableau
offers the following guidance for timeout errors caused by large results:
https://kb.tableau.com/articles/issue/error-extract-timeout
You may also need to increase the Java heap size allotted for your
third-party tool. This allows the tool to manage large metadata results
sent by the service. This workaround not only avoids timeout and
out-of-memory errors on initial connection, but may also avoid these errors
on subsequent connections.
2. Establish your initial connection using the DataDirect ODBC Driver
Configuration Manager as described in "Testing connections and queries" in
the user's guide. In addition to specifying required properties, set the
Schema Map (SchemaMap) connection option. Schema Map specifies the location
and name of the configuration file where the map of the Dynamics 365 schema
is written. Once connected, you can use the connection string generated by
the Configuration Manager to connect via your third-party tool. However, it
should be noted that timeout and out-of-memory errors may occur on
subsequent connections, depending on the Create Map (CreateMap) setting. See
the user's guide for more information.
Connection issues when specifying ExtendedOptions
-------------------------------------------------
When specifying a value for the Extended Options (ExtendedOptions) option in
the Configuration Manger, the driver currently adds the option and its value to
the Connection String field. However, the ExtendedOptions attribute is not
supported in Connection Strings; therefore, attempting to connect with the
generated connection string or executing a test connect with the configuration
manager will result in the an "Invalid attribute in the connection string: XO"
error.
To work around this issue, manually edit the connection string to remove
"ExtendedOptions=" from the connection string; then, specify the value of
ExtendOptions as semi-colon separated options in the string.
For example:
Driver=<driver_name>;HostName=<host_name>;ExtendedOptions=WorkArounds2=4096,
WorkArounds2=8192;
Becomes:
Driver=<driver_name>;HostName=<host_name>;WorkArounds2=4096;WorkArounds2=8192;
Out-of-memory Errors
--------------------
The driver has been designed to handle large result sets that result. However,
out-of-memory errors can still occur. The following items outline how to reduce
the likelihood of out-of-memory errors for your environment.
* Reduce Fetch Size (FetchSize) to reduce demands on memory. By lowering the
maximum number of rows as specified by Fetch Size, you lower the number of
rows the driver is required to process before returning data to the
application. Thus, you reduce demands on memory and decrease the likelihood
of out-of-memory errors.
* Decrease Result Memory Size (ResultMemorySize) until results are successfully
returned. Intermediate results larger than the value specified will be
written to disk as opposed to held in memory. When configured correctly, this
avoids memory limitations by not relying on memory to process larger
intermediate results. Be aware that while writing to disk reduces the risk of
out-of-memory errors, it also negatively impacts performance. For optimal
performance, decrease this value only to a size necessary to avoid errors. By
default, Result Memory Size is set to -1, which sets the maximum size of
intermediate results held in memory to a percentage of the max Java heap
size. If you received errors using the default configuration, use the max
Java heap size divided by 4 as a starting point when tuning this option.
* Increase the JVM heap size. By increasing the max Java heap size, you increase
the amount of data the driver can accumulate in memory and avoid
out-of-memory errors.
ODBC Development on Linux Platforms
-----------------------------------
All of the Release 8.0 Core Components (header files, etc.) needed for
development of ODBC applications on 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.
LANG Environment Setting on Linux Platforms
-------------------------------------------
A default installation of the product on 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.
SQLColAttribute(s)
------------------
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.
SQL_C_NUMERIC
-------------
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.
Driver WorkAround Options
Progress DataDirect has included non-standard connection options (workarounds)
for the driver that enable you to take full advantage of packaged ODBC-enabled
applications requiring non-standard or extended behavior. Refer to the chapter
"WorkAround options" in THE PROGRESS DATADIRECT FOR ODBC DRIVERS REFERENCE for a
description of these options.
Documentation
PROGRESS DATADIRECT FOR ODBC FOR MICROSOFT DYNAMICS 365 DOCUMENTATION SET
-------------------------------------------------------------------------
The driver documentation set is available from the Progress Information Hub:
https://docs.progress.com/category/datadirect-microsoft-dynamics-365
You can access the online help system directly via the HTML redirect in
the installation Help directory.
Installed Files for the 32-bit Driver
This file list assumes a full installation of the 32-bit driver and
documentation.
The installer copies the following files and subdirectories to the
product installation directory, by default:
/opt/Progress/DataDirect/ODBC:
/<install_dir>/:
----------------
odbc.csh Setup script for C shell
odbc.ini Sample odbc.ini file
odbcinst.ini Sample odbcinst.ini file
odbc.sh Setup script for Bourne shell
IVODBC.LIC DataDirect license file
license.txt End User License Agreement
/bin/:
------
ivtestlib Test application to check that required
libraries are present and loadable
/FIXES/:
--------
fixes8.0.txt List of fixes since last release
/help/:
-------
*.html HTML redirects to online connector help systems
and documentation resources
/include/:
----------
odbcinst.h Include files
qesqlext.h
sql.h
sqlext.h
sqltypes.h
sqlucode.h
sqlunx.h
/install/:
---------
*.* Files associated with the installer program
/java/lib/:
----------
dynamics365.jar Java components of the driver
/lib/:
------
ivdynamics36528.so DataDirect Dynamics 365 driver
ivtrc28.so DataDirect trace library
libivicu.so Unicode conversion tables
libodbc.so ODBC Driver Manager
libodbcinst.so ODBC Installer
/locale/en_US/LC_MESSAGES/:
--------------------------
ivdynamics36528.mo Dynamics 365 driver message file
ivdynamics36528.po Dynamics 365 driver message file source
odbc.m ODBC Driver Manager message file
odbc.po ODBC Driver Manager message source
/NOTICES/:
----------
ODBC for Microsoft Dynamics 365
v8.0 notices.txt Third-party vendor license agreements
/READMES/:
----------
ODBC for Microsoft Dynamics 365
v8.0 readme.txt This file
/samples/bulk/:
---------------
bulk Bulk application
bulk.c Bulk example source
bulk.mak Bulk example make file
ddlogging.properties Log configuration file for the
Dynamics 365 driver
/samples/bulkstrm/:
------------------
bulkstrm Bulk streaming example application
bulk.cpp Bulk streaming example source
bulk.hpp Bulk streaming example header
bulkstrm.txt Bulk streaming description
ddlogging.properties Log configuration file for the
Dynamics 365 driver
main.cpp Bulk streaming example source file
msgprintf.hpp Bulk streaming example header file
/samples/example/:
------------------
example Example application
example.c Example source
example.h Example header
example.mak Example make file
ddlogging.properties Log configuration file for the
Dynamics 365 driver
/samples/trn/:
--------------
makefile Translation Library example make file
readme.trn Translation Library example description
translat.c Translation Library example source file
/tools/:
--------
ddencpwd Password Encryption Tool
ddextu License Extender utility
ddprocinfo Processor Information utility
launch_server.sh Script that launches the SQL Engine in
server mode
/uninstall/:
------------
*.* Files used to uninstall the product
Installed Files for the 64-bit Driver
This file list assumes a full installation of the 64-bit driver and
documentation.
The installer copies the following files and subdirectories to the
product installation directory, by default:
/opt/Progress/DataDirect/ODBC_64Bit:
/<install_dir>/:
-------------
odbc.csh Setup script for C shell
odbc.ini Sample odbc.ini file
odbcinst.ini Sample odbcinst.ini file
odbc.sh Setup script for Bourne shell
DDODBC.LIC DataDirect license file
license.txt End User License Agreement
/bin/:
------
ddtestlib Test application to check that required
libraries are present and loadable
/FIXES/:
--------
fixes8.0.txt List of fixes since last release
/help/:
-------
*.html HTML redirects to online connector help systems
and documentation resources
/include/:
----------
odbcinst.h Include files
qesqlext.h
sql.h
sqlext.h
sqltypes.h
sqlucode.h
sqlunx.h
/install/:
---------
*.* Files associated with the installer program
/java/lib/:
----------
dynamics365.jar Java components of the driver
/lib/:
------
dddynamics36528.so DataDirect Dynamics 365 driver
ddtrc28.so DataDirect trace library
libddicu.so Unicode conversion tables
libodbc.so ODBC Driver Manager
libodbcinst.so ODBC Installer
/locale/en_US/LC_MESSAGES/:
---------------------------
dddynamics36528.mo Dynamics 365 driver message file
dddynamics36528.po Dynamics 365 driver message file source
odbc.m ODBC Driver Manager message file
odbc.po ODBC Driver Manager message source
/NOTICES/:
----------
ODBC for Microsoft Dynamics 365
v8.0 notices.txt Third-party vendor license agreements
/READMES/:
----------
ODBC for Microsoft Dynamics 365
v8.0 readme.txt This file
/samples/bulk/:
---------------
bulk Bulk application
bulk.c Bulk example source
bulk.mak Bulk example make file
ddlogging.properties Log configuration file for the
Dynamics 365 driver
/samples/bulkstrm/:
------------------
bulkstrm Bulk streaming example application
bulk.cpp Bulk streaming example source
bulk.hpp Bulk streaming example header
bulkstrm.txt Bulk streaming description
ddlogging.properties Log configuration file for the
Dynamics 365 driver
main.cpp Bulk streaming example source file
msgprintf.hpp Bulk streaming example header file
/samples/example/:
------------------
example Example application
example.c Example source
example.h Example header
example.mak Example make file
ddlogging.properties Log configuration file for the
Dynamics 365 driver
/samples/trn/:
--------------
makefile Translation Library example make file
readme.trn Translation Library example description
translat.c Translation Library example source file
/tools/:
--------
ddencpwd Password Encryption Tool
ddextu License Extender utility
ddprocinfo Processor Information utility
launch_server.sh Script that launches the SQL Engine in
server mode
/uninstall/:
------------
*.* Files used to uninstall the product
~~~~~~~~~~~~~~~~
February 2026
End of README.TXT