Creating and Deploying Integration Flows to the Advanced Adapter Engine Extended (AEX)

Objective

After completing this lesson, you will be able to create an AEX integration flow

Integration Flow Design

The SAP NetWeaver Design Studio (NWDS) tool is gaining popularity and has become the tool of choice for performing various development tasks within the SAP NetWeaver platform. As a result, SAP has also made it possible to develop ICO-like configurations from SAP NWDS. These configurations are known as Integration Flows (iFlows).

Integration Flows (iFlows) are the equivalent of the traditional Integrated Configurations (ICOs) created in the Integration Builder tool of SAP Process Integration (PI) or SAP Process Orchestration (PO). When an iFlow is created and deployed, an ICO is also automatically generated as one of the directory objects because iFlows and ICOs share the same database.

iFlows are built on Business Process Modeling Notation (BPMN)-like artifacts. This type of artifact gives a good overview of systems and components involved in end-to-end messaging and connectivity. It also presents an insight into the architecture of the process flow. Even though they are developed from SAP NWDS, an iFlow fulfills the same role as an ICO and, invariably, iFlows provide an alternative to ICOs. The use of SAP NWDS for designing, configuring, and deploying iFlows presents a unique and simplified way of working in the SAP Process Orchestration platform. Enhanced capabilities of SAP NWDS (for example, as a unified Integrated Development Environment (IDE) tool for designing, configuring, and deploying iFlows, SAP Business Process Management (BPM), SAP Business Rules Management (BRM), Enterprise JavaBeans (EJBs) and related projects) presents a new approach to working with composite services.

SAP NWDS supports the creation of both SAP Process Orchestration Enterprise Services Repository (ESR) and ID objects. These objects are used for end-to-end messaging via the middleware layer without the use of the Enterprise Service Builder (ESB) and Integration Builder Java clients (swing GUI tools). You already used the SAP NWDS as the development tool for SAP BPM, SAP BRM, and many other SAP technologies.

An iFlow defines the interaction between the systems in A2A or B2B scenarios. It provides a visual BPMN representation of an integration process and brings design time and configuration time together.

Types of Flow Design

  • BPMN 2.0

    BPMN 2.0 provides the capability of understanding integration processes in a graphical notation and communicating these processes in a standard manner. In this design, business procedures and integration processes can be understood in the same language. BPMN representation provides an intuitive and standard representation for integration scenarios.

  • Enterprise integration patterns

    These are pattern-based approaches for developing iFlows. Patterns can help to easily realize common integration challenges. Each pattern-based iFlow lists all the steps required in SAP PI to realize the scenario.

Integration Flow Tool

The benefits of tools for SAP PI through iFlows are as follows:

  • Simplifies the integration of systems, applications, and services by having an easy and visual representation of the process
  • Leverages the full power of Eclipse and the BPMN standard
  • Provides the basis of standard enterprise integration patterns

You can build iFlows in the NWDS studio to be deployed to process integration.

The features of iFlows:

  • An iFlow represents an integration scenario using a graphical model containing endpoints and flow steps. It holds information of all elements involved in process integration.
  • When an iFlow is complete, it is deployed to the runtime where the actual execution of process integration takes place.
  • When an iFlow is deployed, an Integrated Configuration is generated.

  • Integration flows access the objects in two repositories, the Enterprise Services Repository (ESR) and the ID, in one perspective.
  • iFlows are available as plug-ins for standard Eclipse installations and NWDS.

You transport iFlows and their referenced entities from one system to another.

Migrating ICon to IFlow

With SAP NWDS you are able to create IFlows based on ICons. Perform the following steps:

  1. Navigate to Menu Process IntegrationGenerate Integration FlowsIntegrated Configuration
  2. Select the ICon you want to convert into an IFlow.
  3. Enter a name for the target IFlow.
  4. Select conversion option:
    • Activate converted integration flows.
    • Deploy converted integration flows.

Enterprise Integration Pattern

Enterprise Integration Patterns (EIP) supports integration specialists in solving recurring problems faced in the integration of enterprise application. There exist different integration patterns that support various business processes. iFlows support a number of standard integration patterns by default. But it is also possible to create user-defined templates.

The implementation of stateless patterns is usually done as Integration Flows, running in the messaging system (on the AEX) of SAP NetWeaver Process Orchestration. The following enterprise integration patterns are available in SAP NetWeaver Developer Studio (NWDS) for creating iFlows:

