APPX ODBC Installations Instructions

_This page provides instructions for installing APPX ODBC 6.1


Overview

APPX ODBC is used by APPX customers to gain access to APPX data from external products, such as Crystal Reports or Excel. Installation of APPX ODBC 6.1 is accomplished by simply following the steps outlined below. APPX ODBC 6.1 is a Windows only product for now.

APPX ODBC 6.1 is a new product compared to earlier versions of APPX ODBC. There is no upgrade, just uninstall the older version prior to installing the new version.

AppxODBC_5.0_chart_-_color.jpg


AppxODBC requires 3 components to work. The Appx FMS Server (APPX server configured to listen on TCP 8060 by default), The Appx ODBC Data Gateway (aka AppxODBC Server, configured to listen on TCP 1992), and the Appx ODBC Driver with ASQL tool. These components can all be installed on one computer or each component could be installed on separate computers. The Appx FMS server should already be installed and running. The APPX FMS Server is an APPX server configured to accept APPX client connections via TCP, by default TCP 8060. Install the Appx ODBC Data Gateway, then the Appx ODBC Driver + ASQL. Run ASQL to import Apppx dictionaries. On non-admin PCs you could choose to install the Appx ODBC Driver (minus ASQL). Here's what each installer does do...

This will install the "Appx ODBC Data Gateway" service and supporting files. This service listens on TCP port 1992 for connections from the Appx ODBC Driver installed on the ODBC client desktops. The Data Gateway contains one or more database directories each with it's own schemas imported via ASQL and each having its own appx.env file that tells it the host and port of the Appx FMS Server for that database. By default the installer creates a default database called "appx". This creates a directory tree in the server install directory called "appx.dbs". That directory contains all the schema files for database "appx" as well as its appx.env file. The bin subdirectory of the AppxODBC Server directory contains two important executables the gateway service tool AppxODBC.exe. This is the program that will listen for connection attempts on TCP port 1990 from desktop computers running the Appx ODBC driver. You'll also find in the bin sub directory the mdcreate.exe. I'll explain mdcreate in an example further in this documentation, mdcreate is a command line tool optionally used to create connections to secondary APPX servers.

When a connection request is received from a desktop driver it takes the database from the request, "appx" by default, reads the appx.env file, and attempts to start up an FMS connection to that Appx host using the login and password received from the desktop driver. If authentication is successful then the APPX ODBC server starts brokering requests from the ODBC client desktop's ODBC driver to the APPX FMS server. Your server's process list on the APPX ODBC server will have a new Data Gateway task for each ODBC client driver connection. Each Data Gateway task creates its own APPX FMS connection to the Appx server.

The installer should create everything needed in the way of the "appx" database, the appx.env file, and configure and start the service task. Upon completion of the installer the Appx ODBC Data Gateway should be ready for connections. This installer does not install an Appx ODBC driver or ASQL application. Nothing on this server is visibly runnable other than you can see that the service is running using Microsoft Windows Services applet. You might look at the appx.env file to see that it looks right. This will install the desktop Appx ODBC Driver. This is what WinSQL and other desktop application will use to connect to the Appx ODBC Data Gateway, which in turn connect to APPX. During the install it will create a default System DSN using the driver and setting up the DSN to properly connect to the Appx ODBC Data Gateway. Once this installer is done the driver should be installed and there should be a functioning System DSN you can use to request data. That can't happen until ASQL has been run to import Appx data dictionaries into the Data Gateway database schemas. ASQL is not included in this installer for security reasons. When you use the driver to get data the user and password you use is your Appx user and password for the Appx server on the back end of the FMS connection between the Appx ODBC Data Gateway and the Appx FMS server. This is the same as the other driver installer except that it does include ASQL. This must be installed on at least one desktop so that ASQL.exe can be used to import the APPX data dictionary of the desired APPX files.

Disclaimer

