Siebel Connector for SAP R/3 > EAI Queue > EAI Queue Usage with SAP R/3 tRFC >
Outbound from the Siebel Application
Figure 26 shows the current implementation of the EAI Queue when making tRFC calls from the Siebel application to SAP R/3.
Figure 26. Outbound from the Siebel Application Using tRFC
|
Figure 26 shows the flow of a business object from the Siebel database to the SAP database. From an EAI workflow, the EAI Siebel Adapter is invoked to extract data from the Siebel database corresponding to a Siebel business object definition. This data is used by the Siebel Adapter to create a Siebel integration object instance. This is passed through a transformation map service to create a BAPI input integration object instance. The BAPI input integration definition contains the structure of the data object to be passed to SAP in the tRFC call. When the tRFC BAPI Adapter receives the integration object instance it behaves in one of the following ways depending upon the setting of the SAPWriteXML component parameter:
- WriteNone. EAI Queue is not used, the data is sent directly to SAP.
- WriteOnErr. Should the network or SAP be unavailable or an error is returned from SAP upon the tRFC call, the data in transit is saved in the EAI Queue. If data cannot be saved in the queue an error is returned to the caller (usually workflow). It is then up to workflow to handle the error.
- WriteBeforeErr. Data in transit is stored in the EAI Queue prior to the call to SAP. If the network or SAP is unavailable or an error is returned from SAP upon the tRFC call, the data has already been saved in the EAI Queue and can be resent to SAP by the Send Transaction service. The caller receives an error only if the data cannot be saved in the queue initially. WriteBeforeErr always creates a queue entry regardless of error status.
- WriteOnly. Data in transit is placed in the EAI Queue and no immediate call is made to SAP to send the data. The Send Transaction service then sends the data at a later time. The caller receives an error only if the data cannot be saved in the queue.
Table 36 summarizes the possible status values for a data object stored in the queue during processing from the Siebel application to SAP in each of the preceding modes.
Table 36. Possible Status Values for EAI Queue Entries (Siebel to SAP)
|
|
Entry in EAI Queue (Status) |
|
SAP Network Error While Data Passed |
Entry in EAI Queue (Status) |
WriteOnly |
Success |
Yes (Initial) |
No |
|
|
Fail |
No |
No |
|
|
WriteNone |
Success |
No |
Yes |
Yes |
No |
No |
No |
Fail |
No |
No |
|
|
WriteOnErr |
Success |
No |
Yes |
Yes |
Yes (Initial or Sent) |
No |
No |
Fail |
No |
No |
|
|
WriteBeforeErr |
Success |
Yes (Initial) |
Yes |
Yes |
Yes (Initial or Sent) |
No |
Yes (Confirmed) |
Fail |
No |
No |
|
|
|