SAP

Use the IBM® App Connect Enterprise Toolkit to configure message flow nodes that are converted from the IBM App Connect Professional SAP activities.

About this task

When you import an orchestration that contains SAP activities, the conversion utility creates a message flow with the SAPRequest, SAPInput and SAPReply nodes. See Table 1, for information on which nodes are used for each of the activities.

Table 1. IBM App Connect Professional SAP activities and the corresponding IBM App Connect Enterprise message flow nodes
IBM App Connect Professional activity IBM App Connect Enterprise node
Invoke RFC

SAPRequest node

Invoke BAPI

SAPRequest node

Receive IDOC

SAPInput node

Send IDOC

SAPRequest node

Receive RFC

SAPInput node

Send RFC Response

SAPReply node

The SAP connector facilitates seamless two-way communication between IBM App Connect Professional and the SAP instance. It supports both outbound and inbound activities, with the following nodes in IBM App Connect Enterprise:
  • The Outbound activities, which are carried out with the SAPRequest node in IBM App Connect Enterprise:
    • Invoke BAPI is carried out with the SAPRequest node, which enables sending BAPI calls to the SAP system.

    • Invoke RFC is carried out with the SAPRequest node, allowing the execution of Remote Function Calls (RFC) in IBM App Connect Enterprise.

    • Send IDOC is carried out with the SAPRequest node, facilitating the transmission of Intermediate Documents (IDoc) to SAP.

  • Inbound activities, which are carried out with the SAPInput and SAPReply nodes in IBM App Connect Enterprise):
    • Receive IDOC is carried out with the SAPInput node, which accepts IDoc messages from the SAP system.

    • Receive RFC is carried out with the SAPInput node, which accepts Remote Function Calls (RFC) from SAP system

    • Send RFC Response is handled by using the SAPReply node, which works alongside the SAPInput node to implement message flows, which act as Remote Function Call (RFC) destinations.

    • act as

SAPRequest node for outbound activities: Invoke BAPI and Invoke RFC

Procedure

  1. Select the SAPRequest node in the message flow, right-click the node, and select the option Open adapter component from the menu, as shown in the screenshot.
    Screenshot showing a context menu with Open Adapter Component highlighted

    In the dialog that appears, select Import/Create New to configure the adapter component.

    Interface for selecting an adapter file
  2. After selecting Import/Create New, the following screen appears, click Next to proceed.
    Screenshot showing interface for configuring setting. IBM WebSphere Adapter for SAP Software with transaction support is highlighted
  3. The Connector import screen appears as shown in the screenshot, click Next to continue.
    Connector import screen with input box for connector project name. Next button is highlighted
  4. On the Connector settings screen, browse and select the required SAP third-party libraries that are stored on your system. For the Library file msvcr71.dll, select it from the IBM App Connect Enterprise installation path.
    C:\Program Files\IBM\ACE\13.0.0.0\tools\plugins\com.ibm.etools.cobol.win32_7.0.1000.v20150129_0711\importer\cobol\msvcr71.dll.

    With all the fields populated, click Next to proceed.

    Interface for specifying the dependency libraries. All 4 input boxes are populated with filepaths
  5. Provide the SAP server connection details and Object information. This information includes the following details: Host name, System number, Client, Language code, User name, and Password, SAP interface name, referring to the generated message flow documentation for accuracy. In SAP interface name, select the object type that you want to work with. In this case, BAPI. This option is used to invoke BAPIs and RFC-enabled function modules on the SAP system. Verify the details and click Next to proceed to the next configuration step.
    Interface for specifying discovery agent properties. The BAPI checkbox is selected.
  6. Follow these steps to invoke only the RFC:
    1. Click the filter icon and provide the object pattern as shown in the screenshot. Then, click OK to apply the filter.
      Screenshot showing properties set to "Discover objects by name" with the pattern: "BAPI_BANK" at a maximum of 25 objects to retrieve
      Expand the RFC node and select BAPI_BANK_GETDETAIL object from the metadata tree and click >. A pop-up appears containing configuration properties. Click OK to proceed as shown in the screenshot.
      Screenshot showing list configuration properties that are selected. Optional parameters is highlighted.
    2. BAPI_BANK_GETDETAIL has been added to the Objects to be imported section, click Next to proceed.
      Screenshot of window with list of objects discovered in query in one column and one item in Objects to be imported in another column. BAPI_BANK_GETDETAIL is highlighted
  7. Follow these steps to invoke only BAPI:
    1. Click the filter icon and provide the object pattern as shown in the screenshot. Then, click OK to apply the filter.
      Screenshot showing interface for specifying filter properties
    2. Expand the BOR node, and select Bank > GetDetail object from the metadata tree and click > icon. A pop-up appears containing configuration properties. Click OK to proceed as shown in the screenshot.
      Screenshot showing list configuration properties that are selected. Optional parameters is highlighted.
    3. Bank > GetDetails has been added to the Objects to be imported section, click Next to proceed.
      Screenshot of window with list of objects discovered in query in one column and one item in Objects to be imported in another column. GetDetail is highlighted
      The rest of the steps apply for both invoke RFC and BAPI activities.
  8. Select the option according to the requirement and click Next to proceed.
    Interface for specifying properties. There is a list of options for Business object namespace. Synchronous RFC is highlighted.
  9. Provide the SAP server password in the designated field (other details are auto-populated). Then, click Next to proceed.
    Interface for specifying connection properties with input boxes completed
  10. Provide a suitable name for the Adapter component name field and click Finish.
    Interface for specifying properties for creating and running the J2C bean
  11. Go to the Properties tab > Basic section. Click Browse next to the Primary adapter component field. In the wizard that appears, select the adapter component that is specified in step 10 and click OK to confirm.
    Interface for selecting adapter files
  12. The selected option is now populated as in the screenshot. Save the message flow to ensure that the changes are applied and retained.
    Interface showing SAP Request node properties