APPX ODBC 6.1.0 includes many new features and bug fixes. As always, before upgrading your APPX production system, you are strongly encouraged to install APPX ODBC 6.1.0 into a test environment where you can verify the compatibility of your applications. APPX ODBC 6.1.0 has been thoroughly tested but, because of the complexity of computer software, there will certainly be bugs and some ODBC clients that will not be able to connect to the ODBC server. Consequently, there is no guarantee that your applications will be completely compatible with this significant new release. It is your responsibility to test your applications to ensure that they are compatible with this new release of APPX ODBC and to make any changes that may be necessary to maintain compatibility. Finally, before upgrading your production system, make a backup of your applications and your data. Your computer software and your data are important assets of your organization. Please be prudent and take the steps needed to protect this important investment.

Known Issues:

  • ?

APPX ODBC Server and Driver Installation Instructions

Windows Server/XP/Vista/Win 7/Win 8/Win8.1/Win 10

New Installation

We're going to install APPX ODBC Server on a Windows 10. APPX 6.1.0 is already installed on a Windows 10 and configured to listen on TCP port 8063. You should keep the versions the same between APPX ODBC and APPX Server, otherwise you could end up with performance issues or failure to connect errors. APPX ODBC Server listens on TCP port 1992. Let's make sure that that TCP port is available with the OS netstat command line tool.

Verify TCP Port 1990 is open via Netstat Command

Verify_Port_1992.JPG

The image above demonstrates using the Windows OS commands netstat and findstr to search for TCP port 1992. As you can see nothing was returned, so we can be sure that the port is available.

Download and run the APPX ODBC Server installation file.

Let's download the APPX ODBC Server and start the installation.

ODBC_Install_Files.JPG

Execute the AppxODBCserver _windows-64.exe or AppxODBCserver _windows-32.exe installation file shown in the image above. Note: For this example we will use AppxODBCserver _windows-64.exe.

ODBC_Sever_Install_Welcome.JPG

Click Next on the APPX ODBC installation welcome screen.

ODBC_Sever_Install_Select_Destination.JPG

The APPX ODBC server is either a 32bit or 64bit application depending on which variant that you selected to install. It will install by default to either C:\Program Files\AppxODBC Server\ if you are installing the 64 bit version, or C:\Program Files (x86)\AppxODBC Server\ if you selected the 32 bit version. Note: If you are running a 32 bit version of Windows, you can only install the 32bit version of the APPX ODBC server.

ODBC_Sever_Install_SelectStartMenu.JPG

You can accept the default Start Menu Folder name of AppxODBC Server.

ODBC_Sever_APPX_Install_Location.JPG

In the image above, you can see the ODBC Server prompting for the TCP port that your APPX Server's appxLoginMgr is configured to listen on. This can be APPX on any platform (Windows, Linux, HPUX, IBM AIX, Sun Sparc based Solaris) with the same version of APPX as the AppxODBC that you are installing now.

ODBC_Sever_APPX_Install_Location_Selected.JPG

The image above shows that I'm instructing AppxODBC to point to the APPX server named roxymusic.internal.appx.com on TCP port 8063.

ODBC_Sever_Finish.JPG

AppxODBC server installation is complete.

Verify_Port_1992_and_task.JPG

The image above demonstrates the use of OS commands tasklist, findstr and netstat to verify that the AppxODBC server process is indeed running and listening on TCP port number 1992.

ODBC_Sever_Serviices.JPG

In the image above, you can see the service "Appx ODBC Data Gateway Service" in the OS Services panel. Notice that the Startup Type is set to Automatic, and the Status is Started.

ODBC_Server_File_Explorer.JPG

The directory listing above shows some of the files that are created in the AppxODBC Server directory structure. Notice the executable in the bin subdirectory, the appx.dbs subdirectory and the appx.env file inside appx.dbs. appx.dbs is the directory created for the default DSN database named appx. The configuration information for TCP port number of APPX and the APPX Server name is contained in the appx.env file.

C:\Program Files\AppxODBC Server>more appx.dbs\appx.env

APPX_DATA_SERVER=roxymusic.internal.appx.com:8063

C:\Program Files\AppxODBC Server>

The contents of the appx.env file is displayed above.

Download and run the AppxODBC driver and ASQL data importer.

ODBC_Driver_File_Explorer.JPG