Point-to-point

A point-to-point channel ensures that messages are sent to one receiver only.

Recipient List

A recipient list allows you to specify one or more recipients. This message router examines the incoming message and routes it to one or more different receiver channels specified on the recipient list.

Message Translator

A message translator converts the data structure of a component into another data structure to use in a different context

Recipient List (dynamic conditions)

A recipient with dynamic conditions uses a mapping program to dynamically determine a target receiver and routes the incoming messages to the identified receiver system.

Recipient List (Multiple Senders)

Use this pattern to decouple routing and processing of a message from the senders and to maintain the central control over the message flow. You can dynamically add senders by creating suitable sender agreements.

Recipient List (Arbitrary Receivers)

Use this pattern if a large number of receivers share the same receiver interface determination. Outbound processing is configured by means of receiver agreements.

Note

All patterns are described in the help portal: https://blogs.sap.com/2012/09/15/sap-process-orchestration-integration-patterns/

The figure iFlow — Enterprise Integration Patterns shows the selection of default Integration Patterns delivered with the SAP Process Integration 7.5 (AEX).

Create and Deploy a Simple Integration Flow

Business Scenario

You want to simulate the distribution of material master data. This data is created as an XML document in system A and then sent to SAP Process Integration by HTTP using the HTTP adapter. For this purpose, use the Enterprise Integration Pattern Point-to-Point Channel, to create your iFlow.

Exercise Information

Note

In this exercise, when the values include ##, replace the character with a two-digit number (01–30).

Exercise Options

You can perform this exercise in two ways:

  1. Live Environment: choose Start Exercise, and from the entry page choose Open PDF Document. Follow the steps described in this pdf in your own system landscape.
  2. Simulation: choose Start Exercise, and from the entry page choose Start Tutorial. Watch the step-by-step instructions within the simulation.

Note

We recommend running the simulation first.

Task 1: Create an Integration Flow in NWDS

Create an Integration Flow for the scenario. Assign the business systems BS_BIT500_##_A as the sender and BS_BIT500_##_B as the receiver. Use the communication channels created in the previous exercise.

Caution

This exercise requires exercise, Connect SAP NWDS to your Process Orchestration System, to be completed.

Steps

  1. Create an Integration Flow for the scenario.

    1. In the SAP Process Integration Designer Perspective navigate to the PI Explorer tab.

    2. From the menu, choose NewIntegration Flow.

    3. Enter IFlow_MaterialA_MaterialsB_## as the Name and ID.

    4. Choose the Point-to-Point Channel pattern.

    5. Choose Next.

    6. In the Sender System tab, use the Browse button to select the BS_BIT500_##_A communication component.

    7. Choose OK.

    8. Using the Browse button, choose the interface and the operation SI_Material_outb.

    9. Choose OK.

    10. In the Receiver Systems tab, choose Add.

    11. Choose BS_BIT500_##_B and OK.

    12. In the Interface column, choose the … (ellipsis) button that appears when you select it and choose SI_Materials_inb interface.

    13. ChooseFinish.

    14. Your new iFlow opens automatically. If it does not open, refresh the PI Explorer tab and double-click in it.

  2. Assign the Sender Channel.

    1. Select the arrow from the BS_BIT500_##_A to the iFlow until the color changes to orange.

    2. Right-click and choose Assign Referenced Channel.

    3. Select the CC_HTTP_Sender_## channel and choose OK.

  3. Assign the Receiver Channel.

    1. Select the arrow from the BS_BIT500_##_B to the iFlow until the color changes to orange.

    2. Right-click and choose Assign Referenced Channel.

    3. Select the CC_File_Receiver_##_B channel and choose OK.

  4. Save, activate and deploy your iFlow.

    1. Save your iFlow.

    2. Right click in the iFlow and choose Activate.

    3. Choose Yes.

      Result

      iFlow should be activated successfully. Refresh if not refreshed automatically.
    4. Right click in your iFlow and choose Deploy.

    5. Choose Yes.

      Result

      Your iFlow should be successfully deployed.

Task 2: Check the iFlow and Integrated Configuration in the Integration Directory

