SAP JCo Adapter

Quantum Fabric allows you to connect and access the BAPI functions inside an ABAP SAP backend via SAP JCo Adapter that was built using sapjco java client. Using SAP JCo adapter, you can explore the BAPI functions inside Business Object Repositories (BOR) and Remote Function Call (RFC) and add them as Quantum Fabric operations in the console. When a BAPI function is added as an operation, its corresponding import params and export params are auto-generated as request input params and response output params.

You must load the required Business Application Programming Interface (BAPI) functions to define a SAP service. The BAPI files contain the SAP methods and functions. These methods have the logic defined for a service. A BAPI is a function module as it can be invoked from remote programs such as standalone Java programs, web interfaces, and so on.

Login and Log Out - At design time Quantum Fabric generates the LOGIN and LOGOUT services along with BOR's and RFM's in the root explore, by default. Usually every BAPI function execution requires username and password to be sent in the request. If you want to skip passing the user name and password, you can use the LOGIN and LOGOUT operations.

Login - The Login operation contains two input params, username and password, used to skip passing the user name and password for subsequent BAPI function calls. When you make a LOGIN call, the credentials you provide are stored into the middleware session.

Log out - The log out operation is used to remove the stored user name and password from the middleware session.

Single Sign On (SSO) Login

SAP offers several mechanisms for authenticating users. If there are multiple systems in your system network, using a single sign-on (SSO) environment helps to reduce the number of passwords you must remember. SSO eases user interaction with the available systems, components, and applications . After authentication , users can use the portal to access different systems without repeatedly entering their user information for authentication.

To use SSO login, set the Login Type to SSO Login and provide the values for Portal Host and Portal Port (which are mandatory for SSO login) in connection properties. When you add a BAPI function from an SSO enabled backend as an operation (along with BAPI import params list from backend), two additional input params such as username, password, and a header named SSO-TOKEN are generated by Quantum Fabric. Change the scope for username, password, and SSO-TOKEN from request to session.

NOTE: In SSO Login type, user must call LOGIN before invoking a BAPI function.

Non-SSO Login

To use NON-SSO login, the Login Type must be set to NON-SSO in connection properties. BAPI function of a NON-SSO enabled SAP backend is added as an operation (along with BAPI import param list from backend), two additional input params username and password are generated by Quantum Fabric. For every call, the BAPI function is invoked directly by passing the username and password. You can also invoke by changing the scope of username and password input parameters from request to session and using the LOGIN and LOGOUT operations.

This video tutorial walks you through steps to connect an application to your enterprise SAP system using SAP JCo connector.

Configure SAP JCo End-point Adapter

To configure your SAP JCO Service in the Integration Service Definition tab, follow these steps:

  1. In the Service Name field, enter a unique name for your service.
  2. From the Service Type list, select SAP JCO.
    By default, XML is selected. If you select SAP JCO, the Connection Parameters section appears.
  3. Provide the following details to create a SAP JCO Service:
    FieldsDescription
    Connection Parameters
    AuthenticationUse existing Identity Provider. Select SAP JCO Identity provider from the list.

    NOTE: For more information on Externalizing Identity Services, refer to Replace the Identity Service references in a Fabric app.

  4. NOTE: Additional configurations in the advanced section are optional.

  5. In the Description field, provide a suitable description for the service.
  6. Click Save to save your service definition.

Create Operations for SAP JCO

The Operations List tab appears only after the service definition is saved.

NOTE: Click Operations List tab > Configure Operation. The Configured Operations list appears. The New Operation window.