With AppxODBC 6.1.0 we've seperated the ODBC driver from the data importer. You may wish to put the APPX Server, AppxODBC server and AppxODBC driver and ASQL all on one machine. Then put just the AppxODBCdriver on each client's desktop that needs to access APPX from an application such as Microsoft Excel. If the AppxODBC user is an APPX developer, it might be desirable to have the AppxODBC driver and ASQL importer on the same desktop as the ODBC client client application (Excel, Crystal Reports, etc...). For this example I am keeping all AppxODBC components on a single machine, with the APPX Server on a separate machine. Your configuration could demand each component be installed on a separate machine.
I'm going to execute the AppxODBCdriver +ASQL_windows-64.exe to begin the installation of the driver and ASQL importer.

ODBC_Driver_Install_Welcome.jpg

Click Next when the AppxODBC driver/ASQL installation welcome screen is presented to you.

ODBC_Driver_APPX_Install_Location.jpg

ASQL data is created by the user at runtime. You should install AppxODBC in a directory that the user has write access to. A good choice is C:\Appx\AppxODBC Driver\. This will prevent write access problems for OS configurations that prevent users writting to C:\Program Files\ or C:\Program Files (x86)\ directories.

ODBC_Driver_Install_Select_Destination.jpg

Accept the default name for the Windows Start Menu program group for AppxODBC driver.

ODBC_Driver_Create_DSN.jpg

AppxODBC driver needs to know the location of the AppxODBC server.

ODBC_Driver_Create_DSN_Selected.jpg

In the image above, I'm specifying localhost because my AppxODBC server is the same machine as the AppxODBC driver/ASQL machine. You should enter the DNS resolvable name or IP address of the server you install appxODBC server and then click Next.

ODBC_Driver_Finish.jpg

You have completed the installation of AppxODBC driver and ASQL components. You should now run ASQL to begin the data structure import.

Importing APPX data structure via the AppxODBC ASQL tool.

020.jpg

Running ASQL, you are first prompted for a Data Source Name (aka DSN), and a user name and password to log into APPX with. Optionally you can enter a Database ID and Application ID. Bug: Entering a database may cause connection errors. If this happens, leave the database blank.

021.jpg

In the image above, I'm using the default created DSN named AppxODBC, and I've specified an APPX user name and password. I am going to leave Database ID and Application ID empty and will browse via the data selector after I log in.

022.jpg

The connecton to the Appx server is being made via the AppxODBC server.

023.jpg

The ASQL program is performing some initial setup of the data structure.

025.jpg

The ASQL program is performing some initial setup of the data structure.

026.jpg

At this point, we are presented with the databases available to our appx user that we logged into APPX with since we did not identify the initial database in the ASQL login screen. Out account can see the 1EX and DMO databases.

027.jpg

Prospect in the DMO database is selected, and IMPORT is run. The APPX DMO PROSPECT data is then made available to external sources such as WinSQL or Excel using thier ODBC connection / data import and referencing the AppxODBC System DSN.

Manually creating a new AppxODBC data source on the AppxODBC Server

028.jpg

On the appxODBC server, open a command window in the appxODBC\bin\ directory, and execute "mdcreate development" where development is the name of the name you wish to give the odbc gateway. It doesn't have to match anything on the APPX server side, but it would be a good idea to name it meaningfully.

029.jpg

In the screen shot above, you can see the newly created directory on the appxODBC server. I named my new appxODBC gateway localhost, and the mdcreate tool created a directory on the appxODBC server named localhost.dbs. Inside the directory localhost.dbs you can see a configuration file named appx.env. This appx.env file contains a string "APPX_DATA_SERVER=localhost:8060". This string tells the appxODBC server that listens on TCP port 1990 to connect to the APPX Server on localhost at TCP port 8060.

030.jpg

As you can see above, there are actually two odbcad32.exe files on my APPX ODBC client (the desktop that I install ASQL.exe). My 64 bit OS places the 32 bit odbcad32.exe inside \Windows\SysWOW64\odbcad32.exe. Use the 32bit version to create the new DSN for the newly created ODBC datasource on the appxODBC server.