Steps

  1. Check the objects created in the previous task in the Integration Directory.

    1. In the address bar, enter the URL http://nwktdc00.wdf.sap.corp:50000/dir to access the NWK system.

    2. On the SAP Process Integration screen, choose Integration Builder and log on with your BIT500-## user id and password.

  2. Check your new configuration.

    1. Expand theIntegration Flow node and find your IFlow_MaterialA_MaterialsB_##, double-click to open it.

    2. Check the configuration objects. You should have a new Integrated Configuration.

    3. Double-click in the object to open it.

    4. Check each of the tabs of the Integrated Configuration, it should have exactly the same details that your new iFlow. Note that in the description it says that has been generated from an iFlow.

Result

Task 3: Send Messages to Test the Message Flow

Send a message to the AEX and monitor the message flow.

Steps

  1. Open the HTTP client for NWK.

    1. In the address bar, enter http://nwktdc00.wdf.sap.corp:50000/dir to access the NWK system.

    2. On the SAP Process Integration screen, in Additional Information, choose HTTP Client – Material.

  2. Adapt the message parameters and send a message.

    1. On the HTTP Client for PI 7.4 AEX page, replace ## with your group number in the Sender Service and SenderNamespace fields.

    2. In the Payload screen area, replace ## with your group number.

    3. To send the message to the AEX, choose the Send button.

      Note

      You will not receive a response because the scenario is asynchronous. Check for any error messages.
  3. Monitor the message flow in the AEX and check the file folder.

    1. Go back to the SAP Process Integration screen and choose Configuration and Monitoring Home.

    2. Log on using your user identifier and password.

    3. On the Monitoring tab page, choose Adapter EngineMessage Monitor.

    4. On the Message Monitoring: PI Messages screen, choose Advanced.

    5. Select the Message Header Area.

    6. In the Sender Component column, enter BS_BIT500_##_A.

    7. Choose Go.

    8. The messages should have status Delivered. Check some of the messages and look specifically at the Message Log tab to understand what happened during processing.

    9. Open your group share folder group##, which was already mounted in Exercise 1

    10. Open file Material_<yyyymmdd-hhmmss-ms>.xml.

    11. Verify the content of this file with the message you’ve send.

Message Translator

You like to exchange messages with various partners each having their own message format and type of communication.

You use a Message Translator pattern to translate one data format into another. There are different levels of transformation:

Data structures

Data structures describes the different entities such as customer, address, order, etc., and how they are related to each other.

Data types

Data types describe the data on field level, for exmple: field name, type, such as integer or string, constraints such as field length, range, etc.

Data representation

Data representation deals with data formats such as xml or flat file format, what character set is used or whether the data is encrypted or compressed, etc.

Transport

Transport deals with how data is transferred between two systems, especially how guaranteed delivery is ensured and how the different communication protocols such as http, SOAP, JMS, etc. are translated.

Process Orchestration supports all levels of transformation.

On the level of data types and data structures, the transformation is usually carried out in a mapping. In ESR you can choose between the following mapping tools:

  • Message Mapping

  • Java Mapping

  • XSLT Mapping

In the iFlow, you can add a mapping task. In the properties of the mapping tast, maintain the opeation mapping.

On the level of data representation and transport, the transformation is usually carried out in an adapter. Process Orchestration provides a number of different adapter types such as http, SOAP, RFC, IDoc, JMS, file/FTP, Mail, RNIF, CIDX, etc.

Add Mapping Functionality (Message Translator)

Business Scenario

You want to add a mapping functionality, as the message structure of the source message and the target message doesn’t fit. For this purpose, open the iFlow iFlow_MaterialA_MaterialsB_## from the last exercise and extend it by an Operation Mapping.

Exercise Information

Note

In this exercise, when the values include ##, replace the character with a two-digit number (01–30).

Exercise Options

You can perform this exercise in two ways:

  1. Live Environment: choose Start Exercise, and from the entry page choose Open PDF Document. Follow the steps described in this pdf in your own system landscape.
  2. Simulation: choose Start Exercise, and from the entry page choose Start Tutorial. Watch the step-by-step instructions within the simulation.

Note

We recommend running the simulation first.

Task 1: Assign a Mapping Program

In the NWDS, open the iFlow iFlow_MaterialA_MaterialsB_## and assign an mapping object created in the Enterprise Services Repository Perspective.

Caution

This exercise requires exercise, Connect SAP NWDS to your Process Orchestration System, to be completed.

