TBIT44
Lecture topics
Topics
Mapping Patterns
Mapping patterns are some of the common mapping requirements we found in the past which XSLT was used, because we did not think that Message Mapping provided the functionality
Source: Order details containing customer, order numbers and order amount
Target: Total and count the order by each customer and a summary of all orders
Target: Two complex elements had to be populated from the source. Each one contains a sequence number which matches the position of the data in the source.
Sequence number to be generated.
SAP AG 2002, Title of Presentation, Speaker Name 6
Mapping Patterns SequenceNumber Generation (II) There are two ways the sequence number can be generated.
1.
Use Advanced UserDefined function to generate the sequence number all at once. Use Simple UserDefined function to generate the sequence number for each occurrence separately, keeping track of the sequence number value previously generated.
2.
Use Advanced UserDefined function to generate the sequence number all at once.
The java function creates the sequence number all at once based on the number of elements in the source. The sequence numbers are written to the ResultList object.
Use Advanced UserDefined function to generate the sequence number all at once.
Use Advanced UserDefined function to generate the sequence number all at once.
Test Results:
Use Simple UserDefined function to generate the sequence number for each occurrence separately, keeping track of the sequence number value previously generated.
The sequence number is stored in the container object. Each time it is retrieved, incremented and saved. Note: There is no input required.
Use Simple UserDefined function to generate the sequence number for each occurrence separately, keeping track of the sequence number value previously generated.
Use Simple UserDefined function to generate the sequence number for each occurrence separately, keeping track of the sequence number value previously generated.
Target: Two CurrencyAmts are to be created. One is to credit one account. The other is to debit another account. The amount will either be positive or negative depending on the ADJTYPE.
Mappings for all 3 elements are identical, except for the element names.
Target document:
The products are to be sorted and totaled by prices with the ORDERID listed.
Get a list of all the products. Since the same product can be in multiple orders, we must eliminate the duplicates, and, then, sort them. Sum the prices by product and assign those totals to the products in their sorted order. Examine all the ORDERIDs and determine which ORDERIDs contain each of the products in the sorted list. Then, assign those ORDERIDs to the products.
2.
3.
Extract the products, eliminate duplicate names, and sort them in alphabetical order.
Note: Cache Entire Queue is checked. When the product is being retrieved, the Context Change is skipped. The Context Change is added to the ResultList.
CPA Cache
Learning Objectives
As a result of this unit, you will: Understand the basics of CPA Cache, including:
Configuration Monitoring Troubleshooting Manual refresh
Cache overview
Integration Builder
Business system
SLD Cache Own Business system
Integration Server
Business Process Engine Integration Engine
Cache Update
TA: SXI_CACHE Delta Full (only on request)
Business
Process Configuration Routing Rules Collaboration Agreements Collaboration Profiles
Cache
J2EE: CPACache Delta Full via URL
Runtime Access
Cache
SLD Cache
Software components versions Based On
Cache Update
Repository Cache
Adapter Framework
Integration Repository
SAP AG 2004, TBIT44: Adapters: CPA Cache / 3
Integration Directory
XIAFuser
XIDIRuser
Adapter Engine
Runtime Cache
Notif
Notif error
Changelist handler
Directory Object
Repository Object
Update
OK / OK with errors
SLD
1 Change in XI ID 4 5
3 2
AE CPA Cache
Messaging system
Learning Objectives
As a result of this unit, you will: Understand the basics of the messaging system, including:
Messaging System overview Message flow Implementation of different adapters
exit
Convert Bean (Adapter specific) XI message MML/BC message
AFW ListenerBean
Read agreements Read channels XI message
exit
XI adapter
Protocol handler Configuration
ListenerBean
XI IS
URL
SPI
SPI
servlet
servlet
URL
IB Directory
PCK
DB
Example
you can use a simple file sender / receiver scenario to test the display of status Start (activate) the sender and receiver channel
Start (activate) the receiver channel again press button after selecting the message in wait mode
FAIL
Delivery exception
Worker thread
TBDL
DLNG
DLVD
WAIT
HOLD
NDLVD
TBIT44: BPM
Exercise 2: Sales Order Processing
Use Case
Other System Order Fulfillment
Catalog
Dealer Management System Supplier 2
Other System
Other System
Other System
Order System
Other System
Other System
Order Fulfillment
Overview
CRM System Send items AirlineGroup1 AirlineGroup2 Integration Process 1. Receive order items 2. Preparations Create materials 3. Create materials if necessary 4. Create purchase and sales order 5. Send purchase order to supplier and receive confirmation Preparations Travel Agency Summer
Integration Process
Collect pattern:
Items correlated by CustomerNo End condition:
after sending 3 items
Exercise 2: Preparations
Returns a list of materials that have to be created
Transformation step
Application exception
Fork for parallel processing Transport and application acknowledgments Using send contexts Correlation Container operations Switch Manual Exception Handling
10
Purchase order error can be corrected in a given timeframe by starting the report manually
Report executed in time. Message sent to the process indicating the that purchase order is ok. The process PurchaseOrder status is updated.
11
If an error in the purchase order is not compensated manually (see last slide), the Purchase Order Status flag keeps the status ERROR for the process. If the timeout occurs, the process continues and runs into automatic compensation.
If either the purchase order OR the sales order run into an error, the automatic compensation branch cancels BOTH Orders, raises an alert, and then cancels the whole process
12
13
14
15
16