Show TOC

ObjectCommunication Pattern

 

A communication pattern defines the choreography of a single interaction between the communication partners and defines which messages types are exchanged as request and response. Four patterns for communication between a SAP application and another application have been implemented, as can be seen in the following figure.

Communication Patterns

This graphic is explained in the accompanying text.

 

The patterns can be categorized into patterns for transactional processing of data and patterns for data retrieval or information syndication. Patterns of the first category are used to change data of SAP applications, while patterns of the second category are only used for retrieving data or information.

Transactional Data Processing

  • Request/Confirmation: The basic pattern for transactional processing is called request/confirmation. It assumes that a Web service request is sent from another application to a SAP application. The confirmation of the execution of the Web service is returned either immediately (synchronously) or later (asynchronously).

  • Notification: A second pattern for transactional processing is called notification. Here, the other application sends a notification message to the SAP application. This message leads to data changes. In contrast to the request/confirmation pattern, no response is sent.

Data Retrieval and Information Syndication

  • Query/Response: The basic data provisioning pattern is called query/response. Another application requests some data from a SAP application in a read-only form, specified by a query. Query/response communication can be either synchronous or asynchronous.

  • Information: A second data provisioning pattern is the information pattern, which informs other registered applications of data changes in a SAP application. The difference to the notification pattern is that the information message is typically sent to a list of subscribed receivers, and the receivers do not take immediate action upon the information received. No response to the information message is expected.

All communication patterns can be used in the outbound scenario as well. Communication patterns are realized by invoking Web services. Therefore, an application which is a consumer (or provider respectively) in a communication pattern need not always be a consumer on the level of Web service invocations but may also provide Web services that are required for the communication pattern (see figure).

The example in the above figure shows the asynchronous realization of a query/response communication pattern. On communication pattern level, a consumer sends a query to a provider and receives a response. On the Web service invocation level both communication partner consume and provide Web service.

To distinguish between the two levels, in this document inbound (or outbound) scenario refers to the communication pattern level and inbound (or outbound) call refers to the Web service invocation level. An inbound (or outbound) scenario may comprise inbound and outbound calls.