Steps

  1. Assign a mapping program to your iFlow Scenario.

    1. Navigate to your iFlow iFlow_MaterialA_MaterialsB_## in the Process Integration Designer Perspective in NWDS.

    2. In the iFlow, select the line between the two envelopes, right-click on the line and choose Add Mapping from the context menu.

    3. Right-click in the Mapping step and choose Assign Mapping.

    4. Select the OM_BIT500_## operation mapping and choose OK.

  2. Save, activate and deoploy your iFlow.

    1. Save your iFlow.

    2. Right click on the iFlow and choose Activate.

    3. Choose Yes.

      Result

      iFlow should be activated successfully. Refresh if not refreshed automatically.
    4. Right click in your iFlow and choose Deploy.

    5. Choose Yes.

      Result

      Your iFlow should be successfully deployed.

Task 2: Send Messages to Test the Message Flow

Send a message to the AEX and monitor the message flow.

Steps

  1. Open the HTTP client for NWK.

    1. In the address bar, enter http://nwktdc00.wdf.sap.corp:50000/dir to access the NWK system.

    2. On theSAP Process Integration screen, in Additional Information, choose HTTP Client – Material.

  2. Adapt the message parameters and send a message.

    1. On the HTTP Client for PI 7.4 AEX page, replace## with your group number in the Sender Service and SenderNamespace fields.

    2. In the Payload screen area, replace ## with your group number.

    3. In the user ID and password fields, enter your user name and password.

    4. To send the message to the AEX, choose the Send button.

      Note

      You will not receive a response because the scenario is asynchronous. Check for any error messages.
  3. Monitor the message flow in the AEX and check the file folder.

    1. Go back to the SAP Process Integration screen and choose Configuration and Monitoring Home.

    2. Log on using your user identifier and password.

    3. On the Monitoring tab page, choose Adapter EngineMessage Monitor.

    4. On the Message Monitoring: PI Messages screen, choose Advanced.

    5. Select the Message Header Area.

    6. In the Sender Component column, enter BS_BIT500_##_A.

    7. Choose Go.

    8. The messages should have status Delivered. Check some of the messages and look specifically at the Log to understand what happened during processing.

    9. Open your group share folder group##, which was already mounted in Exercise 1

    10. Open file Material_<yyyymmdd-hhmmss-ms>.xml.

    11. Verify the content of this file with the message you’ve send.

Message Routing - Content-Based Router

Content-Based Routing

In many business cases, it is necessary to define conditions with which the receivers of a message are determined during routing. For example, consider a condition in the following form: "If the value of a specific field in the message is x, then forward the message to receiver y."

The Content-Based Router scans the relevant message payload and routes the message to the right channel, depending on the data read. It is important, that the message is routed to exactly one channel.

At configuration time, you can define conditions that depend on the content of the message. You can do this for both the determination of receiver communication components and inbound interfaces.

To configure content-based routing, you basically do the following:

  • When configuring content-based routing in an integrated configuration, Receiver tab, you define routing conditions for specific receivers or a sets of receivers.

  • When configuring content-based routing in an integrated configuration, Receiver Interfaces tab, you define routing conditions for specific sets of inbound interfaces.

In the Integration Flow, you can add a Recipient List and maintain a list of potential receivers. Note, there’s no differentiation between the Recipient List and the Content-Based Router patterns. You configure the Recipient List in that way, that it becomes a Content-Based Router.

The Figure Content-Based Router illustrates the following business case: The New Order is forwarded to the correct receiver Widget Inventory, depending on the routing condition.

Routing Conditions

You can enter conditions (content-based routing) for the receiver determination. The receiver is then taken into account only when the condition is fulfilled. Routing conditions refer to the values in the message payload. To make definitions, use the condition editor, which, in turn, calls the expression editor.

In the condition editor, by linking two operators together with one operator, you can enter a logical expression in a table. A complex condition can be produced by combining several table rows using the operators AND and OR.

The expression in the left operand that is entered using the expression editor refers to an element in the message payload; the expression in the right operand is a fixed value that is to be compared. The right operand can only also be determined by the expression editor in integration processes.

The operators are as follows:

  • Equal to

  • Not equal to

  • Contains Pattern (CP)

    You can use + for a symbol and * for a character string.

  • Exists (EX)

    Using this operator, you can determine whether the substructure portrayed in the expression exists. For example, if you want to check whether a particular element exists in the payload, you enter the element to be checked in the left operand and leave the right operand blank.

You can query the values from the message using XPath expressions or context objects.

