In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-02-25 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Internet Technology >
Share
Shulou(Shulou.com)06/01 Report--
Today I will show you how to get started with SAP PI. The content of the article is good. Now I would like to share it with you. Friends who feel in need can understand it. I hope it will be helpful to you. Let's read it along with the editor's ideas.
What is SAP ERP for getting started with SAP PI
For any business, large or small, there will be standard business functions that must be performed, such as material management (MM), sales and distribution (SD), finance (FI), human resources (HR), and so on. There are a lot of software on the market that are being used by the industry. A simple example: if you go to a small store under a large retail store or hotel and they run on the ERP system, the cashier machine can generate sales invoices via ERP.
For most business implementations, enterprise resource planning (Enterprise Resource Planning,ERP) is an effective way to improve productivity and performance. SAP ERP is an enterprise resource planning (ERP) launched by SAP. It is an integrated software solution that integrates the key business functions of the organization. Basic functions include: HR,MM,SD,FICO, etc., which are called business modules in SAP. SAP builds them into products and sells them on the market. There are two (or more) modules that do not directly support business functions but are used for presentation and integration. The former is called EP (Enterprise Portal) and the latter is called PI (process Integration). All business modules are developed by ABAP, but these two modules are mainly developed by Java. These modules are not executable files, but need to be deployed and run on the application server.
Before we get to the subject, we need to recognize these points:
SAP represents some systems, applications, and products used for data processing.
SAP AG is a German multinational software company engaged in manufacturing management business operations and customer relations of enterprise software. SAP ERP is the company's enterprise resource planning, an integrated software solution that integrates the organization's key business functions.
SAP NetWeaver Process Intergration (SAP PI) is SAP's enterprise application integration (EAI) software, which is a component of the NetWeaver product group, which is used to help the internal software of the company, the exchange of information between systems, and the exchange of information with the outside.
Back to the top.
Legacy system
When implementing SAP in a large organization, not all components can be placed in the SAP ERP. Many of these business parts have their own proprietary tools that can be extremely complex and irreplaceable. They run in parallel with the SAP system. They are called "legacy systems". It is necessary to integrate these pre-existing non-SAP systems with SAP, which is where SAP PI comes out.
Back to the top.
Why do we need SAP PI?
In large organizations, in addition to legacy systems, SAP ERP is not composed of a single system, but integrates multiple systems, such as CRM,SRM and FICO. To deal with this complexity, SAP introduced PI: a platform that provides a single integration point for all systems. It does not require access to complex networks of existing legacy systems. This is a powerful middleware that provides smooth end-to-end integration between SAP and non-SAP applications, within the enterprise and within, or between internal and external. SAP PI supports B2B and A2A exchanges, supports synchronous and asynchronous message exchanges, and includes a built-in engine for designing and executing PI.
Back to the top.
SAP PI architecture
SAP PI has a hub-and-spoke structure, which consists of centers and spokes; spokes are connected to external systems, and the center exchanges messages between them. The source system becomes the sender system and the target system becomes the receiver system. PI is not a single component, but a collection of components that can work together flexibly according to the integration scenario. The architecture includes components used at design time, components used during configuration, and components used at run time.
We can divide PI into several areas:
Integration Server (Integration Server)
Integration Builder (Integration Builder)
System Planning (System Landscape)
Configuration and Monitoring (Configuration and Monitoring)
The integration server is the central processing engine of SAP PI. All messages are processed here in a consistent manner. It contains three separate engines:
Integration engine (Integration Engine)
Adapter engine (Adapter Engine)
Business processing engine (Business Process Engine)
The integration engine can be thought of as the center, while the adapter engine is the spoke.
The business processing engine will be explained later in this article.
The integration builder is a Chand S framework for accessing and editing integration objects, which contains two related tools:
Enterprise Services Library (Enterprise Service Repository, ESR)-used to design and develop objects for use in different scenarios.
Integration directory (Integration Directory,ID)-- the ESR component used to configure the development scenario.
Putting the two together is an integration process that is usually referred to as a scene.
System planning is a central library of software and system information in the data center, which simplifies the management of system planning.
Messages and adapters can be monitored in configuration and monitoring.
Back to the top.
Single stack and dual stack
When PI was first released, not all components were built on the same platform. The integration engine and business processing engine are built by ABAP, while the adapter engine, integration builder, SL, CM, and Mapping Runtime are built by Java. So PI requires both Java and ABAP environments to run, which is called dual stack.
ABAP StackJava Stack
Integration Engine
Business Process Engine
Integration Builder
Enterprise Service Repository
Integration Directory
Runtime Workbench
System Landscape Directory
Adapter Engine
Mapping Runtime
But in later releases, all components are built by Java. Some dual stack components have been abolished or run on the Java stack after they have been modified. So PI only needs the Java environment to run. This is the single stack.
(single and double stacks have their own advantages and disadvantages, but this article will not cover the relevant content.)
Back to the top.
Integrated engine
The integration engine is responsible for centrally integrating server services, such as pipeline steps: routing and mapping. If the source message structure is different from the destination message structure, the integration engine calls Mapping Runtime, and the source structure is transformed into the target structure. Mapping Runtime is based on the Java stack. The integration engine can also be converted using ABAP programs, which are based on the ABAP stack.
Messages can be of two types:
Synchronous-there are two parts: request and response.
Asynchronous-only one of the request or response.
In PI, messages are represented by interfaces.
Interface: message structure and description in XML format.
Based on the above limitations, there are three types of interfaces:
Outgoing interface-connect to the sending system.
Inward interface-connect to the receiving system
Abstract interface-connect BPE.
When the integration logic (scenario) is configured for each business requirement in PI, the integration engine performs the configuration in a step-by-step manner. The term "pipeline" refers to all the steps performed when processing XML messages. The route steps include:
Receiver identification-the system that decides to participate in the message exchange.
Interface identification-determines which interface should be used to accept messages.
Message segmentation-if more than one receiver is found, PI instantiates a new message for each recipient.
Message mapping-maps the source message to the format of the target message.
Technical routing-binding specific targets and protocols for messages.
Call the adapter-sends a converted message to the adapter or agent.
Back to the top.
Adapter engine
You must have found that the integration engine only uses the XML-SOAP protocol to process messages. But what if we have a pair of sending and receiving systems that have different data formats? At this point, we use different adapters in the adapter engine to convert XML and HTTP-based messages to the specified protocols and formats required by these systems, or vice versa.
As discussed earlier in this article, SAP PI is a hub-and-spoke structure, in which the adapter engine can be thought of as spokes. We use the adapter engine to connect the integration engine (center) to the external system. The adapter framework is based on the adapter engine and is based on SAP J2EE Connector Archtiecture (JCA). The adapter framework provides interfaces for configuring, managing, and monitoring adapters.
In a dual-stack system, most adapters are based on the Java stack and only two are based on the ABAP stack:
Java Stack
RFC adapter, SAP Business Connector adapter, file/FTP adapter, JDBC adapter, JMS adapter, SOAP adapter, Marketplace Adapter, Mail adapter, RNIF adapter, CIDX adapter
ABAP stack
IDOC adapter and HTTP adapter
These two adapters became part of the Java stack when SAP PI changed from dual stack to single stack. The modified adapter engine becomes the advanced adapter engine, and the two adapters are called IDOC_AAE and HTTP_AAE, respectively.
Back to the top.
Service processing engine
The responsibility of the Business processing engine (Business Process Engine) is to execute and persist the integration process.
BPM stands for Cross-component Business process Management (Business Process Management) or ccBPM, also known as the integration process. The integration process refers to runnable, cross-system message processing. During the integration process, you can define all the processing steps and related process control parameters that need to be run. Business process Management provides SAP Exchange Infrastructure, which includes the following functions:
Full-state message processing: the state of the integration process can be persisted on the integration server.
You can use correlation to establish semantic relationships between messages.
When you want to define, control, and monitor complex integration processes, such as extending to enterprise and application boundaries, that is, collection / merge, split, and multicast, you need to implement the integration process.
During run time, BPE performs the integration process. The integration process can send and receive messages only through abstract interfaces.
Back to the top.
Create a scene in SAP PI
If you need to create a scene (scenario) in PI, start from the home page.
The interface of the home page is as follows:
The home page has hyperlinks for the following four workspaces:
Enterprise Services Library (ESR)
Integrated directory (ID)
System Planning (SL)
Configuration and Monitoring (CM)
Each hyperlink can open the corresponding application. All four are Java applications. ESR and ID are swing applications. They are based on JNLP and need to be launched from a browser, so it takes more time to download the entire library file for the first time. But from the second time, the loading time will be shorter. SL and CM are pure web applications that run on browsers.
Back to the top.
Enterprise service library
Use the Enterprise Services Library to design and create objects for making the scene. The data flow in PI looks like this:
Find options for the following design:
Interface objects-service interfaces, message types, data types.
Mapping objects-operation mapping and message mapping.
Integration process.
PI uses integration libraries to design message structures for senders and receivers, and develops interface messages through the corresponding message structures, which are a point of interaction with the outside world. Data types and message types can be used to simplify and modularize complex interfaces.
Operation mapping allows conversion between the source structure and the target structure. But if the source and target structures are the same, the process may be exempt from execution. Similar to the service interface, message mapping is used to simplify and complex operation mapping. Message mapping can be done in four ways:
Graphical mapping.
Java mapping
XSLT mapping
ABAP mapping
Graphical mapping is the most commonly used means because it allows developers to graphically map the properties of the structure to pass data through the service interface. For the other three, you need to write code to develop the mapping. If it is a single-stack server, ABAP mapping is not available.
(there are other aspects that are not covered in this article)
Back to the top.
Integrated directory
Here we make the pipeline steps through the ESR object that we configured earlier. These steps are performed at run time through the integration engine.
Before we start the configuration, we need to create / import the following objects in DIR:
Services-business systems / business services / integration processes
Communication channel
The service allows you to process the sender or receiver of the message. Depending on your purpose of using these services, you can choose the following types of services:
Business system-if you want to process the specified business system as the sender or receiver of the message, select this message type. In system planning, the business system is a real application system.
Business services-if you want to treat abstract business entities as senders or receivers of messages, choose this service type. Business services are not defined in system planning.
Integration process service-choose this service type if you want to treat the integration process as the sender or receiver of the message. At run time, these integration processes are controlled by messages, and they can send messages themselves.
The communication channel determines the inward and outward processing of messages. The message is converted from the native format to the message format specified by soap-xml through the adapter, or vice versa. There are usually two communication channels in a scenario:
Sender channel.
Receiver channel.
A channel must be assigned to the service. Depending on whether the service is seen as the sender or receiver of the message, the channel also has a sender / receiver role, which must match. Channels cannot be assigned to integrated process services.
In the pipeline step DIR, go through the following four steps:
Sender protocol
Receiver decision
Interface decision
Recipient protocol
The sender protocol defines how the sender's message is converted, so it can be processed by the integrated system. It contains:
Sender component
Sender interface
Sender channel
The sender protocol is similar to the primary key in a table. There cannot be two identical sender agreements in the same plan.
The receiver protocol defines how the message is converted into a form that the receiver can process. It contains:
Sender component
Recipient component
Receiver interface
Receiver channel
Use the recipient decision to specify the object to which the message is sent. You can forward messages by defining conditions, which include:
Sender component
Sender interface
Recipient component
The receiver decision contains two types-standard and extended. Which one to use depends on whether you want to specify the recipient manually or dynamically through mapping at run time.
Receiver and interface decisions-together, are often referred to as logical routing. Sender agreement and receiver agreement-these two usually add up to a cooperation agreement.
Back to the top.
System planning
SAP System Landscape Directory (SLD) is the provider of core information in system planning. You can find the following links on the web page:
Technical system-Technical system is the application system installed in your system planning.
Business system-A business system is a logical system that exists as a sender / receiver within the PI. Business systems and related technologies have an one-to-one dependence.
Products and components-this is information about all SAP products and components, including their versions. If there are any third-party products in the system plan, they will also be registered here.
The interface of SLD is shown in the following figure:
Both products and components can be called component information.
Both technical and business systems are called planning descriptions (Landscape Description).
A business system can be configured as an integration server or an application system.
Integration server (Integration server)-- the integration server runs only the integration logic configured in the integration builder. They can also be identified as pipeline steps. It accepts XML information, determines the recipient, runs mapping, and routes XML information to the corresponding receiver system. Therefore, the configured integration engine is identified as the central configuration integration engine.
Application system (Application system)-the application system does not perform integration logic. It calls the integration server at once to run the integration logic. It acts as the sender or receiver of XML messages. Therefore, an application system with a local integration engine needs an integration server to execute integration logic.
Only a client in a SAP system can be configured as an integration server.
The following information is extracted from SLD into ESR and DIR:
The component information and SWCV used in ESR to define the product.
A business system used in a directory to define message senders and message receivers.
Back to the top.
Configuration and monitoring
Configuration and monitoring is the central entrance to monitoring. It gives you the ability to navigate to the integration engine, and it can also be integrated with the Computing Center Management system (Computing Center Management System,CCMS) and SAP's process Monitoring Facility (Process Monitoring Infrastructure,PMI).
The interface for configuration and monitoring is shown below:
Configuration and monitoring support the following monitoring features:
Component monitoring-monitors different SAP PI components, including Java and ABAP parts.
Message monitoring-tracking the status of message processing in SAP PI components, as well as error detection and analysis.
End-to-end monitoring-monitors the lifecycle of messages from a PI perspective.
Performance monitoring-you can count the performance of different aspects of SAP PI through RWW. Here, you can select and aggregate performance data, for example, based on components, time series, message properties, and so on.
Index management-index-based message search can be enabled in message monitoring by managing and monitoring the index of messages for each PI component. This message search provides enhanced selection criteria, including the message properties of the specified adapter and the terms or phrases in the message payload.
Alert configuration-by using the alert framework, the central monitor in PI can get all error reports during message processing. It can help improve ABAP runtime and Java-based adapter engines to improve error handling. To this end, the alert framework contains rules based on a certain time, and the relevant content is in the header of the PI message protocol. These rules determine whether alerts are sent. If an alert is sent, the alert can be used for error analysis.
Alarm mailbox-the alarm mailbox is user-specific and displays all alerts generated in each alert server based on the alert configuration.
Cache Monitor-the cache monitor displays the cache objects in the current runtime cache. Monitoring of different cache objects is based on the cache instance.
Back to the top.
Synchronous vs. Async
Processing can be defined as synchronous or asynchronous.
Synchronous processing is invoked through a request / response operation, and the result of the process is immediately returned to the caller through the operation.
Asynchronous processing is called through an one-way operation, and results and errors are called through another one-way operation. The result is returned through a callback operation.
There is no asynchronous communication in the computer world, and all communication between the two systems is always done through method calls (request / response operations). So how do you make it asynchronous? The answer is to introduce a third party system between the caller and the callee.
Suppose there are two systems-An and B. All communication between An and B is done through a method call, so they are synchronized. We introduce a third-party system between AB and call it Intermediate system I. The communication between An and I is through the method call, and the communication between I and B is also through the method call. But the call between An and B can be asynchronous because A does not need to wait for a response from B.
This is the basic principle of asynchronous communication, so what is the intermediate system? The answer is the queue. An is called the caller and B is the receiver. The message from An is first added to the queue, and then it is pulled out of the queue again and sent to B. The response of B is returned to An in the same way. In some cases, business requirements require messages to be sent to B in the order triggered by A, in which case it can be based on the first-in-first-out policy. If there is no such requirement, the message is sent from the queue to B in random order.
Therefore, message communication can be divided into three categories:
Synchronous
Asynchronous and disordered
Asynchronous and orderly
In PI, we define them as synchronous-BE (Best Effort), asynchronous and unordered-EO (Exactly Once), asynchronous and ordered (Exactly Once in Order).
Back to the top.
confirm
Confirmation is the basis of asynchronous communication. Why?
For synchronous communication, when system A calls system B, if B fails to send a response, the processing will fail. But in asynchronous communication, system A calls system I and system I calls system B. So suppose the communication between An and I is successful, but the communication between I and B fails. How does A know that the process of sending to B has failed? It is realized by acknowledgement, which is sent to An in reverse through the same route of messages from A to B. If the confirmation from B to A does not successfully reach A, then A considers the processing failed and sends the message again.
When we talk about asynchrony in PI, we use the term 'Exactly Once'' to refer to EO and EOIO. Exactly Onc means that once a message is sent, it cannot be sent again. To achieve this feature, every message sent from A to B has an acknowledgement. The terminal of the communication is the adapter, so the adapter must support acknowledgement.
All adapters provide system acknowledgements (system-acknowledgment), such as sending acknowledgements. Adapters that support synchronous communication support application confirmation in addition to system confirmation.
So there are the following types of confirmations in PI:
System acknowledgement-system acknowledgement is used during operation to confirm that the asynchronous message has reached the recipient.
Application acknowledgement-Application acknowledgement is used to ensure that asynchronous messages are successfully processed by the recipient.
Back to the top.
Remote Function Call
When doing PI work, you will come across the noun-RFC. What's this? In order to establish a connection between two SAP systems, such as RFC 3 and PI, we created the RFC target. The RFC target needs to be configured with the following:
Connection Typ
Recipient's IP address and port
The connection type describes the type of system connection, such as Randall 3 TCPPUP IP, internal connection, etc.
RFC targets created can be classified according to the type of traffic. According to asynchronous or synchronous communication, it can be divided into:
Synchronous communication-synchronous RFC
Communicate asynchronously and without sequence-Transactional RFC (tRFC)
Communicate asynchronously and sequentially-Queued RFC (qRFC)
These are all the contents of how to get started with SAP PI. For more content related to how to get started with SAP PI, you can search the previous articles or browse the following articles to learn! I believe the editor will add more knowledge to you. I hope you can support it!
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.