To create an operation, follow these steps:

  1. Click SAVE & ADD OPERATION in your service definition page to save your service definition and display the NewOperation tab for adding operations.
                        OR
    Click Add Operation to add a new operation or from the tree in the left pane, click Add > Add New Operation.

  1. Under the Operations List tab, click the list to display all the supported operations based on the uploaded SAP JCO file.

  2. Expand an operation and select the required check boxes.
  3. Click ADD OPERATION. The system adds your operation to the Operations List tab.

  4. To configure an operation, click on a service under Operations List and provide the following details:
  5. Field Description
    Name It is pre-populated with the operation name. You can change the name if required.
    Operation Security Level

    It specifies how a client must authenticate to invoke this operation.


  6. NOTE: Additional configurations in the advanced section are optional.

Configure Request Operation for SAP JCO

All the request input parameters must be form-url-encoded .

You can perform the following actions in Request Input tab:

  1. Click Add Parameter to add an entry (if the entries for input and the output tabs do not exist).

  2. To make duplicate entries, select the check box for an entry and click Copy and then click Paste.

  3. To delete an entry, select the check box for the entry and click Delete .

  4. Under the Body tab, perform the following actions:

    1. Select the Enable pass-through input body check box to forward the body of the client's request to the back end. For more details on API Proxy service, refer to How to Enable Pass-through Proxy for Operations.

    2. To configure the request input parameters, perform the following actions:
      FieldDescription
      NameIt contains a unique identifier. Change the name if required.
      Value

      Quantum Fabric provides four options while configuring an operation. Dependent identity services are auto populated when you edit this field, These options primarily determine the source of the header value .

      NOTE: The field is set to Request, by default.

      NOTE: For more information on Externalizing Identity Services, refer to Replace the Identity Service references in a Fabric app.

      Test ValueA test value is used for testing the service. Enter a value.
      Default ValueThe default value is used if the test value is empty. Enter a value, if required.
      DATA TYPE
      COLLECTION ID Collection is a group of data, also referred as data set. Enter a collection ID.
      RECORD ID

      Enter an ID.

      DESCRIPTIONProvide a suitable description.
  5. Click Header tab to provide the custom headers.

    You must provide the custom HTTP headers based on the operation. For example, POST or GET.

    1. To configure parameters in the client's header, perform the following actions:
      FieldDescription
      NameProvide custom HTTP headers required by the external source.
      Value

      Quantum Fabric provides four options while configuring an operation. Dependent identity services are auto populated when you edit this field, These options primarily determine the source of the header value .

      NOTE: The field is set to Request, by default.

      NOTE: For more information on Externalizing Identity Services, refer to Replace the Identity Service references in a Fabric app.

      TEST VALUEA test value is used for testing the service. Enter a value.
      DEFAULT VALUEThe default value will be used if the test value is empty. Change the syntax, if required.
      SCOPESelect request or session. The field is set to Request, by default.
      DescriptionEnter the Description for the request input.
  6. To validate the details, select the environment from the list and click Save and Fetch Response. Refer Test a Service Operation for the steps to test a service. The result of the operation appears.

Configure Response Operation for SAP JCO

Click the Response Output tab to configure the fields of the table for displaying the data.

In the Response Output tab, configure the fields of the table for displaying the data:

  1. The Name field in the Response Output tab is pre-populated with the properties of output schema.

    Enter the values for required fields such as name, path, scope, data type, collection ID, record ID, format, and format value.

    NOTE: If you define parameters inside a record as a session, the session scope will not get reflected for the parameters.

  2. To validate the details, click Test. Refer Test a Service Operation for the steps to test a service. The result of the operation appears.
  3. Click SAVE OPERATION.

    NOTE: You can view the service in the Data Panel feature of Quantum Visualizer. By using the Data Panel, you can link back-end data services to your application UI elements seamlessly with low-code to no code. For more information on Data Panel, click here.

NOTE: To use SAP JCO adapter in On-Premises environment, the following artefacts must be placed in the application server -

- sapjco3.jar
- sapjco.dll (if Quantum Fabric instance is on Windows) or libso.so (if Quantum Fabric instance is on Linux machine).
- SapJCoDestinationProvider.jar

sapjco3.jar and sapjco.dll/libso.so artefacts must be downloaded from SAP site.