Context objects are explicitly defined as objects in the Enterprise Services Repository (ESR) and are assigned to a message element in the service interface.

Add an Additional Receiver with Routing Conditions

Business Scenario

You want to distribute your messages to an additional receiver. To route your messages to the correct receiver, it’s required to add a routing condition. For this purpose, extend your existing iFlow iFlow_MaterialA_MaterialsB_## by an additional receiver and a routing conditions.

Note

To perform this exercise, another receiver is required. In a classroom training, there are multiple receivers available, but in a Live Access or Self-Pace situation, either create another receiver, or skip this exercise.

Exercise Information

Note

In this exercise, when the values include ##, replace the character with a two-digit number (01–30).

Exercise Options

You can perform this exercise in two ways:

  1. Live Environment: choose Start Exercise, and from the entry page choose Open PDF Document. Follow the steps described in this pdf in your own system landscape.
  2. Simulation: choose Start Exercise, and from the entry page choose Start Tutorial. Watch the step-by-step instructions within the simulation.

Note

We recommend running the simulation first.

Task 1: Add Another Receiver

Steps

  1. In the Integration Flow add another student receiver for example BS_BIT500_##+1_B.

    1. In the NWDS open your IFlow IFlow_MaterialA_MaterialsB_##.

    2. In the iFlow, select the line between the envelope and the Operation Mapping.

    3. Choose Add Receiver.

    4. Select the box with the new receiver.

    5. Right-click, choose Assign System and select your neighbor’s system for example, BS_BIT500_##+1_B.

    6. Right-click the Interface and select Assign Interface.

    7. In the Choose Interface window, select SI_Materials_inb of Namespace http://education.sap.com/scb##+1 from Software Component SC_BIT500_##+1_B

    8. Select the arrow from the iFlow to the SI_Materials_inb interface until the color changes to orange.

    9. Right-click and choose Assign Referenced Channel.

    10. Select the BS_BIT500_##+1_B channel and choose OK.

    11. Save your iFlow.

  2. Add a condition for your receiver BS_BIT500_##_B.

    1. Click on the Recipient List box

    2. In the lower screen area under Properties in the Static routing area, choose your receiver BS_BIT500_##_B.

    3. Choose Edit.

    4. The Condition Editor window appears.

    5. In the Parts and Condition area open the XPath folder.

    6. Double click on /p1:MT_Material/MaterialID.

    7. In the String Operators area, select Equal To (=).

    8. Behind the equal to (=) enter the following text: "BIT500_##".

      Result

      Result example: XPath./pi:MT_Material/MaterialID = "BIT500_##":
    9. Choose OK.

  3. Save, activate and deploy your iFlow.

    1. Save your iFlow.

    2. Right click in the iFlow and choose Activate.

    3. Choose Yes.

      Result

      iFlow should be activated successfully. Refresh if not refreshed automatically.
    4. Right click in your iFlow and choose Deploy.

    5. Choose Yes.

      Result

      Your iFlow should be successfully deployed.

Task 2: Send Messages to Test the Routing Condition

Send a message to the AEX and monitor the message flow.

Steps

  1. Open the HTTP client for NWK.

    1. In the address bar, enter http://nwktdc00.wdf.sap.corp:50000/dir to access the NWK system.

    2. On the SAP Process Integration screen, in Additional Information, choose HTTP Client – Material.

  2. Adapt the message parameters and send a message.

    1. On the HTTP Client for PI 7.4 AEX page, replace ## with your group number in the Sender Service and SenderNamespace fields.

    2. In the Payload screen area, replace ## with your group number.

    3. In the user ID and password fields, enter your user name and password.

    4. To send the message to the AEX, choose the Send button.

      Note

      You will not receive a response because the scenario is asynchronous. Check for any error messages.
  3. Send another message with a changed payload.

    1. For this purpose change the MaterialID in your payload from ## to ##+1

    2. Choose Send.

  4. Monitor the message flow in the AEX and check the file folder.

    1. Go back to the SAP Process Integration screen and choose Configuration and Monitoring Home.

    2. Log on using your user identifier and password.

    3. On the Monitoring tab page, choose Adapter EngineMessage Monitor.

    4. On the Message Monitoring: PI Messages screen, choose Advanced.

    5. Select the Message Header Area.

    6. In the Sender Component column, enter BS_BIT500_##_A.

    7. Choose Go.

    8. The messages should have status Delivered. Check some of the messages and look specifically at the Log to understand what happened during processing.

    9. Open your group share folder group##, which was already mounted in Exercise 1.

    10. Open file Material_<yyyymmdd-hhmmss-ms>.xml.

    11. Verify the content of this file with the message you’ve send.

    12. Open the group share folder group##+1.

    13. Check the files there.

