Connect to SAP HANA from ArcGIS

You can connect to an SAP HANA database from ArcGIS clients. To do so, install and configure the SAP HANA client ODBC driver on the ArcGIS client machines. SAP HANA client ODBC drivers are available to existing SAP users from the SAP Support Portal under Software Downloads.

Once the client is configured, create a database connection file. To publish SAP HANA data from ArcGIS Pro to your portal's federated servers, register the database with the federated ArcGIS Server sites.

NoteNote:

It is recommended that you install 32- and 64-bit applications and ODBC drivers on separate machines to avoid issues that arise when different versions of the same drivers are installed on the same machine.

Connect from ArcGIS Server

If you want to publish from ArcGIS Pro to your portal's federated ArcGIS Server sites and want the resultant services to use the data in SAP HANA, install and configure a 64-bit SAP HANA client ODBC driver on each machine in the federated ArcGIS Server site and register the database with each site.

Install the SAP HANA client and configure the ODBC driver

Download the SAP HANA client ODBC driver, install it, and configure a data source name. Follow the steps appropriate for your ArcGIS Server operating system, either Windows or Linux.

ArcGIS Server on Windows

Follow these steps to configure the SAP HANA client ODBC driver on each ArcGIS Server Windows machine:

Steps:
  1. Download a supported 64-bit SAP HANA client from the SAP Support Portal, and install it on each machine in the ArcGIS Server site.
  2. Set up a system data source name (DSN) using the ODBC Data Source Administrator (64 bit).

    You will use the data source name when you connect from ArcGIS to the database. Use the same name when configuring all SAP HANA ODBC clients to that same database. For example, use the same data source name when you configure the SAP HANA client ODBC driver on your ArcMap machines as you use when you configure the data source name for the ODBC driver on your ArcGIS Server machines. If you do not use the same name, you will encounter problems when publishing, because ArcGIS compares the connection strings of the data being published and the database that is registered.

    1. Click the System DSN tab in the ODBC Data Source Administrator (64 bit) and click Add.

      The Create New Data Source dialog box opens.

    2. Choose the SAP HANA ODBC client and click Finish.
    3. Populate the Data Source Name, Description, and Server:Port information for your database.
    4. Click Settings to open the ODBC Advanced Setup dialog box.
    5. Add the following key value to the Special property settings section: SPATIALTYPES=1.

      This key value enables spatial type support through the ODBC connection.

    6. Click OK to apply changes and close the ODBC Advanced Setup dialog box.
    7. Click OK on the ODBC client setup and ODBC Data Source Administrator to close them.
  3. Add the SAP HANA client installation directory to the Windows system PATH environment variable.

    For example, if you installed the SAP HANA client ODBC driver to C:\Program Files\sap\hdbclient, add that to the PATH environment variable.

ArcGIS Server on Linux

Follow these steps to configure the SAP HANA client ODBC driver on each ArcGIS Server Linux machine:

Steps:
  1. Download a supported 64-bit SAP HANA client from the SAP Support Portal, and install it on each machine in the ArcGIS Server site.
  2. Install a Linux ODBC driver manager on each ArcGIS Server machine if one is not already installed.
  3. Edit the SAP HANA ODBC connection files. The files must be named .odbc.ini and .odbcinst.ini.

    Be sure there are no spaces around the equal signs (=) in the .odbc.ini file. For example, this entry does not have spaces around the equal signs:

    [<HANA_DNS>]
    Driver=/<usr>/sap/hdbclient/libodbcHDB.so
    Description=SAP Hana ODBC
    ServerNode=<HANA_Server_IP>:<SAP_HANA_port>
    UID=<user_name>
    Password=<user_password>
    SPATIALTYPES=1
    
    [ODBC]
    IANAAppCodePage=4
    InstallDir=/<usr>/sap/hdbclient
    Trace=0
    TraceDll=/opt/odbc64v51/lib/odbctrac.so
    TraceFile=/tmp/odbctrace.out
    UseCursorLib=0

    In the .odbcinst.ini file, such spacing is not required as shown in this example:

    Description  =SAP HANA ODBC
    Driver64         = /<usr>/sap/hdbclient/libodbcHDB.so

  4. Set up an ODBC data source name. Use this name when you connect from ArcGIS to the database.

    Use the same ODBC data source name when configuring all SAP HANA ODBC clients to that same database. For example, configure the data source name on your ArcGIS Desktop machines to be the same as the data source name for the SAP HANA client ODBC driver on the machines in your ArcGIS Server sites. If you do not use the same name, you will encounter problems when publishing, because ArcGIS compares the connection strings of the data being published and the database that is registered.

