Start of Content Area

Background documentation Technologies and Concepts  Locate the document in its SAP Library structure

The flight data application was created to demonstrate as many technologies and concepts in the integration technology environment as possible by using real examples.

This section gives an introduction to the flight data application from a technical point of view. If you are looking for an example of a particular concept or detail, this section contains a reference to the corresponding example. However, this section does not explain each concept (see the relevant guides for each concept); it contains only notes about the objects of the flight data application that are suitable for demonstrating the concepts.

The following topics can currently be demonstrated with the flight data application:

General BAPI concept

Technology/Concept

Example

Business objects in the BOR

Business objects SFLIGHT (Flight) and SBOOK (FlightBooking)

Generic object services in the BOR

Business object SFLIGHT (Flight), attribute FlightID

BAPI Design

Technology/Concept

Example

Instance and class methods

FlightBooking.GetList for a class method

FlightBooking.Cancel for an instance method

FlightBooking.CreateFromData for a create method

Standardized BAPI methods

Flight.GetList, Flight.GetDetail, FlightBooking.CreateFromData, FlightBooking.Cancel, FlightCustomer.Change, Flight.SaveReplica

Standardized parameters

Parameter CustomerDataX for FlightCustomer.Change for a change parameter

Parameter ExtensionIn and ExtensionOut for Flight.GetDetail for extension parameter

Return parameter for each of the flight BAPIs (Flight.GetDetail, for example)

DateRange parameter for Flight.GetList for a selection parameter

TestRun parameter for FlightBooking.Confirm for a TestRun parameter

Implementation of BAPI Data Structures

Technology/Concept

Example

Using data structures that begin with BAPI*

See all parameters of all BAPI methods

Note especially English field names, no includes or appends, use of existing data elements, maintaining search helps/check tables, use of internal data formats

Dealing with currency fields

Flight.GetDetail method, FlightData parameter (BAPISFLDAT Dictionary structure), PRICE field

Dealing with ISO codes

For currency codes see the Flight.GetDetail method (for example), FlightData parameter (BAPISFLDAT Dictionary structure), CURR and CURR_ISO fields

For unit of measure codes, see the Flight.GetDetail method (for example), AdditionalData parameter (BAPISFLADD Dictionary structure), UNIT and UNIT_ISO fields

For country codes, see the FlightCustomer.CreateFromData method (for example), CustomerData parameter (BAPISCUNEW Dictionary structure), COUNTR and COUNTR_ISO fields

For language codes, see the FlightCustomer.CreateFromData method (for example), CustomerData parameter (BAPISCUNEW Dictionary structure), LANGU and LANGU_ISO fields

Dealing with date fields

Flight.GetDetail method, FlightDate parameter (BAPISFLKEY Dictionary structure, FLIGHTDATE field)

Defining the Interface of the Function Module

Technology/Concept

Example

Dealing with ID fields of business objects

See the BAPI Design section: examples for instance, class, and create methods

Return parameter uses BAPIRET2 structure

See all BAPI methods

Implementing the Function Module

Technology/Concept

Example

Database changes due to an update

Flight.SaveReplica method (BAPI_FLIGHT_SAVEREPLICA function module); this module uses the SAPBC_FLIGHT_REPLICA_UPDATE update module

No write BAPIs have a commit command

Authorization checks

Flight.GetDetail method; S_FLBOOK authorization object is queried here

Returning error messages

See all BAPI methods In the source code, the BALW_BAPIRETURN_GET2 module is used to fill the return parameter

Using mapping modules for converting between internal and external data formats

A conversion from external to internal is in the FlightCustomer.CreateFromData method, for example.
The MAP2I_BAPISCUNEW_TO_SCUSTOM mapping module is used.

A conversion from internal to external is in the Flight.GetDetail method, for example.
The MAP2E_SFLIGHTS2_TO_BAPISFLADD mapping module is used.

Special BAPI Topics

Technology/Concept

Example

Mass data-enabled BAPIs

FlightCustomer.CreateFromData method (BAPI_FLBOOKING_CREATEFROMDATA function module)

BAPIs in the DX Workbench

FlightCustomer project in the DX Workbench

FlightCustomer.CreateFromData method (BAPI_FLBOOKING_CREATEFROMDATA function module) for implementing a suitable BAPIs

Use of BAPIs in ABAP programs

Technology/Concept

Example

Use of BAPIs in ABAP programs

SAPBC_REPLICATE_FLIGHTS report or BAPI_FLTRIP_CREATE function module

BAPIs in Application Link Enabling (ALE)

Technology/Concept

Example

Generation of ALE interfaces (IDocs) from BAPIs

The generated ALE interfaces for the FlightBooking.CreateFromData, FlightBooking.Confirm, or FlightBooking.Cancel methods

Synchronous call of a BAPI (including query of ALE distribution model)

FlightConnection.GetDetail method calls the Flight.CheckAvailability method

Asynchronous call of a BAPI (including query of ALE distribution model)

FlightTrip.Create method calls the FlightBooking.Confirm method

Using filters for determining recipients

FlightConnection.GetDetail method; when Flight.CheckAvailability is called, the AIRLINEID filter object type is queried

BAPIs in the Interface Repository

Technology/Concept

Example

BAPIs in the Interface Repository

See http://ifr.sap.com under SAP BASIS à Release 6.10 à Basis Components à ABAP Workbench

 

 

End of Content Area