Message Routing - Splitter

Defining Message Splits

You can set up scenarios where a message is split into several fragmented messages, at runtime, that are then sent to the same (or different) receiver systems.

These are the basic scenarios that you can configure using an interface determination from the Integration Directory:

  • Interface Split

  • Mapping-based message split

Defining an Interface Split

By default, in an interface determination you specify one or more inbound interfaces for a given receiver system. For each inbound interface, you might also like to assign a mapping since the inbound interfaces are most likely different from each other.

Basic Procedure to define an Interface Split

  1. Define the service interfaces and operations in the ES Repository.

  2. Optional: Define the necessary mappings in the ES Repository.

  3. Define an interface determination in the Integration Directory (for Integration Engine-based communication) or an integrated configuration (for all scenarios where messages are processed by the Advanced Adapter Engine).

The figure Interface Split shows the behavior at runtime.

Mapping-Based Message Split

When you have a larger message (for example, one message containing a large number of line items) to be split into several smaller messages with each message containing only a subset of line items of the large message, then you can do the following:

  1. In the ES Repository, define a 1:n multi-mapping to specify the transformation of the large message into n smaller messages.

  2. In the Integration Directory, define an integrated configuration with the following properties:

    • The object key contains the source interface of the multi-mapping as outbound interface.

    • In the integrated configuration, select the multi-mapping from the ES Repository. (in the Operation Mapping field)

The figure Mapping-Based Message Split shows the behavior runtime.

Note

You will find more information in Unit 14, Lesson: Mapping Multiple Messages.

Caution

Using this option, you can only configure a message split where the split messages are sent to different inbound interfaces of the same receiver system.

The reason for this is as follows: During runtime, the receiver determination step is performed prior to the mapping step. At the time when the multi-mapping is performed and the corresponding inbound interfaces are calculated (and the corresponding split messages are generated), there is no chance to do another "receiver split". The resulting split messages can only be sent to the receiver system determined in the previous step.

Create and Deploy an iFlow with a Message Split

Business Scenario

A scenario that requires you to use the AEX and several parts of a message have to be saved as separate files. As a result, you will create an integration flow in NWDS and deploy it to create an integrated configuration for the AEX.

Caution

This exercise requires exercise, Connect SAP NWDS to your Process Orchestration System to be completed.

Exercise Information

Note

In this exercise, when the values include ##, replace the character with a two-digit number (01–30).

Exercise Options

You can perform this exercise in two ways:

  1. Live Environment: choose Start Exercise, and from the entry page choose Open PDF Document. Follow the steps described in this pdf in your own system landscape.
  2. Simulation: choose Start Exercise, and from the entry page choose Start Tutorial. Watch the step-by-step instructions within the simulation.

Note

We recommend running the simulation first.

Create and Deploy an iFlow with a Message Split - Part 1

Create and Deploy an iFlow with a Message Split - Part 2

Task 1: Analyze Design Objects in NWDS

Check the object that will be used in the next task to configure the scenario.

Steps

  1. In the Enterprise Services Browser, check the Software Component called FLIGHT_BOOKING_WORKSHOP 1.0 of flight.com and analyze the objects created.

    1. In the Enterprise Services Repository perspective, find the Enterprise Services Browser and expand the FLIGHT_BOOKING_WORKSHOP 1.0 of flight.com Software Component.

    2. Expand the http://flight.com/agency namespace.

    3. Look at the Message Types, Services Interfaces, and Mapping Objects.

Task 2: Configure a Scenario in NWDS