SAPInput node for receive IDOC activity

Procedure

  1. Select the SAPInput node in the message flow, right-click the node, and select the option Open adapter component from the menu, as shown in the screenshot.
    Screenshot showing a context menu with Open Adapter Component highlighted

    In the dialog that appears, select Import/Create New to configure the adapter component.

    Interface for selecting an adapter file
  2. After selecting Import/Create New, the following screen appears, click Next to proceed.
    Screenshot showing interface for configuring setting. IBM WebSphere Adapter for SAP Software with transaction support is highlighted
  3. The Connector import screen appears as shown in the screenshot, click Next to continue.
    Connector import screen with input box for connector project name. Next button is highlighted
  4. On the Connector settings screen, browse and select the required SAP third-party libraries that are stored on your system. For the Library file msvcr71.dll, select it from the IBM App Connect Enterprise installation path.
    C:\Program Files\IBM\ACE\13.0.0.0\tools\plugins\com.ibm.etools.cobol.win32_7.0.1000.v20150129_0711\importer\cobol\msvcr71.dll.

    With all the fields populated, click Next to proceed.

    Interface for specifying the dependency libraries. All 4 input boxes are populated with filepaths
  5. Provide the SAP server connection details and Object information. This information includes the following details: Host name, System number, Client, Language code, User name, and Password, SAP interface name, referring to the generated message flow documentation for accuracy. In SAP interface name, select the object type that you want to work with. In this case, ALE. This option is used to receive data from the SAP system through IDocs to provide structured data. Verify the details and click Next to proceed to the next configuration step.
    Interface for specifying discovery agent properties. The BAPI checkbox is selected.
  6. Filter for ALEREQ01 and set the filter properties as in the screenshot. Then click OK
    Screenshot showing properties set to "Discover objects by name" with the pattern: "ALEREQ01". IDoc type set to "Basic IDocs" at a maximum of 25 objects to retrieve
  7. Expand Discover IDoc from system, select ALEREQ01, move it to the Objects to be imported, by clicking > .
    Screenshot of window with list of objects discovered in query in one column and one item in Objects to be imported in another column. ALEREQ01 is highlighted
  8. A pop-up appears containing configuration properties. Configure the parameters according to the requirement and click OK to proceed as shown in the screenshot.
    Screenshot showing list configuration properties that are selected. The ALEREQ01 checkbox is selected
  9. ALEREQ01 has been added to the Objects to be imported section, click Next to proceed.
    Screenshot of window with list of objects discovered in query in one column and one item in Objects to be imported in another column. ALEREQ01 is highlighted
  10. Select the required service operation from the drop-down, for example create, and click Add. In the dialog box that appears, select the appropriate IDoc identifier (for example MessageType=ALEREQ; MessageCode=01) according to the requirement and click OK to confirm.
    Screenshot of window with list of objects to select from. MessageType=ALEREQ; MessageCode=01 is highlighted
  11. Verify the details and click Next to proceed.
    Screenshot of interface for specifying object properties. MessageType=ALEREQ; MessageCode=01; MessageFunction=; is highlighted
  12. Provide the SAP server password and RFC program ID in the designated field. Use the details that are found in the generated message flow documentation. Verify that all other details, such as host name, gateway host, client, and system number, are accurate, and align with the information in the documentation. Once you have entered and verified all the details, click Next to proceed.
    Interface for specifying connection properties with input boxes completed
  13. Provide a suitable name for the Adapter component name field and click Finish.
    Interface for specifying properties for creating and running the J2C bean
  14. Go to the Properties tab > Basic section. Click Browse next to the Primary adapter component field. In the wizard that appears, select the adapter component that is specified in step 13 and click OK to confirm.
    Interface for specifying the adapter modeInterface for selecting adapter files
  15. The selected option is now populated as in the screenshot. Save the message flow to ensure that the changes are applied and retained.
    Interface showing SAP Request node properties

SAPRequest node for send IDOC activity

