Start of Content Area

Procedure documentation 14: Canceling Flights (Block, Transformation, Send)  Locate the document in its SAP Library structure


If one or more flights could not be booked, the whole flight trip is canceled and any flights that were booked successfully must be canceled, too. For this purpose, a cancellation message must be created and sent for each flight successfully booked. Since the cancellation messages are not dependent on each other, they can be sent simultaneously to the relevant airlines.

For this purpose, insert a block with a ParForEach in the failed-booking branch. The block is executed for the list of successfully booked flights. Define a container element for the current line in the list, in other words, the booking confirmation for an individual flight. You define the container element as a local element for the block. This is necessary so that a separate booking confirmation can be processed for each block instance.

Insert a transformation step in the block. This creates a cancellation message for each successfully booked flight. Define a local container element for this cancellation message. The interface mapping specified in the transformation step sets the flight booking number from the confirmation sent by the airline as the flight booking number in the cancellation message (BookingNumber). The mapping also maps the airline ID from the confirmation message to the airline ID in the cancellation message.

A subsequent send step sends the cancellation messages to the relevant airlines. The receiver of the cancellation message is always the airline that sent the booking confirmation. It is therefore possible to determine the receiver from the header data of the confirmation message.

The definition of the integration process is now complete. To configure it in the Integration Directory, activate the change list that contains the integration process.


Inserting a Block


       1.      In the Otherwise branch, insert a block (This graphic is explained in the accompanying text) after the SendFailureNotification send step:

       Step Name: CancelBookedFlights

       Mode: ParForEach

       Multiline Container Element: ConfirmedList (Interface Variable)

Defining a Container Element

       2.      Define a local container element for the current line in the list of booking confirmations.

In the editing area, select the CancelBookedFlights block and define the container element in the object area.

       Name: ReceivedConfirmation

       Category: Abstract Interface

       Type: FlightBookingOrderConfirmation_Abstract

       Container: CancelBookedFlights

       3.      Define a local container element for the cancellation message:

       Name: AirlineCancel

       Category: Abstract Interface

       Type: FlightBookingOrderCancelatonRequest_Abstract

       Container: CancelBookedFlights

       4.      In the block properties, double-click the Current Line field. In the expression editor, select the ReceivedConfirmation container element you just created.

Defining a Transformation Step

       5.      Insert a transformation step (This graphic is explained in the accompanying text) into the block.

       Step Name: CreateCancelationMessage

       Interface Mapping: CreateBookingOrderCancelation_BPM

       Source Message: ReceivedConfirmation (Interface)

       Target Message: AirlineCancel (Interface)

Inserting a Send Step

       6.      Insert a send step (This graphic is explained in the accompanying text) after the transformation step.

       Step Name: SendCancelation

       Message: AirlineCancel (Interface Variable)

       Receiver From: Response to Message

       Response to Message: ReceivedConfirmation (Interface)

Activating a Change List

       7.      In the navigation area, choose the Change Lists tab page.

       8.      Navigate to your software component version and then to Standard Change List.

       9.      In the context menu, choose Activate.

The change list with the objects is displayed.

   10.      Choose Activate.


You have now finished defining the integration process. You can compare your integration process with the shipped example process and the corresponding scenario. Finally, configure and execute the scenario. More information: Booking a Connecting Flight.

More Information:


Transformation Step

Send Step





End of Content Area