Skip to main content

Setup Tasks

Before you can use the SAP components in a production, you must perform the setup activities discussed in this chapter.

To access SAP, it is necessary to provide a username and password. This means that you must also create production credentials that contain an SAP username and password. For information on creating credentials, see Configuring Productions.

Setting Up the Java Gateway

For information on setting up the Java Gateway, see “Prerequisites” in Using the Java Gateway in Productions.

Installing the SAP JCo Jar File

Obtain, from SAP, the SAP Java Connector 3.x, as appropriate for your operating system. Generally, this is provided as a compressed file. Uncompress it and place the contents in a convenient location. The directory should contain the following items:

  • examples subdirectory

  • javadoc subdirectory

  • Readme.txt file

  • sapjco3.dll file

  • sapjco3.jar file

  • file

Generating Proxy Classes for SAP JCo

To communicate with SAP JCo, your interoperability-enabled namespace must contain proxy classes that represent SAP JCo. To generate these classes, do the following:

  1. Start the Java Gateway.

    The easiest way to do this is as follows:

    1. Create a simple production that contains only one business host: EnsLib.JavaGateway.Service.

      Configure the settings for this business host so that it can find the Java Gateway. For information, see “Using the Java Gateway in a Production” in Using the Java Gateway in Productions.

    2. Start the production, which starts the Java Gateway.

    For other ways to start the Java Gateway, see Using the Java Gateway in Productions.

  2. In the Terminal, change to your interoperability-enabled namespace and use the ImportSAP() method of EnsLib.SAP.BootStrap, as follows:

    do ##class(EnsLib.SAP.BootStrap).ImportSAP(pFullPathToSAPJarFile,pPort,pAddress)


    • pFullPathToSAPJarFile is the full path to the SAP Jar file.

    • pPort is the port used by the Java Gateway.

    • pAddress is the IP address used by the Java Gateway.

Testing the SAP Connection

To test the SAP connection, do the following in the Terminal (or in code):

  1. Create an instance of EnsLib.SAP.Utils.

  2. Set the following properties of that instance. These are string properties unless otherwise noted.

    • SAPClient — SAP Client e.g 000.

    • SAPUser — Username that has access to the SAP server.

    • SAPPassword — Password for the user.

    • SAPLanguage

    • SAPHost— Host name or IP address of the SAP server.

    • SAPSystemNumber — SAP SystemNumber e.g 00.

    • JavaGatewayAddress — IP address or name of the machine where the JVM to be used by the Java Gateway server is located.

    • JavaGatewayPort — Port used by the Java Gateway.

    • SAPTransactionAutoCommit — Specifies whether to execute the BAPI "BAPI_TRANSACTION_COMMIT" after a successful BAPI/RFC-call. This property is %Boolean.

  3. Call the PingSAP() method of your instance. This method connects to SAP and performs a dynamic invocation of the STFC_CONNECTION function. It returns a %Status.