Print server ODBC driver for Oracle

The CR Oracle Wire Protocol ODBC Driver 7.0.1 works with Oracle up to version 12.1. For further information, see adxeditionserversolutions.xml below.

The CR Oracle Wire Protocol ODBC Driver 7.0.1 (Data Direct ODBC Drivers) doesn’t work with Oracle 12.2.

SAP Crystal Report doesn't provide any new ODBC driver compliant with Oracle 12.2 and new security levels.
If you're using the last driver provided with Crystal Report, you'll encounter the following ORA-28040 error.

Error message


[ODBC Oracle Wire Protocol driver][Oracle]ORA-28040: No matching authentication protocol





Two options can be used to configure the Print Server with Oracle 12.2:

Use the native Oracle ODBC with Oracle 12.2 or 19c with SAGE PrintServer <=2.19

NOTE: No more manual process are required to manage Oracle Datasource with InstantClient since PrintServer 2.20 (07.2020) AND Sage X3 Console 2.47.

1. Install ODBC drivers available from Oracle Instant Client

Go to the Oracle website to download and install the latest Oracle Instant Client for Microsoft Windows (32-bit). For further information, consult Oracle's documentation.

Install the setup with Client components and ODBC drivers:

  • Basic Package is mandatory
  • SQL*Plus Package is optional but can be useful to test connectivity
  • ODBC Package is mandatory

Then perform the following steps:

  1. Install the latest version of Microsoft Visual C++ Redistributable Package (x86)
    . Note: For version 12.2, install the Microsoft Visual C++ 2013 Redistributable Package (x86).
  2. Unzip all zip files into the same directory, for example C:\oracle
  3. Make sure that the emadmin and emrun users have got file permissions on C:\oracle and all subdirectories
  4. Execute C:\oracle\instantclient_19_3\odbc_install.exe
  5. Create tnsnames.ora and sqlnet.ora files in C:\oracle

2. Create the ODBC datasource

Launch ODBC data Source Administrator 32bit (windows\sysWOW64\odbcad32.exe). Then create a new system datasource with the Oracle in Oraclient12Home_32bit driver.

Name your solution ADX_[Your solution name] and define your TNS Service Name as hostname:port/service name.

Note

You can't use a name of your choice. You need to use the default name built by the Console. This default name is a concatenation of the ADX_ prefix and your X3 solution name.

Example

If your Sage X3 solution is named ORA122, you need to name your datasource ADX_ORA122.

To avoid creating a TnsName.ora file on your host, it is more convenient to enter in the TNS ServerName entry the hostname and the service name the following way:

OracleHostname:[Oracle port]/ServiceName

The Oracle database is running on the awsx3Solution host, port 1521 and your service name is ORA122.
Then the TNS Service name will be: awsx3Solution:1521/ORA122

Connect to the target on Linux Oracle 12.2 server and test the datasource.

3. Configure your Print Server with the Console

Activate and publish your folders in the Console. Then check in the Console that the datasource has the same name as yours. If not, please rename your datasource the same way than in the Console.

In the example below, we can see the entry Name of the ODBC source: ADX_ORA122.
The datasource we've just created has the same name. It's OK. If not, please, rename your datasource because this entry can't be edited in the Console.

4. Modify the Print Server service

Every time it start, the Print Server program checks all its datasources to verify the consistency with its rules and modify them if not.

To avoid datasource modifications, add the /noodbc argument to AdxSrvImp.exe.

Service modification example


sc config "Safe_X3_SE_V2DEFAULT" binPath= "\"c:\Sage\SafeX3\EDTV2\EDTSRV\srvedit\AdxSrvImp.exe\" /noodbc"
[SC] ChangeServiceConfig réussite(s)

Use Progress DataDirect ODBC driver

Progress DataDirect's ODBC Driver for Oracle 8.0 is compliant with new security features present in Oracle 12.2.

You don't need to install Oracle Instant Client when you use this driver.
You just need to install the 32-bit version before installing Sage X3 Print Server.
This driver is fully supported by Sage Print Server, it will be detected automatically by the Print Server.

This is a commercial product. You can test the trial version and test it before buying the license:

https://www.progress.com/odbc/oracle-database