Configure a scenario on AEX where a booking order request (sent using HTTP) from your agency (Agency_##) is forwarded to the AgencyTracking system using different interfaces.

Note

The namespaces look like URLs but they do no work in the same way.

Steps

  1. Create business component Agency_## and assign BookingOrderRequest_Out as the outbound interface.

    1. In the SAP Process Integration Designer Perspective, navigate to the PI Explorer tab.

    2. From the menu, choose NewBusiness Component.

    3. In the New Business Component window, as the name enter Agency_##.

    4. Choose the Finish button.

    5. In the Business Component screen, in the Sender Interface area, in the Name field, enter BookingOrderRequest_Out from the http://flight.com/agency namespace. This is done by using the Add button of the field. Select the entry in the list.

    6. Choose OK.

    7. Save the business component.

  2. Create a communication channel HTTP_S_Agency_## of the HTTP_AAE/ Sender type for the Agency_## business component, use the latest version available.

    1. On the PI Explorer tab page, choose NewChannel.

    2. In the Create a channel dialog box, for the channel name enter HTTP_S_Agency_##.

    3. Enter Agency_## as Communication Component by using the Browse button. Select your sender component from the list.

    4. Choose the OK button.

    5. Choose the Finish button.

    6. In the Adapter Type area, select HTTP_AAE in the http://sap.com/xi/XI/System of SAP BASIS 7.50. This can be done by using the Browse button..

    7. Select the line and choose the OK button.

    8. In the General Details area, change the Direction to Sender.

    9. Save the communication channel.

  3. Create a communication channel of the File Receiver type for business component AgencyTracking. Make sure the Communication Channel doesn't have anything in the Party field, not even a * as it won't appear in NWDS.

    FieldValue
    Communication ComponentAgencyTracking
    Communication ChannelFile_R_BookingRequest_##
    File Name SchemeBookingRequest_##_.xml
    Target Directory/usr/sap/trans/tmp/AgencyTracking/BookingRequest
    1. On the PI Explorer tab page, choose NewChannel.

    2. In the Create a channel dialog box, for the channel name enter File_R_BookingRequest_##.

    3. Enter AgencyTracking as Communication Component by using the Browse button. Select your sender component from the list.

    4. Choose the OK button.

    5. Choose the Finish button.

    6. In the Adapter Type area, select File in the http://sap.com/xi/XI/System of SAP BASIS 7.50. This can be done by using the Browse button..

    7. Select the line and choose the OK button.

    8. In the General Details area, change the Direction to Receiver.

    9. Find the Adapter-specific tab page.

    10. On the Target tab page, enter /usr/sap/trans/tmp/AgencyTracking/BookingRequest in the Target Directory field. In the Filename Scheme field, enter BookingRequest_##_.xml.

      Caution

      The target directory may display with extra spaces or hyphens on-screen. Ensure that you do not include any spaces or hyphens when entering the target directory.
    11. Save the communication channel.

  4. Create two additional communication channels, File_R_FlightData_## and File_R_PassengerData_##, using the data in the tables.

    FieldValue
    Communication ComponentAgencyTracking
    Communication ChannelFile_R_FlightData_##
    File Name SchemeFlightData_##_.xml
    Target Directory/usr/sap/trans/tmp/AgencyTracking/FlightData
    FieldValue
    Communication ComponentAgencyTracking
    Communication ChannelFile_R_PassengerData_##
    File Name SchemePassengerData_##_.xml
    Target Directory/usr/sap/trans/tmp/AgencyTracking/PassengerData

    Caution

    The target directory may display with extra spaces or hyphens on screen. Ensure that you do not include any spaces or hyphens when entering the target directory.
    1. Repeat the procedure outlined in step 3 to create both communication channels.

    2. Save the communication channels.

    3. Activate all of your Configuration objects.

Task 3: Create Integration Flow in NWDS

Steps

  1. Create an Integration Flow for the scenario using the data in the tables.

    FieldValue
    NameAgencyIFlow_##
    IDAgencyIFlow_##
    PatternEnterprise Integration patters -> Point to Point Channel
    Sender System –> Communication ComponentAgency_##
    InterfaceBookingOrderRequest_Out
    OperationBookingOrderRequest_Out
    Namespacehttp://flight.com/agency
    Receiver System –> Communication ComponentAgency_Tracking
    Receiver InterfacesFlightDataService_In and

    PassengerDataService_In

    Operation MappingBookingOrderService and

    Split_FlightData_PassengerData

    Receiver InterfaceCommunication Channel
    BookingOrderService_InFile_R_BookingRequest_##
    FlightDataService_InFile_R_FlightData_##
    PassengerDataService_InFile_R_PassengerData_##
    1. Right-click in the Integration Flow and choose New Integration Flow.

    2. Enter AgencyIFlow_## as the Name and ID .

    3. Choose the Point to Point Channel pattern.

    4. Choose Next.

    5. In the Sender System tab, use the Browse button to select the Agency_## communication component.

    6. Choose OK.

    7. Using the Browse button, choose the interface and the operation BookingOrderRequest_Out.

    8. Choose OK.

    9. In the Receiver Systems tab, choose Add.

    10. Choose the AgencyTracking and OK.

    11. In the Interface column, choose the (ellipsis) button that appears when you select it and choose BookingOrderService_In interface.

    12. Choose Finish.

    13. Your new iFlow opens automatically. If it does not open, refresh the PI Explorer tab and double-click in it.

  2. Assign the Sender Channel.

    1. Select the arrow from the Agency_## to the iFlow until the color changes to orange.

    2. Right-click and choose Assign Reference Channel.

    3. Select the HTTP_S_Agency_## channel and choose OK.

  3. Assign the Receiver Channel.

    1. Select the arrow from the iFlow to the AgencyTracking until the color changes to orange.

    2. Right-click and choose Assign Reference Channel.

    3. Select the File_R_BookingRequest_## channel and choose OK.

  4. Add an Interface Split for the other files and choose Mapping.

    1. In the iFlow, select the line between the two envelopes and choose Add Interface.

    2. Right-click in the Interface Split step and choose Add Interface.

    3. Select the line between the Interface Split and the new interface and choose Add Mapping.

    4. Right-click in the new mapping step and choose Assign Mapping.

    5. Select the Split_FlightData_PassengerData operation mapping and choose OK.

  5. Add the mapping for the BookingOrder file.

    1. Select the line between the interface split and the envelope that points to the BookingOrderService_In interface.

    2. Right-click and choose Add Mapping.

    3. Right-click in the new mapping step and choose Assign Mapping.

    4. Select the BookingOrderService operation mapping and choose OK.

  6. Assign the Receiver Communication Channels for the PassengerData and FlightData interfaces.

    1. Select the arrow from the iFlow to the AgencyTracking-PassengerData interface until the color changes to orange.

    2. Right–click and choose Assign Reference Channel.

    3. Select the File_R_PassengerData_## channel and choose OK.

    4. Select the arrow from theiFlow to the AgencyTracking-FlightData interface until the color changes to orange.

    5. Right–click and choose Assign Reference Channel.

    6. Select the File_R_FlightData_## channel and choose OK.

  7. Save, activate, and deploy your iFlow.

    1. Save your iFlow.

    2. Right click in the iFlow and choose Activate.

    3. Choose Yes.

    4. iFlow should be activated successfully.

    5. Refresh if it is not refreshed automatically.

    6. Right-click in your iFlow and choose Deploy.

    7. Choose Yes.

    8. Your iFlow should be successfully deployed.

Task 4: Send Messages to Test the Message Flow

Send a message to the AEX and monitor the message flow.

Steps

  1. Open the HTTP client for NWK.

    1. In the address bar, enter http://nwktdc00.wdf.sap.corp:50000/dir to access the NWK system.

    2. On the SAP Process Integration screen, in Additional Information, choose HTTP Client NWK.

  2. Adapt the message parameters and send a message.

    1. On the HTTP Client for PI 7.4 AEX page, replace ## with your group number in the Sender Service field.

    2. In the Payload screen area, enter the group name in the Surname field.

    3. To send the message to the AEX, choose the Send button.

      Note

      You will not receive a response because the scenario is asynchronous. Check for any error messages.
  3. Monitor the message flow in the AEX and check the file folder.

    1. Go back to the SAP Process Integration screen and choose Configuration and Monitoring Home.

    2. Log on using your user identifier and password.

    3. On the Monitoring tab page, choose Adapter EngineMessage Monitor.

    4. On the Message Monitoring: PI Messages screen, choose Advanced.

    5. Select the Message Header Area.

    6. In the Sender Component column, enter Agency_##.

    7. Choose Go.

    8. The messages should have status Delivered. Check some of the messages and look specifically at the Log to understand what happened during processing.

    9. Go back to the PI tools page for NWK http://nwktdc00.wdf.sap.corp:50000/dir.

    10. In the Additional Information area, choose How to open share for file adapter files.

    11. Click the Open NWK tmp share as Y drive.

    12. Click Open from the message.

    13. Navigate to the Agency Tracking folder and check each of the folders to find your messages. All the messages should include your group number ## in the name.

Log in to track your progress & complete quizzes