Procedure

  1. Repeat steps 1 to 4 from SAPRequest node for outbound activities: Invoke BAPI and Invoke RFC
  2. Provide the SAP server connection details and Object information. This information includes the following details: Host name, System number, Client, Language code, User name, and Password, SAP interface name, referring to the generated message flow documentation for accuracy. In SAP interface name, select the object type that you want to work with. In this case, ALE. This option is used to send structured IDOC data to the SAP system. Verify the details and click Next to proceed to the next configuration step.
    Interface for specifying discovery agent properties. The ALE checkbox is selected.
  3. Filter for ALEREQ01 with the filter option. Expand Discover IDoc from system, select ALEREQ01, and move it to the Objects to be imported column, by clicking > .
    Screenshot of window with list of objects discovered in query in one column and one item in Objects to be imported in another column. ALEREQ01 is highlighted
  4. Configure the parameters according to the requirement and click OK.
    Screenshot showing list configuration properties that are selected. The ALEREQ01 checkbox is selected
  5. With the object selected, click Next.
    Screenshot of window with list of objects discovered in query in one column and one item in Objects to be imported in another column. ALEREQ01 is highlighted
  6. When the wizard pops up, click Next
    Interface for specifying object properties
  7. Provide the SAP server password in the designated field. Use the details that are found in the generated message flow documentation. Verify that all other details, such as host name, gateway host, client, and system number, are accurate, and align with the information in the documentation. Once you have entered and verified all the details, click Next to proceed.
    Interface for specifying connection properties with input boxes completed
  8. Provide a suitable name for the Adapter component name field and click Finish.
    Interface for specifying properties for creating and running the J2C bean
  9. Go to the Properties tab > Basic section. Click Browse next to the Primary adapter component field. In the wizard that appears, select the adapter component that is specified in step 8 and click OK to confirm.
    Interface for specifying the adapter modeInterface for selecting adapter files
  10. The selected option is now populated as in the screenshot. Save the message flow to ensure that the changes are applied and retained.
    Interface showing SAP Request node properties

SAPInput node for receive RFC activity

Procedure

  1. Repeat steps 1 to 4 from SAPInput node for receive IDOC activity
  2. Provide the SAP server connection details and Object information. This information includes the following details: Host name, System number, Client, Language code, User name, and Password, SAP interface name, referring to the generated message flow documentation for accuracy. In SAP interface name, select the object type that you want to work with. In this case, BAPI. Verify the details and click Next to proceed to the next configuration step.
    Interface for specifying discovery agent properties. The BAPI checkbox is selected.
  3. Click Filter and provide the object pattern as shown in the screenshot. Then, click OK to apply. Expand the RFC node and select BAPI_BANK_GETDETAIL object from the metadata tree and click >. A pop-up appears containing configuration properties. Click OK to proceed as shown in the screenshot.
    Screenshot showing properties set to "Discover objects by name" with the pattern: "BAPI_BANK" at a maximum of 25 objects to retrieve
    A pop up appears containing configuration properties. Click OK to proceed as shown in the screenshot.
    Screenshot showing list configuration properties that are selected. Optional parameters is highlighted.
  4. BAPI_BANK_GETDETAIL has been added to the Objects to be imported section, click Next to proceed.
    Screenshot of window with list of objects discovered in query in one column and one item in Objects to be imported in another column. BAPI_BANK_GETDETAIL is highlighted
  5. Select the option according to the requirement and click Next to proceed.
    Interface for specifying properties. Synchronous RFC is selected.
  6. Provide the SAP server password and RFC program ID in the designated field. Use the details found in the generated message flow documentation. Verify that all other details, such as host name, gateway host, client, and system number, are accurate, and align with the information in the documentation. Once you have entered and verified all the details, click Next to proceed.
    Interface for specifying connection properties with input boxes completed
  7. Provide a suitable name for the Adapter component name field and click Finish.
    Interface for specifying properties for creating and running the J2C bean
  8. Go to the Properties tab > Basic section. Click Browse next to the Primary adapter component field. In the wizard that appears, select the adapter component that is specified in step 8 and click OK to confirm.
    Interface for specifying the adapter modeInterface for selecting adapter files
  9. The selected option is now populated as in the screenshot. Save the message flow to ensure that the changes are applied and retained.
    Interface showing SAP Request node properties

SAPReply node for send RFC activity

About this task

Note: No configuration changes are required in the SAPReply node for this migration.

Procedure

  1. Create the integration node and start it.
  2. Set the location of the SAP prerequisite files by using the following command:
    mqsichangeproperties SAPNode -c EISProviders -o SAP -n jarsURL,nativeLibs -v "C:\SAPLibs JARS","C:\SAPLibs JARS"
    Then restart the integration node.
  3. Use the mqsireportproperties command to verify the locations of the prerequisite JAR files and local libraries:
    mqsireportproperties SAPNode -c EISProviders -o SAP -r
  4. Right-click the integration node and create an integration server.
  5. Deploy the created application to the integration server.