The SAP Exchange Infrastructure consists of the following components:
1. System Landscape Directory
2. Integration Repository
3. Integration Directory
4. Integration Server
5. Integration Adapters
6. Integration Clients
Applications need the following proxy components to use the SAP Exchange Infrastructure directly and without adapters.
Integration Server (IS):
The Integration Server is the central part of the SAP Exchange Infrastructure. It receives messages from the sender applications and then applies routing and mapping rules to these messages and finally sends them to the receiving application. Each SAP Web Application Server has the Integration Server Software built in but it is the specific configuration that activates its role as a central Integration Server.
Integration Adapters (IA):
Integration Adapters are used to convert various protocols and data formats into the Integration Servers XML based message objects and vice versa. The Integration Server comes with some built in adapters but most adapters are additional components.
Integration Repository (IR):
The Integration Repository provides collaboration knowledge available at design time, for example, mappings, interfaces, and components. It is built in Java and follows Java 2 Enterprise Edition (J2EE) standards. The information in the Integration Repository is used by the Integration Directory, which adds configuration-specific information that is needed for execution.
Integration Directory (ID):
The Integration Directory contains detailed collaboration knowledge about the current system landscape around the SAP Integration Server. It is a description of routing rules, active services, executable mappings and the specific system landscape. The Integration Directory details the information from the Integration Repository that is specific to the configuration.
The goal of the Integration Directory is for the customer to configure the sender.Once Integration content has been created in the Integration repository, scenarios are configured in the Integration Directory.
Integration Repository and Directory:
The Integration Repository and Directory require specific Java client software which is stored on the Integration Server and will be automatically installed on the client side using Java Web Start. This client software can be used during design time to develop new interfaces and mappings and to configure services, routings and mappings.
On the client side this java application provides the user interface for working with XI Objects. On the server side it offers services for authentication, lock management, import and export of interface objects, versioning and change management
System Landscape Directory (SLD):
The System Landscape Directory is composed of the Component Repository and the Landscape Directory. The Component Repository includes a description of all SAP Components whereas the Landscape Directory includes a complete description of the actually installed SAP system landscape.The System Landscape Directory can be accessed using a standard internet browser.
The Proxy Framework consists of the Proxy Generator and the Proxy Runtime. The Proxy Framework for ABAP (generator and runtime) is part of the SAP Web Application Server and no specific installation is needed.
Proxy Generator for Java:
The Proxy Generator for Java is used to generate proxies (Java Classes) for application programming. It makes use of the Integration Repository which contains all interface definitions.
Java Proxy Runtime:
The Proxy Runtime for Java is mandatory for all Java programs to exchange messages with the SAP Integration Server. In doing so the proxy runtime converts the used java classes into XML messages. These XML messages are sent to the Integration Server using http protocol.
The Integration Server can be accessed using the standard SAP GUI frontend.
Element with more than 1 occurance
Icon Colors :
White : Optional attribute or element not assigned
Red : Attribute or element must be assigned to complete the Mapping
Yellow : Attribute or element has already been assigned but the corresponding mapping in the data-flow editor is not complete
Green: Mapping to target field complete.
Arithmetic: add, substract, equalsA, abs, sqrt, sign, sqrt, etc.
Boolean: And, Or, Not, Equals, notEquals, if, ifWithoutElse
Constants: Constant, CopyValue, sender, receiver
Conversions: FixValues, Value mapping
Date: currentDate, DateTrans, DateBefore, DateAfter, CompareDate
Node Functions: createIf, removeContexts, replaceValue, exists,
Statistic: sum, average, count
Text: substring, concat, equalsS, indexOf, lastIndexOf, compare, etc.
1) Message mapping:
- Graphical Design and test environment
- Queue based model allows handling of very large documents
- Extensible via Java user defined functions
2) XSLT mapping:
- Open standard
- Extensible via java user defined functions
- Memory overhead for very large documents
3) JAVA mapping:
- Flexibility of java programming language
- Java mapping program is responsible for parsing/rendering XML
4) ABAP mapping:
-Leverage existing ABAP base
- ABAP mapping program is responsible for parsing/rendering XML
What is global container and where we use it?
Global Container enables you to cache the values that you want to read again when you next call any user-defined function in the same message mapping. Note that the sequence in which user-defined functions are called is predefined. It depends on the position of the target fields that the function was assigned to.
What is alert?
Alerting is a function of Runtime Workbench along with Message archiving, End-to-end monitoring, Performance Monitoring, Cache monitoring.
Through Runtime Workbench we can access alert inbox, alert configuration.
In Process Integration with Central SAP Monitoring Infrastructure, we Drill down to individual process steps and Use SAP Web AS Alert Framework.
The alert inbox is user-specific and displays all the alerts for each alert server that have been generated based on the alert configuration.
An alert can be delivered to you by e-mail, fax, or SMS. In each case, you will also find the alert in your alert inbox, irrespective of the delivery method.
You can execute the following activities in your alert inbox:
- Confirm alerts and start a follow-up action
Confirmed alerts disappear from the inbox. You can also confirm alerts by e-mail, fax, or SMS. This also causes them to disappear from your alert inbox.
- Forward alerts to another user
- Refresh the alert display
- Subscribe or unsubscribe to the alert categories that you are permitted to use, in order to receive or not receive the corresponding alerts.
- Personalize alert delivery to meet your requirements
You can choose the type of delivery you want to use and a representative.
Transaction Codes For SAP XI:
1.SXMB_IFR -> Start Integration Builder
2.SXMB_MONI -> Integration Engine - Monitoring
3.SXMB_ADM -> Integration Engine - Administration
4.SXMB_MONI_BPE -> Process Engine - Monitoring
5.SXI_MONITOR -> XI: Message Monitoring
6.SXI_CACHE -> To Access IS runtime cache
7.IDX1-> Port Maintenance in IDoc Adapter
8.IDX2-> Meta Data Overview in IDoc Adapter
9.IDX5 -> Monitor IDoc Adapter
10.IDXP - > to monitor the message packages.
11.IDXPW - > to activate the IDOC message package
12.SMQ1-> qRFC Monitor (Outbound Queue)
13.SMQ2-> qRFC Monitor (Inbound Queue)
14.SMQR - > to register the queue
15.SMQS - > to register the destination in QOUT scheduler
16.ST03 -> workload.
17.ST06 -> stato della macchina cpu memory filesystem machine status - cpu,
18.ST22 -> dump abap (analisi di eccezioni)
19.SCC4 -> visualizza mandanti del sistema
20.SALE - ale settings
21.RZ10 - edit system profile
22.RZ70-> SLD Administration
23.SU01 -> users maintenance
24.AL08 -> list all logged users(user login logon)
25.SE01 -> manage change requests
26.SE09 -> Change Request
27.SE10 -> Change Request
28.SE11 -> ABAP Data dictionary
29.SE16-> Data Browser
30.SE24-> Class Builder
31.SE37 -> mantain funcion modules
32.SE38 -> ABAP Editor
33.SE80 -> Object Navigator
34.SE93-> Maintain Transaction Codes
35.SICF -> http server configuration
36.SMGW -> trace, alzare livello di trace.
37.PFCG -> Roles
38.TSTC -> SAP transactions codes table
39.TSTCT -> transaction descriptions table
40.STMS -> transports management
41.SPAM -> apply ABAP support packages
42.SPAU -> manage objects after apply support packages
43.SLDCHECK -> Test SLD Connection
44.SLDAPICUST-> SLD API Customizing
45.ST22 -> ABAP dump analysis
46.SPROXY-> ABAP Proxy Generation
47.ABAPDOCU -> ABAP Documentation and Examples
48.SM02-> System Messages
49.SM21 -> Online System Log Analysis (log sistema XI)
50.SM30-> Call View Maintenance
51.SM58-> Asynchronous RFC Error Log
52.SM59-> RFC Destinations (Display/Maintain)
53.SMICM-> ICM Monitor (J2EE administration)
54.BD64 -> mantain distribution model (modelli di distribuzione)
55.BD87-> Status Monitor for ALE Messages
56.WE02-> Display IDoc
57.WE05-> IDoc Lists
58.WE09-> Search for IDocs by Content
59.WE19-> IDoc Test tool
60.WE20-> Partner Profiles
61.WE21-> Port definition in XI
62.WE60-> Documentation for IDoc types
63.SWXF_PBUILDER -> for Detail BPM Process
64.WEOUTQUEUE - > to start the queue processing
SAP Exchange Infrastructure (SAP XI): XI is open & flexible. It uses web standard such as "web services description language" (WSDL), "XML Schema Definition Language" (XSD) & "Simple Object access Protocol "(SOAP) Messaging for describing objects & Communicating with other systems. It runs on the Application Server (SAP WEB APPs). XI is not a single Component, But rather a collection of components that work together flexibly to implement integration scenario. SAP XI supports internal company scenarios and cross-company scenarios.
Exchange Infrastructure can be used as a Middle ware Engine to communicate in a distributed environment. The heart of XI is Integration Engine that is used for integrating different technologies using Standard Messaging techniques e.g XML. Different mapping tools are available for mapping the distributed system which can be mapped without having any expertise of Technical Details. As a real world example, XI can be helpful in integrating different banks with SAP R/3. XI Engine also support previous releases of SAP R/3 like 4.6C and have many more adapters to communicate with legacy systems.
SAP Application Adapters:
Non-SAP Application Adapters:
->Industry Standard Adapters:
CIDX Adapter by SAP
EDI Standard Adapters By SEEBURGER.
SAP applications can communicate with non-SAP applications, At design time, the user defines or uses pre-defined interface objects for the SAP Integration Repository. These objects include Business Scenarios, Business Processes, Message Interfaces, Message Types, Data Types, Message Mappings, and Interface Mappings
It enables to implement cross-system processes. It enables to connect systems from different vendors (non-SAP and SAP) in different versions and implemented in different programming languages (Java, ABAP, and so on) to each other.
SAP Exchange Infrastructure is based on an open architecture, uses open standards (in particular those from the XML and Java environments) and offers those services that are essential in a heterogeneous and complex system landscape:
? Modeling and design of messages, transformations, and cross-component integration processes
? Configuration options for managing collaborative processes and message flow
? Runtime for message and process management
? Adapter Engine for integrating heterogeneous system components
? Central monitoring for monitoring message flow and processes.
The SAP Exchange Infrastructure consists of the following components:
1. System Landscape Directory,
2. Integration Builder ( Integration Repository, Integration Directory),
3. Integration Server,
4. Central Monitoring
5. Adapter Engine,
Integration Server is the central part of the SAP Exchange Infrastructure. It receives messages from the sender applications and then applies routing and mapping rules to these messages and finally sends them to the receiving application. Each SAP Web Application Server has the Integration Server Software built in but it is the specific configuration that activates its role as a central Integration Server.
Integration Server is the runtime component for receiving messages and controlling how these messages are forwarded. It has the Integration Engine, Business Process Engine and Adapter Engine with it.
The Integration Server contains:
1. Adapter Engine
2. Business Process Engine
3. Integration Engine
Business Process Engine: Business Process Engine is the runtime component that executes collaborative integration processes.
Integration Engine: Integration Engine is the processing pipeline for all XI messages. All messages are received in the special XI-SOAP format and processed in the Integration Engine in a consistent way. Central runtime component of the Integration Server for receiving, processing, and forwarding messages.
Is used in implementing the message logic and Integeration logic. Message logic receives the message and send the message to the target system and ensures the factors such as quality of service, acknowledgement. Integeration logic does the mapping, logical routing and the technical routing.
Adapter Engine: It is a runtime component that uses adapters to connect external systems and R/3 systems to the Integration Server by means of RFC calls. The IDoc adapter and the plain HTTP adapter run independently of the Adapter Engine. The Central Adapter Engine connects the Integration Server to systems (SAP and Non-SAP systems) not based on Web Application Server v. 6.20 or higher Using various adapters such as IDOC, File, RFC, HTTP, SOAP, etc. Systems based on Web Application Server v. 6.20 or higher can communicate directly without using adapter with the help of proxy.
The main use of adapters is to transform the incoming message into Xi-SOAP format, or to transform the XI-SOAP message into legacy systems format. Since XI can understand only XI-SOAP formatted messages, When a Third-party System send messages to XI the adapter converts it to XI-SOAP format and sends it to Integration Engine.
There are lots of advantages of XI :
* Integration with SAP products & components.
* Iron clad data security as expected from any SAP product.
* Standards based - XML, XSD, XPath etc
* Ability to communicate with other messaging systems/products.
* Business Process Management
* Synchronous & Asynchronous communication
* Leverage existing SAP & ABAP skillset.
* Mapping etc possible to accomplish in Java. Platform independent Java components.
* Java & .Net support*.*
1. why do we use MT?
A. we use message type to describe the message which is going to be sent.
2. Where u use Catch whole queue?
3. What makes an XI object unique?
4. what r the adapters that related to sap r/3?
A. IDoc ,RFC.
5. what r mapping techniques?
6. advantges & disadvantages of BPM?
7. Diference between Adapter & proxies?
8. What is BS, TS?
9. How many components have in xi?
10.What is global container?
11.How many IE are in XI?
12.How many functions r in xi?
13.What is synchronization?where it use?
14.What is idoc? where it use?
15.diference between UDF & Advanced UDF?
16.When we go for File scenario?
17.How many containers r in xi?
18.What is coorelation?when we go for?
19.How many patterns have u done?
20.When u go for BPM?
21.Use of JAVA web start?
22.Components of JAVA ABAP?
23.Difference between URN/URL?
24.What r the parameters in JDBC adapter?
25.How to configure Alerts?
26.What do u do basically in office?
27.what is the role in ur office?
28.Ur office address?
29. ur TL Name?
30. ur desk colour?, etc..;
1. Message type defines the structure of the message instance.
3. Namespace can make XI objects as unique objects.
4. Idoc, RFC adapters are for SAP R/3.
5. Java mapping , Abap mapping, XSLT mapping and Graphical mapping.
6. advantage: If multiple receiver or senders then it is very easy to handle.
Disadvantage : Because of BPM performace is goes down.
7. Adapter can convert the messages into XML format and send to integration server and Proxy directly sends messages to Integration server.
8. Business system is Logical system for example a specific client on SAP server, Technical system is physical system for example SAP server is physical system with multiple clients.
9. SLD, IR, ID, RWB, Integration Server.
10. Global container is used in User defined function, which can be used to cache the value , that can be called in any user defined function of the message mapping.
11. Integraion server having the one Integration Engine and one Adapter Engine. Integration engine runs on ABAP stack and Adapter engine runs on Java stack.
12. Standard functions and user defined functions.
15. UDF(simple) : This function type can process individual field input values for each function call. Therefore, simple functions expect strings as input values and return a string.
Advanced UDF: Advanced user-defined functions can access more than just individual field values. Instead, you can import a complete context or an entire queue for a field as an array before your function is called. This enables you, for example, to perform calculations on all field values of a context as well as to divide up the contexts themselves further by inserting a context change.
Advanced user-defined functions can import either just one context into the input arrays, or complete queues. Make your selection by selecting or deselecting the Save Entire Queue in Cache checkbox in the function editor.
18. When you need to collect multiple messages in XI ,you need correlation.
Assume that there are 2 systems sending data to XI and Xi needs to collect the messages of the Systems.
System A has sent the message to XI and BPM is waiting for message from System B. Even before System B can send its message, another message from System A has come in XI and another BPm is instantitated. Now, when System B sends the message how do you know which BPM it belongs to?
Correlation as the name implies is used to correalte / connect the message so that they are assigned to the correct process Instance / BPM.
19. Integration Scenario Patterns:
1. Synchronous versus Asynchronous Scenario
2. Collection of Messages
3. Split of Messages
4. State full Processing - Integration Process
20. We use BPM when we need to do:
1.Controling or Monitoring of messages in XI
2. Collect or Merge the messages in XI
3. Split the messages in XI
4. Multicast a Message
5. Need to send an Alert
when we need to maintain the state of a message we use BPM.
eg. collect messages specific condition like Collect message up to defined no. or up to a specific time of a day.
-> merging of messages and sending as a single message.
->splitting of mesages
21. Java Webstart is a cache applications mainly used to support the fat clients, since our IR and ID are fat clients we need this Webstart to work on these....now in simple word to define fat clients is that you are working on client and data gets updated on server.....so Webstart allows you to download all the jar files required to work from the client at once, so you will notice when you open your IR and ID for the first time in the systems it takes time to open.Reason is it downlaod all the necssary jar files required to work IR and ID from your system
22. Intergration Server, Business Process Engine are components of ABAP,
Adapter frame work, Mapping engine, ID, IR, and RWB are components of Java.
23. The namespace could be any string that uniquely defines the scope of those determined fields of the XML file. Usually, you use a URI to define that unique string, and since URLs are the most common URIs, people tend to use plain http URLs as the namespace (it doesn't need to be a valid url). But using "urn:test" for example isn't wrong.
From the specification:
URI = Uniform Resource Identifier
There are two types of URIs: URLs and URNs
URL = Uniform Resource Locator
<protocol>:// <host> :<port> <path> ? <query>
URN = Uniform Resource Name.
URNs define XML schemas.
URN: Uniform Resource Name
urn:sap-com:xi:demo (URI with out protocol assignment)
URL: Uniform Resource Locator
24. Transport Protocol
? XML SQL format
Table values can be inserted, updated, or deleted in one or more tables. In the database, stored procedures can be called using transfer parameters. In the case of synchronous queries, results from database queries or return values of stored procedures can also be transferred.
? Native SQL String
An arbitrary SQL statement is expected as the message content. This statement is transferred unaltered to the database for processing.Depending on the message protocol you selected, the adapter expects special XML document formats in the message from the Integration Server or the PCK. For more information about the document formats, see: Document Formats for the Receiver JDBC Adapter.
Select the Adapter Engine on the Integration Server, or select a non-centrally installed Adapter Engine. This selection is not available in the PCK.
Connection Tab Page
Specify the following to establish the database connection:
Java class of the JDBC driver that the JDBC adapter must load to be able to access the driver. The specification varies according to the JDBC driver; see material from the respective provider for exact details.
Address with which you can establish a database connection using the JDBC driver. The specification varies according to the JDBC driver; see material from the respective provider for exact details.
User name for logging on to the database.
Password for logging on to the database, including confirmation.
25. Alerts within XI give us a simple way to monitor only those errors that we want and send alert messages to different people depending on the alert category. You can send alert to alert inbox, mail and even on SMS if your cell phone operator gives you the possibility of sending an sms through a web service.
At first we have to create an alert category:
- go to TCODE - ALRTCATDEF
- change mode, define you alert category
- define the attributes which you want to receive in the alert.
- Add the recivers who will receive thje alerts
- save and activate
- Inside alert configuration define the settings for example: Interface name for which you want to receive the alerts in your inbox.
- save and update abap table