Siebel Connector for SAP R/3 > EAI Queue > EAI Queue Usage with SAP R/3 tRFC >

Inbound to the Siebel Application


Figure 27 shows the current implementation of the EAI Queue when making tRFC calls from SAP R/3 to the Siebel application. The SAP Application Server extracts a record from the SAP database, and sends it to Siebel's tRFC BAPI Receiver which forwards it to the EAI Queue. The EAI Queue then forwards the record to a Process Transaction Service, which sends it to the tRFC BAPI Receiver which creates a BAPI Input Integration Object. This object goes to a workflow, which consists of a business service data map and the Siebel EAI Adapter. The adapter writes the record to the Siebel database.

Figure 27.  Inbound to the Siebel Application Using tRFC

Figure 27 shows the flow of a business object from SAP to the Siebel database. When SAP makes a tRFC call to the Siebel Connector for SAP R/3, it is received by the tRFC BAPI Receiver. This receiver is responsible for invoking the correct workflow for this particular tRFC call.

The data object transferred to the Siebel application in the form of the tRFC call may be saved in the EAI Queue depending upon the success or failure of workflow processing and the value of the SAPWriteXML component parameter. The possibilities are as follows:

  • WriteNone. EAI Queue is not used, and a workflow is invoked. If an error occurs in workflow the error shows up in the tRFC layer in SAP.
  • WriteOnErr. When a call is received from SAP and an error occurs in the workflow invoked in the Siebel application, the data in transit is saved to the EAI Queue. If the data cannot be saved in the queue, an error is returned to the tRFC layer in SAP. If the data is saved in the queue successfully, no error is returned to SAP and error handling occurs in the Siebel application.
  • WriteBeforeErr. When a call is received from SAP, the data is immediately saved in the EAI Queue. The workflow is then invoked in the Siebel application, and if it fails the data is reprocessed by a Process Transaction Service at a later time. An error is returned to the tRFC layer in SAP only if the data cannot be saved in the queue initially. WriteBeforeErr always creates a queue entry regardless of error status.
  • WriteOnly. When a call is received from SAP, the data is immediately saved in the EAI Queue and no immediate attempt is made to call workflow. The workflow is invoked at a later time by a Process Transaction Service. An error is returned to the tRFC layer in SAP only if the data cannot be saved in the queue.

Table 37 summarizes the possible status values for a data object stored in the queue during processing from SAP to the Siebel application in each of the preceding modes.

Table 37.  Possible Status Values for EAI Queue Entries (SAP to the Siebel Application)
Inbound from SAP
Result of Workflow
SAP Network Error
Entry in EAI Queue (Status)
Transaction Errors in tRFC Layer

WriteOnly

N/A

N/A

Yes (Initial)

No

WriteNone

Success

N/A

No

No

Failed

N/A

No

Yes

WriteOnErr

Success

N/A

No

No

Failed

N/A

Yes (Initial)

No

WriteBeforeErr

Success

No

Yes (Confirmed)

No

Yes

Yes (Initial or Processed)

No

Failed

 

Yes (Initial)

No

Siebel Connector for SAP R/3