031.jpg

\Windows\SysWOW64\odbcad32.exe (for 64 bit windows) or \Windows\System32\odbcad32.exe (for 32 bit Windows), System DSN tab shows the default created AppxODBC System DSN. We want to create a new DSN to match the manually created data source that we created on the appxODBC server.

032.jpg

In the photo above as a point of reference, you can see the values that are assigned to the default created AppxODBC System DSN. Notice the database is named appx. This corresponds to the appx.dbs directory on the appxODBC server in the \Program Files (x86)\AppxODBC Server\ directory. In the next steps below we will create a System DSN using a database named localhost to match what we created on the appxODBC server.

033.jpg

In the image above, after clicking the Add button on the System DSN tab, we are presented with the choice of data source driver. Choose AppxODBC Driver.

034.jpg

The blank fields above are presented after you select the driver. You'll want to fill in the first four fields: Data Source Name, Description, Host and Database.

035.jpg

The value you use in the first field in the image above, Data Source Name, will be referenced by the ASQL data importer when you are prompted for the Data Source Name. The second field, Description, is just for reference. The third field, Host, should be a DNS name that is resolvable, or an IP address to the appxODBC server, that may or may not be the same as the Appx server.. The last field we will fill in is the Database field. This field is the name of the database on the appxODBC server that we wish to connect to. Each database will have a databasename.dbs directory in the C:\Program Files\AppxODBC Server\ directory.

036.jpg

Your newly created appxODBC System DSN is now ready for the schema importer ASQL.exe.

Troubleshooting

Troubleshooting AppxODBC Server
Troubleshooting AppxODBC Driver/ASQL
Missing $APPXPATH\0SA\Struct\SYSDIR.dat

If you receive an error like below when you connect to a local instance of APPX via ASQL, you may be missing the 0SA\Struct\SYSDIR.dat file. You can create this file by selecting System Administration > System Setup > System Administration File Management > Create Files. Then restart ASQL and attempt to connect to APPX again.

037.jpg038.jpg

The images above can occur when 0SA\Struct\SYSDIR.dat file is missing. This error will occur at the beginning of the connection attempt from ASQL to APPX.

This error can also occur if you specify a Database on the ASQL login screen. This is a bug, until it is fixed, just leave the database blank. You can specify an Application.

Appx ODBC Gateway Service stopped or blocked by firewall.

039.jpg

ASQL.exe failure to connect to the APPX ODBC gateway server (aka appxODBC Server) on TCP port 1990.

040.jpg

WinSQL failure to connect to the APPX ODBC gateway server (aka appxODBC Server) on TCP port 1990.

If you receive the either of the two above errors, verify that the appxODBC Server's service named "Appx ODBC Data Gateway Service 05.02.0000" is started. Also make sure the TCP port 1990 is not blocked between the Appx ODBC client and Appx ODBC server.

Installing on Windows 64 bit

AppxODBC is a 32 bit product. The Windows ODBC System DSN it creates is 32 bit not 64 bit. To view and manage 32 bit DSNs on a 64 bit version of Windows, you must specify the 32 bit version of odbcad32.exe. For 64 bit Windows, to manage 32 bit DSNs like AppxODBC, use \Windows\SysWOW64\odbcad32.exe and not the 64 bit version with the same name found at \Windows\system32\odbcad32.exe.

If you are working on a 32 bit version, this does not apply to you, just run the odbcad32.exe found in your Administrative tools (which is mapped to \Windows\system32\odbcad32.exe.)

Manuals

The Dharma Interface Manual explains how our ODBC interface works and details supported SQL statements and syntax.

Linux and Unix

Known Issues

  • APPX Server version and AppxODBC version should match. Mismatched version can cause failure to connect, or extreme loss of performance in AppxODBC data connection.
  • Entering a Database on the connection screen will cause connection problems. Leave the database blank.

Comments:

Read what other users have said about this page or add your own comments.


-- BrianRyan - 2021-06-07

Edit | Attach | Watch | Print version | History: r60 < r59 < r58 < r57 < r56 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r57 - 2021-06-08 - BrianRyan
 
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback