Siebel Connector for SAP R/3 > Customizing Integrations > Building the Interfaces >

Adding the SAP Interfaces


You need to use different Siebel business services depending upon the type of interface you are using with SAP. The following topics discuss the business services that you need in your workflow.

Siebel-to-SAP Interfaces

If you are creating a workflow which must make a synchronous BAPI/RFC call you need to add the BAPI Adapter business service to your workflow.

To make synchronous BAPI calls

  1. Add a business service step to your workflow.

    For specific instructions about how to modify workflows, see Siebel Business Process Designer Administration Guide.

  2. Use connector arrows to link the box into your flow.
  3. Set the following information for your business service step:
    • Enter the name of the business service workflow step.
    • Select EAI SAP BAPI Adapter as the business service for this step.
    • Select the Execute method.
  4. Enter appropriate input and output arguments.

    At a minimum you must pass an EAI SiebelMessage into the BAPI adapter which contains a BAPI input integration object you have created with the Integration Object wizard and the name of the output integration object to be created. You then also need a SiebelMessage output argument.

For more information on using the BAPI Adapter read BAPI Interfaces. Refer to workflows provided for the SAP standard integrations for examples.

If you are creating a workflow which must make an transactional RFC call, you need to add the tRFC BAPI Adapter business service to your workflow.

To make Transactional RFC calls

  1. Add a business service step to your workflow.

    For specific instructions about how to modify workflows, see Siebel Business Process Designer Administration Guide.

  2. Use connector arrows to link the box into your flow.
  3. Set the following information for your business service step:
    • Enter the name of the business service workflow step.
    • Select EAI SAP BAPI Adapter (tRFC) as the business service for this step.
    • Select the Execute method.
  4. Enter input and output arguments.

    At a minimum, you must pass an EAI SiebelMessage into the BAPI tRFC adapter that contains a BAPI input integration object you have created with the Integration Object wizard. No output integration object instance is created with a transactional RFC call.

The tRFC BAPI Adapter can be configured to use the EAI Queue to temporarily store data within the BAPI call for recovery in case of error during transit to SAP. For more information on using the tRFC BAPI Adapter read BAPI Interfaces.

If you are creating a workflow which must send an IDOC to SAP, you need to add the IDOC Adapter Business Service to your workflow.

To send IDOCs to SAP

  1. Add a business service step to your workflow.

    For specific instructions about how to modify workflows, see Siebel Business Process Designer Administration Guide.

  2. Use connector arrows to link the box into your flow.
  3. Double-click on the Business Service box to open the Business Service Arguments window.
  4. Set the following information for your business service step:
    • Enter the name of the business service workflow step.
    • Select EAI SAP IDOC Adapter as the business service for this step.
    • Select the Send method.
  5. Enter input and output arguments.

    At a minimum, you must pass an EAI SiebelMessage into the IDOC Adapter which contains an IDOC Integration Object you have created with the Integration Object wizard. Set the SAPSenderPtnrNum input argument as follows:

    • If executing the map in the server, set the SAPSenderPrtnrNum component parameter for the Business Integration Manager.
    • Within your map, set the sender partner field (SNDPRN) in the IDOC control record.
    • Set the literal value of the SAPSenderPrtnrNum input argument in the workflow.

The IDOC Adapter converts the IDOC to an RFC call and then invokes the tRFC BAPI Adapter. For this reason, this call can be configured to use the EAI Queue to temporarily store data within the IDOC for recovery in case of error during transit to SAP. For more information on using the tRFC BAPI Adapter with EAI Queue read BAPI Interfaces. For more information on using the IDOC Adapter read IDOC Interfaces. The SAP standard integrations provide examples of sending an IDOC to SAP.

SAP-to-Siebel Interfaces

The tRFC BAPI Receiver processes data that SAP sends. This component invokes a workflow to process the data. The tRFC BAPI Receiver may receive an IDOC or a tRFC call from SAP. In each case, the first step in a workflow invoked by the receiver is a Business Service Data Map that accepts an EAI Property Set in the form of a SiebelMessage containing an IDOC or BAPI Input Integration Object instance.

Figure 21 illustrates IDOC Processing and tRFC Call Processing. In IDOC Processing, data from SAP R/3 goes to the Siebel tRFC BAPI Receiver, which passes it to the IDOC Workflow Processor, which passes it a specific workflow (data dependent). This workflow consists of a Business Service Data Map and the Siebel Adapter. The Siebel Adapter then writes the data to the Siebel database. In tRFC Call Processing, data from SAP R/3 goes to the Siebel tRFC BAPI Receiver, which passes it a specific workflow (data dependent). This workflow consists of a Business Service Data Map and the Siebel Adapter. The Siebel Adapter then writes the data to the Siebel database.

Figure 21.  IDOC and tRFC Processing

In each case no specific adapter needs to be added to the workflow to interface to SAP as this interface occurs outside of the workflow.

When adding your business service data map to a Siebel workflow, you must create a process property in your workflow with the name SiebelMessage. This process property must then be an input to the initial business service data map. The services external to the workflow handles passing this SiebelMessage to your workflow and the process property of this name.

NOTE:  The SiebelMessage Process Property must be named "SiebelMessage", exactly as shown here. Do not use any spaces in the name. If the name is not correct, an error message results indicating that there are no children of type SiebelMessage in the property set passed to your workflow.

Receiving IDOCs from SAP

When receiving IDOCs from SAP there are two important configuration items to define:

  • The name of the workflow to be called upon receipt of the IDOC must be defined. This is usually done in the workflow user property of the IDOC integration object to be passed to workflow.
  • The names of IDOC integration objects that may be accepted by the IDOC workflow processor must be defined in the SAPIdocAllowedObjectnn user properties of the IDOC workflow processor business service.

For more information on configuration of user properties, read IDOC Interfaces.

Receiving tRFC Calls from SAP

When receiving a tRFC call from SAP there are two important configuration items to define:

  • The name of the Workflow to be called upon receipt of the tRFC call must be defined. This is usually done in the Workflow user property of the BAPI Input Integration Object to be passed to workflow.
  • The names of BAPI Input Integration Objects that may be accepted by the tRFC BAPI receiver must be defined in the RFCFunctionIntObjnn user properties of the tRFC BAPI receiver business service.

For more information on configuration of user properties, read BAPI Interfaces.

Siebel Connector for SAP R/3