©SAP AG 2004
TADMBO Implementation&Operation II
THE BEST-RUN BUSINESSES RUN SAP
© SAP AG 2004
TBIT40
Implementation & Operation II
2004/Q4
SAP Exchange Infrastructure 3.0
TBIT40 XI Foundations
Lecture topics
Topics
XI OverviewSystem Landscape Directory Integration Repository
Integration Directory Runtime
Runtime Workbench Adapter Framework
Business Process Management Server Administration
Security
Exercise topics
Topics
Exercise 1: File to IDoc Exercise 2: File to JDBC Exercise 3: HTTP to (t)RFC
Exercise 4: ABAP Proxy to RFC Exercise 5: BPM Async-Sync
SAP Exchange
Infrastructure – Process
Centric Integration
XI Overview
SAP NetWeaverTM Process IntegrationLecture topics
Topics
XI OverviewSystem Landscape Directory Integration Repository
Integration Directory Runtime
Runtime Workbench Adapter Framework
Business Process Management Server Administration
Security
Exchange Infrastructure Overview: Unit Objectives
After completing this unit, you will be able to: Explain need for and the benefits of the SAP Exchange Infrastructure.
Describe the components of the SAP Exchange Infrastructure.
SAP Exchange Infrastructure
Agenda
Positioning Architecture Overview Key Functionality SummaryMission
SAP XI is an integration technology and platform…
…for SAP and non-SAP applications. …for A2A and B2B scenarios.
…for asynchronous and synchronous communication. …for cross-component Business Process Management.
BUILDER SERVER
SAP NetWeaver™
SAP NetWeaver
SAP NetWeaver
™
™
SAP NetWeaver™ Comp osite App licatio n Framew ork PEOPLE INTEGRATIONMulti channel access
Portal Collaboration INFORMATION INTEGRATION Bus. Intelligence Master Data Mgmt Knowledge Mgmt PROCESS INTEGRATION Integration Broker Business Process Mgmt APPLICATION PLATFORM J2EE DB and OS Abstraction ABAP Life Cy cle Mgmt
Unifies and aligns people, information and business processes
Integrates across technologies and organizational boundaries A safe choice with full .NET and J2EE interoperability
The business foundation for SAP and partners
Powers business-ready
solutions that reduce custom integration
Its Enterprise Services
Architecture increases business process flexibility
One Customer’s Complex Integration Landscape
SAPMarkets Enterprise Buyer (Professional Edition) Collaborative Engineering SAP R/3: ~30 systems, versions 3.1I – 4.6B e-Procurement: in 10 units ERP legacy: ~15 systems e-Sales Technical Systems Trading ERP non-SAP: ~25 systems, different versionsExchange Infrastructure for Collaboration
Integration Engine & Bus Infrastructure Shared central knowledge, Small number of peer-to-peer connections Direct Connections Integration challenge Quadratically growing complexity Database Integration Integration by single centralized data model Enterprise Resource Planning Inter-/Intra-Enterprise Co-operation Collaborative Business
The Solution – Shared Business Semantics
Shared Integration KnowledgeIntegration scenarios, business processes, Web services, interfaces, mappings, routing rules, ...
For a common understanding how collaborative business processes work
Enabling distributed execution
Shared classification and discovery of businesses and services Support for UDDI (Universal Description, Discovery and Integration)
Loose coupling via XML messaging
Asynchronous communication as far as possible Synchronous communication where required
Evolution
Allow easy and non-disruptive addition of new services and processes
Integration of existing and new SAP components
Advantage: Pre-delivered Integration Content
SUS
EBP
3rd Party Catalog
Data SAP solutions bring their integration meta-data
(CRM, SRM, SCM, xApps like xRPM, etc.)
Delivered with the
Integration Repository of SAP XI
Benefits
Out-of-the-box integration of SAP solutions Simplified upgrade of SAP Solutions
Advantage: Openness and Interoperability
3rd Party Application SAP Application 3rd Party Middleware Component 3rd Party ApplicationConnect to existing integration solutions
Through JMS messaging (e.g. MQSeries) Through SOAP
Use open, XML based standards for integration
Incorporate existing functionality into new processes
Adapters (JCA)
Web Services (WSDL)
Benefits
Leverage existing investments
Arrive at new integration landscape in an evolutionary manner
SAP Exchange Infrastructure
Agenda
Positioning Architecture Overview Key Functionality SummarySAP Applications Using XI
More and more SAP applications are making use of SAP Exchange Infrastructure and introducing XI to a customer landscape
The following applications now use XI:
xApps (such as xRPM, Resource and Program Management) MDM (SAP Master Data Management)
SRM (SAP Supplier Relationship Management)
ICH (SAP Inventory Collaboration Hub within SAP SCM)
BI (SAP Business Intelligence, for Global Spending Reporting) R/3 Enterprise (for Industry Standard Support)
CRM (SAP Customer Relationship Management, for Extended Order Management)
Component Overview
Execution of Collaborative Business Processes Shared Collaboration Knowledge Integration Builder Integration Directory (ID) Integration Repository (IR) Integration Server (IS)System Landscape Directory (SLD)
Central Monitoring SAP Systems 3rd Party Systems 3rdParty Middleware Component Marketplace/ Business Partner
Capturing Shared Knowledge at Design/Config Time
Integration Engine
Integration Repository Product to be used at design/development time
At SAP, partner, and customer site Shipped along with content
Integration Directory
Product to be used at configuration time
At customer site
Content partially derivable from Integration Repository by
configuration tools Integration Engine
Product to be used at runtime At customer site
Relies on content of Integration Directory
Exchange Infrastructure – Integration Landscape
SAP 3.x SAP 3.x SAP 4.x SAP 4.x Third Party System Third Party System SAP Adapter 3rd Party Adapter mySAP Solution* mySAP Solution* Firewall Business Partner Business Partner Business Partner Business Partner Business Partner Business Partner Market-place Market-place Integration Repository Integration Directory Integration Serverconnects to different SAP and Non-SAP Systems, to Business Partners and Public Marketplaces
SAP Exchange Infrastructure
Agenda
Positioning Architecture Overview Key Functionality SummaryIntegration Builder – Common tool framework
DB UI Client Server Integration Directory Integration RepositoryIntegration Builder Server Framework
Query Service & Cross References Import/Export & CMS interface Internationalization
Change list Management Versioning
Locking
Authorization & Authentication
Integration Builder Client Framework
Layout Building Blocks Personalization
Navigation
Client-server framework Consistent look and feel Based on Java Web Start
Design
System Landscape
Directory Software Component
Software Component Version SAP Web AS J2EE/ ABAP Proxies Integration Repository BPEL XSLT Java XPath WSDL Integration Builder
Data Type Editor
Message Interfaces Message Types Data Types (XSD) Business Processes Mappings Business Scenarios Context Objects Scenario Editor Process Editor Mapping Editor Condition Editor Pre-delivered Integration Content for mySAP solutions
Open for collaboration
knowledge of non-SAP systems, using open standards (e.g. WSDL) Provision to enhance XI design time objects by customers / partners Java based graphical tools
Configuration
Integration Builder Integration Directory Business Processes Routing Rules Business ScenariosReceiver Determination Rules Interface Determination Rules (including Mapping Assignment)
Configuration Editors Configuration
Wizards
Collaboration Profiles
Parties & Services Channels
Collaboration Agreements
Security
Adapt integration content to specific configuration
Derive integration content from Integration Repository
Open for Customer to add collaboration knowledge relevant to non-SAP
components
Java based graphical tools
Central configuration for B2B processes and BPM
Centralized adapter configuration
System Landscape Directory
Describes concrete system landscapeof customer installation
What component is actively available on which machine/instance/client, etc.
Information about domain contained, i.e. in which network environment (local / remote) are components accessible
Any number of different landscapes Any type of component (SAP, partner products, other packages, legacy
systems ..)
Open architecture, based on CIM
Base for structuring design objects in the repository, and for configuring routing rules in the directory
Runtime
Central Monitoring
SAP Web AS ≥ 6.20 SystemSAP Integration Directory System Landscape Directory XI Protocol RosettaNet, … XI Protocol
Business Process Engine
Integration Engine Adapter Engine IDocs RFCs Proxy 3rd Party Apps File DB JMS Apps of Business Partner Apps of (small) Business Partner Local Integration Engine Proxy Runtime Partner Connectivity Kit
Decoupling Of Integrated Applications
3rd Party Adapter Firewall Integration Directory Integration Server SAP R/3 3.1i SAP R/3 Enterprise 3rd Party App Marketplace Business Partner Business Partner Business Partner SAPAdapter DeterminationReceiver
Channel Determination Mapping Routing Rules Mappings Collaboration Profiles
A sample message flow from one application to another is depicted
Logical decoupling of senders and
receivers
Decoupling of
sender and receiver interface formats
XI Runtime Environment
Functionality
Communication
Synchronous: always “best effort”
Asynchronous: exactly-once or exactly-once-in-order Retry mechanism
Acknowledgment is supported Including error handling
Synchronous: error messages sent back to sender Asynchronous: errors made persistent
Transport of (XML) messages based on HTTP or HTTPS
“SOAP Messages with Attachments” as wire format
Messaging protocol based on SOAP envelope with header extensions
Connectivity / Adapters
Execute Collaborative Business ProcessesExecute Collaborative Business Processes
Central Monitoring –
ensures collaboration reliability
Central Monitoring –
ensures collaboration reliability
SAP Systems SAP Systems Partner Connectivity Kit Partner Connectivity Kit Marketplace/ Business Partner Marketplace/ Business Partner
Business Process Engine
Integration Server
Integration Engine
Central Adapter Engine Adapter Framework Messaging Queuing Security Handling Resource Adapter Application Techn. System File/DB/JMS
Adapter framework based on Java Connector
Architecture (JCA)
Adapters work as plug-ins to the Adapter
Framework
Adapter Development Kit - customers and partners can develop adapters
SAP NetWeaver
certification of 3rd party
adapters based on JCA adapter framework
Reselling of JCA
adapters from selected partners (iWay, Seeburger)
Adapter Architecture
Integration Server J2SE Adapter Engine Partner Connectivity Kit Optional Decentral Adapter Engine Central Adapter EngineIntegration Repository / Integration Directory / System Landscape Directory
Business Process Engine Integration Engine Adapter Framework Messaging Queuing Security Handling Resource
Adapter Adapter Resource Adapter Resource
Adapter FW Messaging Queuing Security Handling Adapter FW Messaging Queuing Security Handling PCK Configuration and Monitoring RFC/IDoc Adapter Adapter 3rd Party Application 3rd Party Application Application Techn. System File/DB/JMS File DB JMS SAP System
Cross-Component Business Process Management
Business System 1 Integration Server Business System 3 Business System 2 1 2 3 Messages Message 4Orchestrates message choreography based on stateful interactions
Design, execute and monitor automated processes across applications and systems Provides process control in the central
technology layer
Contains a Graphical Modeler Integral part of XI
Modeling enables linkage to XI design objects: interfaces, mappings …
BPM runtime is embedded in the Integration Server runtime
Adheres to standards
Industry Standard support (BPEL4WS) Import/ export of process definitions Business
SAP XI and B2B enablement (1)
Industry B2B Protocols
System Landscape Directory (SLD) Integration Repository (IR) Integration Directory (ID) Integration Server (IS) Partner Connectivity Kit Apps of (small) Business Partner Apps of (small) Business Partner XI Protocol
Enable business partners to conduct B2B processes with XI Security enrichments for B2B
Digital Signature and Encryption
Partner Connectivity Kit
Enable partners of XI customers to conduct XML document exchange with XI
SAP XI and B2B enablement (2)
Integration Directory
(ID)
Collaboration Profile
Collaboration Agreement Industry B2B
Protocols
System Landscape Directory (SLD) Integration Repository (IR) Integration Server (IS) Partner Connectivity Kit Apps of (small) Business Partner Apps of (small) Business Partner XI Protocol Industry Standards Content
Industry Standards Content (e.g. RosettaNet PIPs, specific mappings)
Collaboration Profile and Collaboration Agreement in Integration Directory
Manages technical characteristics of partners to facilitate document exchange, such as
Party identification
Message formats and versions supported Security requirements
Value-added Web Services Through XI
Web Service Client (SAP/non-SAP) Proxy Local Integration Engine Proxy Runtime Web Services Framework SOAP IDocs RFCs Web Service Client (SAP/non-SAP)‘Managed’ Web Service
‘Basic’ Web Service
Mapping Routing Business Processes Adapter SOAP XI Protocol or SOAP Adapter Integration Server 3rd Party App SAP Web AS ≥ 6.40 SAP System
Runtime Workbench
Central monitoring tool for the complete XI landscape Component monitoring Message monitoring Graphical end-to-end monitoring Performance monitoring
Smooth integration with CCMS Easy Configuration
Exploiting System Landscape Directory
Summary
SAP XI addresses integration challenges
Is a A2A and B2B integration solution Industry standard support
Supports the whole process integration lifecycle Comes with pre-delivered content
Is suited for heterogeneous integration landscapes Is interoperable based on open standards
SAP XI is SAP’s strategic process integration platform
mySAP SRM, mySAP SCM, SAP for Retail, …
Synergetic use inside SAP NetWeaver with SAP MDM, BPM, CAF, …
SAP XI is more than just an Integration Broker
Exchange Infrastructure Overview: Unit Summary
You should now be able to:
Explain need for and the benefits of the SAP Exchange Infrastructure.
Describe the components of the SAP Exchange Infrastructure.
SAP Exchange
Infrastructure
Topics
Lecture topics
XI Overview
System Landscape Directory
Integration Repository Integration Directory Runtime
Runtime Workbench Adapter Framework
Business Process Management Server Administration
Security
After completing this unit, you will be able to:
z Explain the purpose of the System Landscape
Directory and its role as an information provider.
z Describe the content types in the System
Landscape Directory.
z Create Software Component descriptions in the
System Landscape Directory.
z Define Technical Systems in the System Landscape
Directory.
z Define Business Systems in the System Landscape
Directory.
System Landscape Directory Overview
Central information provider for NetWeaver system landscapes
Manage software components and platform dependencies Facilitate Installations, upgrades and transports
Based on Common Information Model (CIM) of the Distributed
Management Task Force (DMTF)
Basis for SAP Solution Manager Information provider for SAP XI
SLD content type
Component Information
Describes building blocks of solutions
Describes possible combinations and dependencies
Delivered by SAP, extensible by customer Landscape Description
Information on installed landscape elements
Customer-specific
SAP XI utilizes both types of content:
Integration Repository: Component Information Integration Directory: Landscape Description
System Landscape Directory
Synchronize, XML PPMS Master Component Repository Master Component Repository SAP Component Types Landscape Patterns Possible Combinations Customer Update System Landscape Directory System Landscape Directory Component information Component information CIM CIM 3rd-Party / Customer Component Types 3rd-Party / Customer Component Types Landscape description Landscape description CIM CIM Any Landscape Element Any Landscape Element Customer Landscape Customer LandscapeApplications and Tools Applications and Tools
Graphical Design Tool .. .. .. Software Logistics Software Logistics .. .. .. 1 1 2 Technical Configuration Technical Configuration .. Validation Validation .. .. Registration WBEM, XML WBEM, XML
SLD: Products and Software Components
Software Component Product
Product Version Software Component Version
Software Feature 1 * * * * * 0..1 0..1
Example: workshop exercise
Product Product Version Software Component Software Component Version 1 1 n n Software Feature: Associations TBIT40_WORKSHOP ##, 1.0 of SAP TBIT40_WORKSHOP, 1.0 of SAP TBIT40_WORKSHOP of SAP TBIT40_WORKSHOP ## of SAPDefining the Software Component
Select the Product from the drop-down Enter the software vendor
Enter the Software Component Name Enter the Software
Component version (SWCV)
Choose “Create”
To define a Software Component:
From the main screen of the SLD,
choose “Software Catalog.”
Use the drop-down to select the
Software Components type, and then select “New Component” to start the wizard.
SLD: Technical System
Technical System
WebAS ABAP
Standalone JAVA
Third Party
Name; host name; system number; Release Installed clients Message Server Installed Products Installed Products Business System Business Systems Business Systems Technical System ID WebAS Java
Defining the Technical System
From the Technical System browser choose “New Technical System…”
… select (and add) the products and components that are installed on the technical system...
… click “Finish.” … specify the Technical System Type…
SLD: Business System
Business System
WebAS ABAP
WebAS Java
Third Party Systems
Related Integration Server client Installed Products Installed Products Technical System Technical System Technical System Name Standalone Java
Related Integration Server
Related Integration Server
Defining the Business System
Give the system a unique name…
… specify the associated Technical System (and Logical System, if necesary)…
… select the installed products (from the technical system definition)…
… and the Related Integration Server
SLD and XI Integration Repository
System Landscape Directory
Product Version Product
Software Component
Software Component Version Integration Repository (Design)
Application Component Role Product Version Software Component Version Business Scenario Interface Objects Mapping Objects
SLD and Repository: usage dependencies
System Landscape Directory
Software Component Version A SAP Integration Builder
Repository (Design)
Software Component Version A
Basis objects ...
Software Component Version B
Usage Dependency Software Component
Version B
X
X
A dependency can be defined in the SLD This dependency will be automatically detected in the Integration Repository
SLD and Directory
SAP Integration Directory (Configuration)
Routing Relations Sender Service: Receiver Service: Business System Business System Business System Technical System
System Landscape Directory
A service object in the Integration
You should now be able to:
z Explain the purpose of the System Landscape
Directory and its role as an information provider.
z Describe the content types in the System Landscape
Directory.
z Create Software Component descriptions in the
System Landscape Directory.
z Define Technical Systems in the System Landscape
Directory.
z Define Business Systems in the System Landscape
Directory.
SAP Exchange
Infrastructure
Lecture topics
Topics
XI Overview
System Landscape Directory
Integration Repository
Integration Directory Runtime
Runtime Workbench Adapter Framework
Business Process Management Server Administration
Security
Integration Repository: Unit Objectives
After completing this unit, you will be able to:
z Describe the Integration Repository and the objects
that are created in it.
z Understand various Interface Objects and their roles in
integration scenarios.
z Detail the use of web standards in the descriptions of
interface objects in the Integration Repository.
z Explain the Proxy functionality in XI.
z Describe message mappings and list the different types
of mappings available in XI.
z Explain Business Processes and their role in
integration scenarios.
z Describe how to import various objects into the
Integration Repository: Business Scenario
z You need to implement and Integration Scenario.
z You must first create the appropriate objects and
Integration Repository
Agenda
XI 3.0 Integration Repository Overview and concepts
Software components and namespaces Interface objects
Proxy generation Mapping objects
Business Process objects Miscellaneous
Integration Repository
Agenda
XI 3.0 Integration Repository Overview and concepts
Software components and namespaces Interface objects
Proxy generation Mapping objects
Business Process objects Miscellaneous
Business Process In A Distributed Landscape
Before starting an XI Integration project, a component view of the business process requirements must be established
External Interfaces In A Distributed Landscape
XI Integration is interface-driven. An interface represents:
The transfer of data between two components
Design Time
SAP Web AS ≥ 6.20
Integration Repository
System Landscape Directory
Software Component Software Component Version
J2EE/ABAP Proxies Message Interfaces Message Types Integration Builder Interface Editor Data Types Business Processes Mappings Business Scenarios Context Objects Scenario Editor Process Editor Mapping Editor Condition Editor BPEL XSLT Java XPath WSDL XSD
Integration Repository
Agenda
XI 3.0 Integration Repository Overview and concepts
Software components and namespaces Interface objects
Proxy generation Mapping objects
Business Process objects Miscellaneous
Software Component Version
Primary container for all
Integration Repository objects
Imported directly from the SLD Usage dependencies from SLD
are reflected in the Repository (‘Basis objects‘)
For each software component version, the following can be assigned:
A connection to an existing SAP system
for the import of IDoc/RFC interfaces One or more namespaces
Namespaces
(Globally) unique identifier for related Integration Repository objects
Usually vendor-based
Same concept as XML namespaces
Several namespaces can be assigned to the same SWCV Naming convention:
URI http://sap.com/xi/demo
URN urn:sap-com:xi:demo
Integration Repository
Agenda
XI 3.0 Integration Repository Overview and concepts
Software components and namespaces Interface objects
Proxy generation Mapping objects
Business Process objects Miscellaneous
Interface Objects: Data Type
Data types are the most basic entity to define the structure of XML elements
Equivalent to XML Schema (XSD)
Data type editor provides all XSD basic data types. Nesting of data types possible
Interface Objects: Message Type
The Message type corresponds to the root of the XML message
Name and namespace must match exactly the root of XML
Business documents
The Message type references one single data type XSD representation available for export
Interface Objects: Message Interface
The Message Interface is the highest-level representation of XML metadata.
Inbound or outbound (respective to the application), or
abstract (for BPM only)
Synchronous or asynchronous
Asynchronous refers to one message type
Synchronous refers to two message types (request and response)
References fault message types for exception handling WSDL representation available for export
Starting point for proxy generation (ABAP and Java) Context objects can be assigned
Message Interfaces based on RFC/IDoc
Imports must be allowed as part of the
configuration of the SWCV.
Connection information for the target system is maintained as part of the SWCV.
A wizard interface walks you through the process of importing
Interface Objects And WSDL
Integration Repository
Message Interface
FlightBooking_Confirm_Out
Output Message Type:
FlightBooking_Confirm_Out_Req Message Type FlightBooking_Confirm_Out_Req Data Type: FlightBookingID Data Type FlightBookingID XML Schema (XSD) <?xml version=“1.0“> <wsdl:definitions ...>
<wsdl:portType name=“FlightBooking_Confirm_Out“> <wsdl:operation name=“FlightBooking_Confirm_Out“>
<wsdl:input message=“FlightBooking_Confirm_Out_Req“> </wsdl:operation>
</wsdl:portType> </wsdl:definitions>
<wsdl:message name=“FlightBooking_Confirm_Out_Req“> <wsdl:part name=“FlightBookingID“
type=“FlightBookingID“> </wsdl:message>
<wsdl: types> <xsd:schema>
<xsd:simpleType name=“FlightBookingID“
type=“xsd:nonNegativeInteger“ > </xsd:schema>
Interface Objects: Context Objects
Context Object
Pointer to a specific element (field) within the message, for
future reference
Encapsulate access to data that is contained in the payload
or in the header (technical context objects) of a message
Example: in CREMAS03 (Vendor master) IDoc:
zipcode = CREMAS03/IDOC/E1LFA1M/PSTLZ
2. Use Context Object in Message Interface 1. Create Context Object
Integration Repository
Agenda
XI 3.0 Integration Repository Overview and concepts
Software components and namespaces Interface objects
Proxy generation Mapping objects
Business Process objects Miscellaneous
Proxy Generation – Overview
Separation of Business Application logic from XI connectivity
Outside-in development approach
Adapter-less, out-of-the-box integration For applications based on SAP Web AS 6.20 or above (ABAP and Java)
The Proxy Framework hides technical details from application developer
Transform language-specific data structures into XML and vice-versa
Ensure technical connectivity with the Integration Engine, guaranteed delivery
Application System Application System Business Function Proxy Integration Engine
Proxy Generation
Message interfaces are the basis for proxy generation
Proxy will have the same attributes as the message interface:
Inbound, outbound
Synchronous, asynchronous
Same concept for ABAP and Java, but different procedure
J2EE proxies are generated from the IR as .JAR files
ABAP proxies are generated from the application client, based on the WSDL representation of the message interface
Some rules and restrictions are in effect for the conversion of
XSD Data types into Java or ABAP types, respectively See the documentation for more details
Create ABAP Proxies (Transaction SPROXY)
1
2
Generated ABAP Objects
Message interfaces can have the mode synchronous or asynchronous.
Furthermore, the type of the message interface determines what type of proxy is generated.
The counterparts to outbound message interfaces in application systems are client proxies. They are called to send a message to an inbound interface. An outbound message interface is mapped to an ABAP object class (prefix CO_).
The counterparts to inbound message interfaces in application systems are server proxies. The proxy generation functions generate an ABAP object interface (prefix II_) for an inbound message interface; you must implement this interface using an ABAP object class to make this service available.
Example: Client proxy (class) generated from Outbound Message Interface
Integration Repository
Agenda
XI 3.0 Integration Repository Overview and concepts
Software components and namespaces Interface objects
Proxy generation Mapping objects
Business Process objects Miscellaneous
Mapping Concepts
Mapping
Transformation From One Message Structure To Another Transformation Rules Defined By Mapping Program
<hh:book-flightxmlns:hh="..."> <hh:customer>
<hh:first-name>Micheal</hh:first-name> <hh:surname>Moore</hh:surname> </hh:customer>
<hh:booking-data>
<hh:airline>Airline Kingdom</hh:airline> <hh:connection>AK087</hh:connection> <hh:date>2001-11-22</hh:date>
<hh:class>business</hh:class> </hh:booking-data>
</hh:book-flight>
<ak:BookFlightxmlns:ak="..."> <ak:Date>22.11.2001</ak:Date> <ak:Flight>087</ak:Flight>
<ak:Passenger>Micheal Moore</ak:Passenger> <ak:Class>2</ak:Class>
<ak:Agency>Happy Holiday</ak:Agency> </ak:BookFlight>
Structure Mapping Value
Mapping Techniques In XI
Message mappingGraphical design and test environment
Queue-based model allows handling of very large documents Extensible via Java user-defined functions
XSLT
Open standard Portable
Extensible via Java user-defined functions Memory overhead for very large documents
Java
Flexibility of Java programming language
Java mapping program is responsible for parsing/rendering XML
ABAP
Leverage existing ABAP base
Mapping Objects: Message Mapping
Graphical mapping tool
Graphically define mapping rules between source and target
message types
Queue-based model allows for handling of extremely large
documents
Drag-and-drop
Generates internal Java code
Built-in and user-defined functions (in Java) Integrated testing tool
Message Mapping: Mapping Editor
Data-Flow Editor Structure Overview Source Structure Source Structure Target Structure Target StructureMapping Objects: Interface Mapping
Representation of the mapping at the interface level
Assign mapping program(s) between source and target
message types:
Message mapping
XSLT mapping
Custom Java mapping
ABAP mapping
Mapping programs can be combined in a sequence
N:M interface mapping possible (for use with BPM only!)
For synchronous interfaces, a request and response mapping
Mapping Objects: Imported Archives
The object type ‘imported archive’ is for importing externally defined programs into the Integration Repository:
XSLT stylesheets Java mappings
Java extensions to XSLT mappings
Java classes to be imported in a user-defined function for message mapping
All files to be imported must be archived (JAR format) The archive is uploaded from user workstation.
Integration Repository can serve as central maintenance location
for imported objects
XSLT and text files can be edited directly from IR.
Java CLASS files must be edited and recompiled locally, then re-imported.
Integration Repository
Agenda
XI 3.0 Integration Repository Overview and concepts
Software components and namespaces Interface objects
Proxy generation Mapping objects
Business Process objects Miscellaneous
Business Scenario Objects
A Business Scenario
describes a complete collaborative process from the XI point of view
main focus on the complete message
exchange
describes only the public part of the
process
An Action
describes a function (a process) within one component that is involved in the message exchange
refers to the interfaces that can be used to perform that function
may be used by one or more business scenarios Check Seat Availability Send Flight Booking Order Determine Seat Availability Book Flight Travel Agency Airline Web AS 6.20 Web AS 6.20
What Are XI Business Scenarios Used For?
Business Scenario = Plan of Integration
Business Scenario driven modelling and
visualization of integrated business processes
Collects all XI objects of an integration scenario
Enables single entry point and access to all
objects
Provides structured documentation
Input for XI configuration
Business Scenario guided configuration
Generation of configuration objects
Products, Functions
Connections (Interfaces, Mapping)
Input for implementation
Involved functions and services
Business Process Objects
You can design new objects for executable business processes
by using the graphical Process Editor.
You can use different modeling elements and patterns to design a stateful, cross-component business process.
The following modeling patterns and elements are supported:
Receive messages and trigger process Send, transform (merge or split) messages Collect messages
Multicast Serialization
Process control elements such as switch, assign, fork, wait, block, loop, control
Business Processes & Business Scenarios
Business Process can be incorporatedin a Business Scenario
Representation in a swim lane Treated as a Business System
Concept: Integration Of Scenario And Process
Visualisation In XI Integration Builder
Product A IFabs1 IFabs Product A
Scenario – Component View
Product B Product Template IFabs2 Process S end
W ait for response A lert
[tim eout]
S end response back to initiator
W ait for Negative A cknowledgem ent
A lert
[one out of three]
[continue] Process - Flow Receive Send IFabs1 IFabs2 IFabs
Scenario: integration view of an
abstract collaborative business process
BPM process: executable collaborative business process
Process is assigned to a swimlane – visualization of the public parts of the process
- process is part of a software component of the product - navigation from swimlane in scenario to process object
One action and connection per abstract interface* of the process
- checked consistency between process interface and connections in scenario
Integration Repository
Agenda
XI 3.0 Integration Repository Overview and concepts
Software components and namespaces Interface objects
Proxy generation Mapping objects
Business Process objects Miscellaneous
Import / Export Functions
Integration Repository Business Processes Mappings Interfaces SAP System IDocs, RFCs WSDL XSD BPEL Objects in the Integration
Repository are based on open standards
The import function for WSDL, XSD and DTD files enables you to upload message definitions from external sources.
After conversion to WSDL they can be used to define message mappings and message
interfaces.
The object type External
Definition is a container which is used to make external
message definitions available in the Integration Repository.
BPEL XSLT Java WSDL XSD DTD
Import Of RFC / IDoc Interfaces
Import of RFC / IDoc metadatafrom existing SAP system
Based on connection parameters specified in the SW Component
RFC and IDoc metadata cannot be modified within XI
Namespaces are preset:
urn:sap-com:document:sap:idoc:messages urn:sap-com:document:sap:rfc:functions
XSD and WSDL representation available for export
Procedure: right-click on
‘imported objects’ and follow the wizard
Miscellaneous
The Integration Repository supports versioning of all repository
objects at software component level. Support Packages of a
software component version are also supported.
Message interfaces can be marked as “abstract“ (instead of
“inbound“ or “outbound“). This applies to interfaces which are used in BPM or which are handled by adapters.
Advantage: There is no need to define two interfaces (inbound and outbound) if their structure is identical.
It is possible to enhance data types shipped by SAP with
customer-specific fields. These enhancements will not be lost in the event of a release upgrade.
The information modeled in business scenarios can be used to
describe product release combinations. A separate “component view“ can be defined for each release.
Integration Repository: Unit Summary
You should now be able to:
z Describe the Integration Repository and the objects
that are created in it.
z Understand various Interface Objects and their roles
in integration scenarios.
z Detail the use of web standards in the descriptions
of interface objects in the Integration Repository.
z Explain the Proxy functionality in XI.
z Describe message mappings and list the different
types of mappings available in XI.
z Explain Business Processes and their role in
integration scenarios.
z Describe how to import various objects into the
SAP Exchange
Infrastructure
Topics
Lecture topics
XI Overview
System Landscape Directory Integration Repository
Integration Directory
Runtime
Runtime Workbench Adapter Framework
Business Process Management Server Administration
Security
After completing this unit, you will be able to:
z Describe the Configuration Time Activities of the
Exchange Infrastructure
z Detail the task areas and configuration objects of
the Integration Directory
z Create and work with Collaboration Profiles
z Design Logical Routings
z Work with Collaboration Agreements
z Completely and correctly configure Integration
Scenarios within the Integration Directory
z The Development Consultants on your project have designed and developed Integration Scenarios and the related objects to enable A2A and B2B
communication.
z You are tasked with configuring these scenarios in
the Integration Directory so they can be successfully executed at runtime.
Agenda
Integration Directory XI 3.0
XI 3.0 Integration Directory
Overview and Concepts Business Scenarios Collaboration Profiles Routing Rules Collaboration Agreements Facilities Cache updates
Agenda
Integration Directory XI 3.0
XI 3.0 Integration Directory
Overview and Concepts Business Scenarios Collaboration Profiles Routing Rules Collaboration Agreements Facilities Cache updates
XI Configuration Concept
The goal of the Integration Directory is for the customer to configure the sender-receiver relationships which will be used at runtime.
Service B Service
XI 3.0 Integration Directory: Overview
Integration Directory
Adapt integration content to specific configuration
Delivered empty, without predefined content
all content is customer-specific
Integration content derived from Integration Repository
Open for Customer to add collaboration knowledge relevant to non-SAP
components
Home for centralized adapter configuration
Data provider for IS runtime Integration Builder
Integration Directory
Business Processes
Routing Rules Business Scenarios
Receiver Determination Rules
Interface Determination Rules
(including Mapping Assignment)
Configuration Editors Configuration Wizards Collaboration Profiles Parties , Services & Channels Collaboration Agreements
Task Areas At Configuration Time
Area in the IntegrationDirectory Tasks Collaboration Profile (Objects: Communication Party, Service, Communication Channel)
In the collaboration profile, you document the technical options available to the communication parties for exchanging messages. Specify the potential senders and receivers of messages and the technical communication paths.
Logical Routing
(Objects:
Receiver Determination,
Interface Determination)
In logical routing, you define the flow of messages in a system landscape.
Collaboration Agreement
(Objects:
Sender Agreement,
Receiver Agreement)
In collaboration agreements, you define the technical details for message processing (for example, adapter configuration) and the security settings for specific sender/receiver pairs.
Collaboration Profile Objects
A communication party
represents a larger unit which is involved in a cross-system
process (for example a company).
Services are used to:
• Represent a technical or
business unit, which is to be addressed as the sender or receiver of messages.
• Group interfaces to
exchange messages
according to particular task areas.
• Address business
systems and business processes as senders or receivers of messages.
A Communication Channel defines how an adapter transforms a message so that it can be processed by the Integration Engine
Logical Routing Objects
A Receiver
Determination defines one or more receivers
for a sender and an outbound interface
An Interface
Determination specifies which interface is to be
used for the inbound processing of a
Collaboration Agreement Objects
In the receiver agreement, you define how the message is to be transformed so that it can be processed by a
receiver. In the sender agreement, you
define how the message is to be transformed so that it can be processed by the
Collaboration Profile
Logical Routing
Collaboration
Agreement
...
Sender Agreement
...
Receiver Agreement
Configuration Model: Overview
SenderParty SenderService SenderInterfaceNamespace SenderInterfaceName ReceiverParty InboundChannel Certificates Sender Agreement SenderParty ReceiverParty ReceiverService ReceiverInterfaceNamespace ReceiverInterfaceName OutboundCannel Certificates Receiver Agreement ... Interface Determination ... Receiver Determination SenderParty SenderService SenderInterfaceNamespace SenderInterfaceName ReceiverParty ReceiverService Conditions Receiver Determination SenderParty SenderService SenderInterfaceNamespace SenderInterfaceName ReceiverParty ReceiverService ReceiverInterfaceNamespace ReceiverInterfaceName MappingProgramName Interface Determination ... ... ... Party Service 1 0..* Channel 0..1 0..* ServiceName AlternativeIdentifiers Interfaces Service PartyName AlternativeIdentifiers Party
Service may be:
• a B2B service • a Business System • a Process ChannelName AdapterEngine TransportProtocol BusinessProtocol BusinessProtocolVersion URL LogonData Channel
Ford JBL … POCreate POConfirm XI CP CA
Configuration Model: Terminology
Ford JBL What must XI do, so that Ford is able to send a POCreate What must XI do, so that XI is able to forward a POCreate to JBL SenderAgreement ReceiverAgreement XI must
decrypt XI must encrypt
Sender Channels Sender Interfaces Sender Agreements Receiver Channels Receiver Interfaces Receiver Agreements
Attention: the notion of Role may be misleading
In the purchasing scenario, Ford is a buyer and may be a technical
sender (POCreate) and a technical receiver (POConfirm) – and vice versa RNIF and the Repository scenario knows Roles in the sense of Business
Agenda
Integration Directory XI 3.0
XI 3.0 Integration Directory
Overview and Concepts Business Scenarios Collaboration Profiles Routing Rules Collaboration Agreements Facilities Cache updates
Business Scenario objects (optional):
Serve as grouping for related configuration objects
Can be derived from the Integration Repository via a wizard
Can serve as the basis of the Configuration wizard (Business Scenario Configurator).
Creating Business Scenarios
Add Collaboration Profile objects (Partners, Services, and Communication Channels)
Add Logical Routing objects (Receiver
Determination, Interface Determination) and Collaboration Agreement objects (Sender Agreements, Receiver Agreements) – or use the Configuration Wizard.
Configuration Wizard
Agenda
Integration Directory XI 3.0
XI 3.0 Integration Directory
Overview and Concepts Business Scenarios Collaboration Profiles Routing Rules Collaboration Agreements Facilities Cache updates
XI 3.0 Collaboration Profile: Partner (Party)
The optional object party facilitates the B2B functions of SAP Exchange Infrastructure and contains the following information:
A Name and a Description
Additional identifiers (DUNS, DUNS+4, GLN) Assigned Services
XI 3.0 Collaboration Profile: Service
Service Objects:
Address business systems and business processes as senders or receivers of messages
Serve as grouping of interfaces for message exchange according to particular task areas
Contain the following information: Interfaces (inbound/outbound)
Communication channels (sender/receiver) 3 Types Of Service:
Business Service Business System Business Process
XI 3.0 Service Object : Business Service
A Business Service represents an
abstract entity for addressing the senders and receivers of messages
A Business Service can be used in
cross-company processes, for example, if the parties involved have only
published their interfaces and not their system landscape, or it is only partly known.
With a Business Service, you can define
the technical or business subunits of the companies (parties) involved and then assign the relevant interfaces
XI 3.0 Service Object : Business System
Business System objects are derived directly from existing XI Business Systems in the System Landscape Directory.
As such, they contain information about Software Components assigned to the Business System, and which inbound/outbound interfaces are exposed.
XI 3.0 Service Object : Business Process
A Business Process can send or receive messages by using Abstract Interfaces
At configuration time, Business Processes are handled as senders and receivers or messages
XI 3.0 Collaboration Profile: Channel
Communication Channel
Contains specific information for the message protocol, transport protocol, URL, logon data and adapter-specific configuration
For configuring specific adapters, pre-delivered
communication channels, called channel templates, are
Sender or
Adapter Types
Abbreviation Description
XI
For communicating using the proxy runtime. You can also use this
adapter type to communicate with an Adapter Engine at the receiver that is based on XI 2.0
IDoc For communicating with an SAP System by using the IDoc adapter
RFC For communicating with an SAP System by using the RFC adapter
http For communicating with http server by using the http adapter
JDBC For communicating with a database system by using the JDBC adapter
JMS For communicating with a messaging system by using the JMS adapter
Marketplace For communicating with marketplaces (see: Marketplace Adapter)
File For communicating with a file system by using the File/FTP adapter
RNIF For connecting to the RNIF protocol (RosettaNet Implementation
Agenda
Integration Directory XI 3.0
XI 3.0 Integration Directory
Overview and Concepts Business Scenarios Collaboration Profiles Routing Rules Collaboration Agreements Facilities Cache updates
Routing Rule: Receiver Determination
Use the condition editor to enter conditions for
routing
Assign one or more receivers to a sender/outbound interface pair.
Content-based receiver determination is possible (via XPath/context objects)
Receiver should be an existing service (with or without Party).