PI101: Basic things you need know about PI

Foreword:-This blog is about SAP PI. It is an attempt to introduce various components of PI to beginners and functional consultants.

SAP Process Integration (SAP PI) or SAP Exchange Infrastructure (SAP XI) SAP Process Integration is a component of the SAP NetWeaver. It is used to exchange information within the organization’s internal software systems and external partner software systems.

SAP XI is a middleware broker that mediates between different systems with different requirements of data formats, protocols and communication methods.

Let’s look into the main components of the SAP PI frame work.

1)      System  Landscape Directory

2)      Integration Repository

3)      Integration  Directory

4)      Run Time Work Bench

Using transaction SXMB_IFR, one can see the components as displayed below

Screen 1System Landscape Directory: – In the System Landscape Directory, we register the metadata about the systems that will be integrated into the landscape. We create business systems, technical, systems, software components and products. Integration Repository uses the software components for developing mapping objects, message interfaces etc. Integration Repository uses business systems to configure the adapters and technical routing.

Integration Repository: – Using Integration Repository, we design the configuration of the interface.  During the design time, the user can use pre-defined interface objects or can define user interface objects.

The main interface objects are:

1)       Data Types

2)      Message Types

3)      Message Interfaces

4)      Message Mappings

5)      Interface Mappings

6)      External Definitions

Data Types: – Data types are the basic unit of the defining structure of the data for a message type and of the message to be exchanged. To create a message type, we use the defined data type. Data types are an XML Schema Definitions (XSD). There are different types of data types such as simple, complex, and built in.  Below is an example of a data type.

Screen 2

Message Types: – A message type consists of a data type that describes the structure of a message. It contains exactly one data type that determines the content of message to be transferred. One message type can be used in more than one message interface.

Message Interface: – Message interfaces are three types – Outbound Interface, Inbound Interface and Abstract Interface.  Outbound Interfaces are used to communicate with XI, which receives messages from senders. XI, in turn, uses Inbound Interfaces to route the messages to receivers. The Abstract Interfaces are used for communication between integration server and ccBPM. Further interfaces can be classified as Asynchronous and Synchronous depending on the message flow.

Message Mappings: – Message mapping refers to a mapping of messages that are to be transferred between the integrating systems. SAP PI functionality supports four kinds of mapping Graphical Mapping, ABAP Mapping, Java Mapping and XSLT Mapping. We will discuss extensively about these mappings in later blogs. Below is an example of Message Mapping.

Screen 3Interface Mapping: – Here we map the message Interfaces. An interface mapping looks as follows:

Screen 4External definitions: – If our integration scenario contains external objects, such as third party web services, then we import WSDL file under external definitions.

Integration Directory:- Integration Directory is a configuration tool that helps to configure the routing rules for the business scenarios created in Integration Repository. The ID binds the technical routing information to the interfaces via the communication channels. Communication channels contain the adapters which do the job of translating incoming message to XML and vice versa.

The main components of the ID are:

1)      Integration Scenario

2)      Business Systems/Services

3)      Communication Channels

4)      Receiver Determination

5)      Interface Determination

6)      Sender Agreement

7)      Receiver Agreement

Integration Scenario: – Here we model the integration scenario and process flow from sender system to the receiver system in the project landscape.

Business System/Service: – Business systems/Services are logical senders or receivers that exchange messages and that are entered in the System Landscape Directory. The business systems in the System Landscape Directory relate to a system landscape.  A business system is a way of specifying a communication component in the Integration Directory more precisely (business system component). Under the business system, we define the sender and receiver communication channels.

Communication Channels: – We define the rules for handling messages during inbound or outbound processing. A communication channel defines the type and configuration of the adapter used during inbound or outbound processing. Communication channels are defined under business systems/services. There are two types of communication channels Sender Communication Channel (contains the configuration data for a sender adapter) and Receiver Communication Channel (contains the configuration data for a receiver adapter). Configuration of communication channel looks as follows.

Screen 5

Adaptors: – Adapters connect the Integration Engine to SAP legacy systems, as well as to external systems. SAP PI supports many different adaptors such as IDOC, RFC, HTTP, Business Connector, File/FTP, JDBC, JSM, SOAP, MAIL, RNIF, CIDX and XI.

Receiver Determination: – Receiver Determination determines one or more receivers for a particular combination of sender and outbound interface. The picture shows a graphical view of Receiver Determination.

Screen 6Interface Determination: – Interface Determination determines which interface should be used for inbound message processing.

Screen 7

Sender Agreement: – Sender Agreement defines a binding between the sender communication channel and the outbound interface.

Screen 8Receiver Agreement:- The Receiver Agreement defines a binding between the receiver communication channel and the Inbound Interface.

Screen 9Runtime Workbench: – The Runtime Workbench is a tool to monitor PI and all of its components, messages and process centrally. Runtime Workbench is a single web-based interface that unifies all monitoring tools that are available in SAP PI. The monitoring tools that are available in Runtime Workbench are:

1)      Message Monitoring

2)      Component Monitoring

3)      End-to-End monitoring

4)      Performance Monitoring

5)      Alert Configuration

Message Monitoring: – Message monitoring can be used to find and diagnose errors with specific XI messages. This is available only for Asynchronous messages.

Component Monitoring: – The Runtime Workbench gives you a view of the availability and status of all XI components, including adapter engines. We can monitor Integration Engine, Adaptor Engine, Integration Directory, Integration Repository and Runtime Workbench.

Performance Monitoring: – Performance Analysis Tool shows performance statistics for user-defined selection criteria.

Alerting: – Message alerting allows you to set conditions for triggering alerts. This allows for notification of the correct parties for specific classes of errors.

End-to-End Monitoring: – Using end-to-end monitoring, we can monitor message processing steps in a number of components. We can monitor the path of individual messages through these components, from start to end.

Conclusion: – Well now we have basic interdiction of SAP PI. We will discuss simple real time interface scenarios using different adaptors in future blogs.

This entry was posted in Talk Techie to Me and tagged , , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s