SAP Invoke RFC activity

Use the SAP Invoke RFC activity to call a Remote Function Call (RFC), that is remotely enabled at the specified SAP endpoint, during run time.

Note: To connect to the SAP System from Studio, you must download and install the SAP Jar files and DLLs onto your Window's development machine. For more information, see Downloading and installing the SAP Jar Files and DLLs.

Adding a SAP Invoke RFC activity to the orchestration

  1. Create or open an orchestration. A graphical representation of the orchestration is displayed.
  2. Select the Activities tab and expand the SAP folder.
  3. Drag the SAP Invoke RFC activity onto the orchestration.
  4. Select the activity. The Checklist is displayed.

Creating, selecting, or editing a SAP endpoint

  1. Click Pick Endpoint task from the Checklist and choose from one of the following actions:
    • Select an existing endpoint:
      1. Select Browse. The Project Explorer is displayed.
      2. Select an existing endpoint and click OK. Go to the Configuring the activity procedure.
    • Select an existing endpoint and edit the endpoint:
      1. Select Browse. The Project Explorer is displayed.
      2. Select an existing endpoint and click OK.
      3. Click Edit. The Edit Endpoint panel is displayed.
    • Create a new endpoint: Select New. The Create Endpoint panel is displayed.
  2. Create or Edit a SAP endpoint.

Configuring the activity

  1. Select the Configure task from the Checklist. The Configure panel is displayed.
  2. In the RFC Name field, click Browse.... The RFC List dialog box is displayed.
  3. In the RFC Search Function field, enter a combination of characters and the * wildcard character to find the desired RFC name as shown in the following examples:
    • AB* —Finds all the RFC whose names begin with the AB prefix.
    • AB*TRANSACTION —Finds all the RFC whose begin with the AB prefix and end with the string: TRANSACTION.

      The SAP system is interrogated and the RFC names that match the wildcard expression are listed in the Matching SAP Functions table.

  4. From the Matching SAP Functions table, select one of the SAP Functions and click OK.

Specifying the retry options

  1. Select the Retry task from the Checklist. The Retry panel is displayed.
  2. Configure the retry options for connecting to an SAP System. The following table describes the retry options for connecting to an SAP System:  
    Retry options Description
    1) Wait ___ seconds between each retry. Specifies the number of seconds that the Integration Appliance waits before trying to establish a connection to the SAP System.
    2) Try to connect ___ times before failing. Specifies the maximum number of times the Integration Appliance attempts to establish a connection to the SAP System before issuing an error and stopping the processing of the current orchestration job. If you deploy an orchestration that contains an SAP Invoke RFC activity and the Integration Appliance cannot connect to the specified SAP System, the Integration Appliance logs the connections errors as warnings in the system and orchestration logs until the retry count value is reached. When the retry count is reached, the Integration Appliance logs an error in the system and orchestration logs and the stops processing the current orchestration job. For example, you set the retry count to 3. The first, second, and third connection errors appear in the system log as warnings. The Integration Appliance logs the fourth connection error as an error and stops processing the current orchestration job.

Mapping the inputs of the activity

  1. Select the Map Inputs task in the Checklist. The XML Schemas generated from the input parameters of the RFC are displayed as nodes under the request input parameter in the To Activity pane. In addition if the RFC contains tables, the XML Schemas representing the tables of the RFC, are displayed as nodes under the request input parameter in the To Activity panel.
  2. Create a map between orchestration variables and the RFC input parameters and tables. See Creating a map for general instructions on mapping.

    Values must be provided at run time for any mandatory elements of the RFC input parameters or tables. A value can be provided by specifying a default value for the element or by linking the element with input node. During run time if no value is provided for a mandatory element, the activity throws an exception during run time which is reported by the Web Management Console (WMC). If a value is not provided at run time for an optional element of the RFC input parameters or tables, no exception is thrown during run time.