Alter the init_user_param.sh script (Linux only)

NoteNote:

A fix is required to use ArcGIS Server 10.5.x on Linux with SAP HANA. Contact Esri technical support (within the United States) or your distributor (outside the United States) if you require this configuration.

Once you have installed the database client files, alter the init_user_param.sh script installed with ArcGIS Server to reference the client files. You can access this script by browsing to the <ArcGIS Server installation directory>/arcgis/server/usr directory.

Steps:
  1. Ensure that the ArcGIS Server installation owner on each machine has at least read and execute permissions on the database client libraries.
  2. Open the init_user_param.sh script in a text editor.
  3. Remove the comment mark (#) from these lines and replace the <SAPHANA_InstallDir> information with the path to the directory where you installed the SAP HANA client:

    export SAPHANADIR=<SAPHANA_InstallDir>/sap/hdbclient
    export LD_LIBRARY_PATH==$SAPHANADIR:$LD_LIBRARY_PATH

  4. Save and close the script.
  5. After you have configured the init_user_param.sh on each machine in your ArcGIS Server site, run the startserver.sh script to restart ArcGIS Server.

    ./startserver.sh

Register the database

If you want to publish web services using data in SAP HANA, register the database with your ArcGIS Server sites. See Register SAP HANA with ArcGIS Server in the ArcGIS Server help for instructions.

Connect from ArcGIS Pro

To connect from an ArcGIS Pro project to SAP HANA, install the SAP HANA client ODBC driver on the ArcGIS Pro machine, configure it, and create a database connection.

Install the SAP HANA client and configure the ODBC driver

Follow these steps to download the SAP HANA client ODBC driver and configure it:

Steps:
  1. Download a supported 64-bit SAP HANA client from the SAP Support Portal under Software Downloads, and install it on all ArcGIS Pro machines.
  2. Set up a system data source name (DSN) using the ODBC Data Source Administrator (64 bit).

    You will use the data source name when you connect from ArcGIS to the database. Use the same name when configuring all SAP HANA ODBC clients to that same database. For example, use the same data source name when you configure the SAP HANA client ODBC driver on your ArcGIS Pro machines as you use when you configure the data source name for the ODBC driver on your ArcGIS Server machines. If you do not use the same name, you will encounter problems when publishing, because ArcGIS compares the connection strings of the data being published and the database that is registered.

    1. Click the System DSN tab in the ODBC Data Source Administrator (64 bit) and click Add.

      The Create New Data Source dialog box opens.

    2. Choose the SAP HANA ODBC client and click Finish.
    3. Populate the Data Source Name, Description, and Server:Port information for your database.
    4. Click Settings to open the ODBC Advanced Setup dialog box.
    5. Add the following key value to the Special property settings section: SPATIALTYPES=1.

      This key value enables spatial type support through the ODBC connection.

    6. Click OK to apply changes and close the ODBC Advanced Setup dialog box.
    7. Click OK on the ODBC client setup and ODBC Data Source Administrator to close them.
  3. Add the SAP HANA client installation directory to the Windows system PATH environment variable.

    For example, if you installed the SAP HANA client ODBC driver to C:\Program Files\sap\hdbclient, add that to the PATH environment variable.

Connect to the database

Add a database connection using the Database Connection dialog box or Create Database Connection geoprocessing tool. The following steps describe using the Database Connection dialog box.

Steps:
  1. Right-click Databases in the Catalog pane and click New Database Connection.
  2. Choose SAP HANA from the Database Platform drop-down list.
  3. In the Data source text box, type the data source name you configured for the ODBC driver.
  4. Choose Database authentication for the Authentication Type.
  5. Provide a valid user name and password in the User name and Password text boxes, respectively.
  6. If you prefer not to save your login information as part of the connection, uncheck Save user name and password; doing this can help maintain the security of the database. However, if you do this, you will be prompted to provide a user name and password every time you connect. Also note that Save user name and password must be checked for connection files that provide ArcGIS services with access to the database or if you want to search to locate data accessed through this connection file.
  7. Click OK to connect.