SAP PI/PO Tutorial: Process Integration & Orchestration
What is SAP PI?
SAP PI (Process Integration) is an integration platform which provides seamless integration between SAP and non-SAP applications within the organization A2A (Application to Application) or even outside the organization B2B (Business to Business).
What is SAP PO?
SAP Process Orchestration is a tool to automate and optimize business processes. It combines features of SAP Business Process Management (BPM), SAP Process Integration(PI) and SAP Business Rules Management(BRM). In other words, it's more advanced version of SAP PI and has all the tools required to integrate applications.
Understanding SAP PI/PO with an Example
But this was a technical aspect of SAP PI, but to understand this better we will see the example of implementation of SAP PI.
Example: To understand the concept of SAP PI more clearly, we take an example of a large-scale Dairy Industry, which is operating in a large portion of a state and dominating the region. But there is some small-scale dairy industries operating in the same region, parallel to the large-scale industry which is not making a profit due to their price variation compare to large-scale industry. So to avoid the pricing conflict and maintaining the same price all over the region, large scale and small scale industry decide to link together, with the help of SAP PI. They interconnect with each other with the help of SAP PI and started to work as a single unit. Now, through SAP PI they are able to exchange all the information pertaining to dairy industry, including pricing and share an equal amount of profit.
Prior to SAP PI, business would connect with each other through point-to-point communication. But this process is not used for multiple and complex processes. For smooth communication between multiple businesses, Mediated communication or Integration broker is used, and SAP PI adapts this system very well. It enables interconnection of a different process via a central location known as Integration Broker, unlike the point to point connection which is more like a spider web. The integration broker or server is an integral part of mediated communication consist of Java based Advanced Adapter Engine (AAE) and an integration engine for routing. Mediated communication is based on an integration broker which is executed by exchanging XML messages.
Let see how SAP PI handles the XML messages by the help of Integration Broker. The exchange of data or message in SAP PI occurs in this four phases.
Message Transformation: During message exchange, it transforms the structure of the business data
Message Routing: Forwarding a message sent by a sender system to one or more receiver systems
Connectivity Adapters: Connecting the integration broker and receiver system, the adapter will transform the incoming message into an inbound message and later convert it to the format of the receiving system at the other end
Integration Processes: Cross component Business Process Management (ccBPM) consists of functions for enhanced service orchestration.
How SAP PI/PO works
SAP PI performs three basic functions
Connect: SAP PI has an ability to integrate with all application regardless of whether it is an application from a 3rd party or from the SAP. It uses the adapter framework to integrate 3rd party solutions.
Co-ordinate: It can define a path/workflow for each business transaction that is integrated. It ensures that each message is correctly delivered from the source to the target destination
Communicate: It can translate files into any format whether an internal file format or any business to business integration standard.
SAP PI/PO Architecture
SAP PI is not a single component responsible for the integration of SAP and Non- SAP application, but it is a cluster of components that together make SAP PI functional. This architecture of SAP PI or components is used during design time, configuration time and at run time. The various components of SAP PI include
System Landscape Directory: It is a central information provider in a system landscape. SLD contains two types of information, "Component Information (Installable & Installed) and Landscape description."
Integration Builder: It is a tool-set which contains a set of tools for accessing and editing integration objects
Integration Repository: To develop, design and maintain data types, message structures, mappings, interfaces, integration processes and integration scenarios independently of system landscape, integration repository is used.
Integration Server: It is a central processing engine of the PI. All messages are processed using this server.
Central Monitoring: With the help of this monitoring of PI domain is done, and "workbench" is the tool that is used for monitoring.
Adapter Engine: It acts as a connector to connect the integration engine to SAP systems and other systems.
Message Processing Technique by PI: To access data from SAP and Non-SAP application this technique is used. SAP PI uses an intermediate document like IDoc to Flat files to transfer their data.
Design: Process Integration (PI) uses integration repository to design message structure
Configuration: Integration Directory (ID) is used to configure technical parameters for objects created in IR ( Integration Repository)
Message Processing: Once the IDOC is activated in SAP system, PI takes in charge and convert messages into XML format for its internal processing
Message Monitoring: The messages can be monitored and traced using "Run Time Workbench". This tool can be useful in monitoring sender and receiver adapters, Outgoing and Incoming messages, End to End monitoring of complete scenario and error traces.
Connectivity: Proxy Framework & Adapter Framework
SAP PI connects with any external systems (SAP or Non-SAP) using the Adapter Framework. The adapter framework is based on the AS Java runtime environment and the connector architecture (JCA) version. The adapter framework consists of two default module chains if message processing is to be executed entirely within the adapter, default module chain for the adapter can be used.
One for the sender direction
One for the receiver direction
There are four types of Adapters used in SAP PI
File adapters: It exchanges files with external systems
JMS adapters: It communicates with a messaging system
SOAP adapters: It communicates with providers and clients of web services
JDBC adapters: It is an extended pack for SAP PI
Other interfaces supported by adapter framework are
Configuration Services ( API and Adapter metadata xsd)
Various service APIs provided by Adapter framework- Thread Manager, Transaction Manager)
Adapter framework includes a message audit log API. The API can be used for the technical trace and logging to write trace statements that describes the execution of the code.
How adaptor framework works?
The data is received from the wire through a receive location that is listening for messages at certain protocol at a specified address
After the message is received by the receive location, a message is sent to the adapter. It creates a new BizTalk message, attaches the data stream to the message.
It adds any meta-data pertaining to the end-point over which the data was received and then the message is submitted to the message engine
Message engine sends the message to the receive pipeline where the data is transformed into XML, here the message sender is authenticated, a message is decrypted and the XML is validated
Next, the messaging engine published the message to the message box. The message box is a Microsoft SQL table containing messages to be processed
The messaging engine sends the message to either the orchestration or send port.
SAP PI/PO Security
For messages, SAP PI provides the message level security for XI message protocol, for the SOAP adapter, for the RosettaNet protocol, for mail adapter, for the CIDX protocol and for connectivity with WSRM (Web Service Reliable Messaging) enabled systems. In SAP PI message level security enabled through the use of encryption, digital signature, SAML Assertion, Username token, Certificate token, etc. Authentication methods supported by WS infrastructure for transport level includes basic authentication (Password and Username), SAP assertion ticket, and HTTP over SSL.
Connecting Integration Server with WSRM (Web Service Reliable Messaging) Enabled System
To connect with WSRM enabled system you use a communication channel of adapter type WS.
You use a sender agreement with an assigned WS sender adapter to connect the Integration Server to a WS consumer
You use a receiver agreement with an assigned WS receiver adapter to connect the integration server to a WS provider
Benefits of Security in SAP PI/PO
Permissions of the receiver application are checked against the original user
In the receiver system, a user can be audited
Dynamic configuration at the PI receiver channel
New Features in SAP PI/PO
The new features in SAP PI include
Centralized monitoring based on SAP solution manager.
Very large (binary) file to file transfer
IDOC ( Intermediate Document ) and HTTP adapters in AAE (Advance Adapter Engine)
User Centric perspective in the ESR
Interface and Mapping based message split on AAE
Time Out configuration per communication channel
Automated Transport for Schema Validation
Replacing Trex, user-defined message search
User Centric perspectives in the ESR
Add-on for SAP PI: Secure Connectivity add-on (SGTP Adapter, PGP module) & B2B add-ons (OFTP adapter, AS2 adapter, EDI separator, EDI XML converter etc.)
Advantages of SAP PI/PO
In comparison to any other middleware product monitoring in SAP PI is better. It offers monitoring features like a message, performance, component monitoring and so on, all of which can be used to track and rectify the errors.
SAP PI supports various SAP components which are required while integrating with SAP PI
Adapters and mappings are good as compared with any other middleware product
Asynchronous and Synchronous communication is possible
SAP PI vs. BizTalk
Mostly used only by SAP customers to enable SOAP-based integration
BizTalk is completely built on .Net, certified by Microsoft and SAP to Integrate with SAP directly without the need of any middleware
ESB product designed and implemented to integrate SAP systems with Non- SAP Systems
More generalized product, ability to integrate a variety of systems including SAP and other products
SAP PI has pre-delivered message monitoring system
SAP PI can do multiple data transfer
In SAP PI automation can be manual as well as scheduled
SAP uses net weaver portal solution
BizTalk uses MS SharePoint as a portal solution
SOA architecture paradigm for SAP is eSOA ( Enterprise Service Oriented Architecture)
SOA is on basis of .NET and BizTalk
SAP PI Base Engine is priced based on the overall processed message volume expressed in Gigabytes/month. SAP PI is free to use between SAP-to-SAP
MS BizTalk server is priced based on the server capacity. It has four different version Enterprise, Standard, Branch, and Developer
When SAP PI/PO is not recommended in enterprise SOA (Service Oriented Architecture)
SAP PI is not recommended for synchronous communication as it will put a significant load on the infrastructure service for servicing asynchronous request
SAP PI is not recommended for UI driven scenarios if the backend is exposed as enterprise services
SAP PI is not needed for intermediation if a non-SAP backend like J2EE or .NET platform is exposing business services in a UI scenario