Transaction Options:

  1. In the Map Inputs of the activity, right click the To Activity section and select Show Optional Parameters. A variable transactionOptions appears in the map input. This property is available from Cast Iron Studio version 6.1.0.12 only.
  2. Select one of the following values:
    Note: If you do not set any value for the transactionOptions property, the COMMIT_HANDLED_BY_RFC value will be used.
    Table 1.
    Value Description
    COMMIT_HANDLED_BY_RFC The commit of RFC is taken care by the RFC itself. The connector does not do any explicit commit calls.
    COMMIT_TRANSACTION_AFTER_COMPLETION During run time, the SAP connector calls the RFC and waits for a return message from the SAP System. The return code of the message returned by the SAP system determines if the SAP connector sends another call requesting the SAP system to commit or rollback the transaction:
    • If the return code passed from the RFC indicates success, the SAP connector makes another call requesting the SAP system to commit the transaction, and immediately starts processing the next activity in the orchestration.
    • If the return code passed from the RFC indicates failure, the SAP connector makes a rollback request to the SAP system, and immediately starts processing the next activity in the orchestration.
    COMMIT_TRANSACTION_AND_WAIT_UPON_COMPLETION During run time, the SAP connector invokes the RFC and waits for a return message from the SAP system. The return code of the message returned by the SAP system determines if the SAP connector sends another message requesting the SAP system to commit or rollback the transaction:
    • If the return code passed back from the RFC indicates success, the SAP connector makes another call requesting the SAP system to commit the transaction. The orchestration waits until the SAP System sends a second message indicating that the transaction has been committed before processing the next activity in the orchestration.
    • If the return code passed back from the RFC indicates failure, the SAP connector makes a rollback request to the SAP system. The orchestration waits until the SAP system sends a second message indicating that the rollback of the transaction has occurred before processing the next activity in the orchestration.
  3. After the transaction operations are selected, fill in the input data for RFC.
The SAP connector also supports dynamic endpoint connection to a different SAP system. During run time, add optional parameters in sapConnectionProperties of map inputs, if you want to dynamically connect to an SAP system other than the one configured in the endpoint panel, if you want to connect to the same SAP system with a different user name and password other than the fields used in the endpoint panel, or if you want a different SSO token other than the one added in the endpoint panel. The parameters of sapConnectionProperties are described in the following table:
Table 2. Connection properties
Optional parameter Description
sapConnectionProperties parameters
hostName Specifies the IP Address or the machine name that contains the SAP system.
systemNumber Specifies the number that identifies the specific instance of the SAP system that Studio should connect to. Your SAP administrator must supply this information.
client Specifies a number that identifies Studio and the Integration Appliance as a client for the SAP system. Your SAP administrator must supply this information.
language Specifies the message language option for SAP. For example, EN is the ISO code for English.
basicAuthentication parameters
username Specifies the user name to use when connecting to the SAP system.
password Specifies the password to the user name when connecting to the SAP system.
ssoAuthentication parameters
ssotoken Specifies the single sign-on (SSO) token.
sncAuthentication parameters
sncmode Specifies if the Secure Network Connections (SNC) mode is enabled.
sncname Specifies the distinguished name of the SNC connection.
partner Specifies the distinguished name of the SNC partner.
qop Specifies the level of security of SNC.
X509 Certificate Specifies the X509 certificate to be used as the logon ticket. This field is optional only if Username/Password based authentication is used with SNC.
connectionPool parameters
maximumConnections Specifies the additional SAP connections, up to the specified amount, which the Integration Appliance opens based on the message load.
maxIdleTime Specifies the number of minutes that a SAP connection can be open and idle before being closed by the Integration Appliance.

Mapping the outputs of the activity

  1. Select the Map Outputs task in the Checklist. The XML Schema generated from return types of the RFC are displayed as nodes under the request output parameter in the From Activity panel. In addition, if the RFC contains tables, the XML Schemas representing the tables are displayed as nodes under the request node in the From Activity.
  2. Create a map between the RFC output parameters and tables and orchestration variables. See Creating a map for general instructions on mapping.

Note about Deploying a SAP Orchestration

Before you can deploy an orchestration with SAP activities using the WMC, the Integration Appliance must first be able to establish a connection to the SAP System. If the Integration Appliance is unable to establish the connection to the SAP System, the orchestration is not deployed.




Feedback | Notices


Timestamp icon Last updated: Wednesday, February 17, 2016


http://pic.dhe.ibm.com/infocenter/wci/v7r0m0/topic/com.ibm.wci.doc/SAP_Invoke_RFC_Activity.html