Show TOC

Navigation Using Callable EntitiesLocate this document in the navigation structure

Note

Navigation using callable entities is deprecated. Instead you should use intent-based navigation. For more information, see Configuring Navigation.

Concept

Callable entities allow applications built with any technology that consume OData services to navigate to applications related to that data, for example, what other applications can a user start in relation to a particular product. Callable entities work independently of the used UI technology (for example, SAPUI5 or Web Dynpro ABAP) of the target application or a shell (SAP NetWeaver Business Client, Portal, or other).

It is not necessary to use special SAP APIs or to expose the UI framework and the applications-specific syntax of the target applications.

Note OData enables applications on any platform to easily consume data provided by any SAP platform.

An OData service developer needs to provide only the details about the target application on the server side that will become a URL link on the client side and can be used by the application developer (user interface developer). The technical processing of the request is hidden from the service user by ABAP and JavaScript libraries.

  • An ABAP API is used to enable OData service developers to easily expose navigation targets (for example, to Web Dynpro applications) as media link entries in their services. Media link entries that call applications are named callable entities.

  • Out of the box support for navigation targets defined in the report launchpad

  • Alternatively, there is a BAdI that enables integrating any other navigation target repository which you can register in transaction /UI2/NAV.

The building blocks to enable callable entities are as follows:

  • Media link entries

    Medial link entries link to information outside the OData world. This information can be passive (for example, a PDF documentation), or active (for example, a Web Dynpro application). Media links are based on the standards defined by OData Atom and OData JSON. Callable entities constitute a subcategory of media link entries which link to active information. They are used to return an HTML page which can be processed by any browser on any platform. That page will then use the appropriate navigation mechanism based on the environment (depending on wether used with or without SAP NetWeaver Business Client).

  • Specific helper classes to create callable entities
  • A plugin concept that ties the helper classes to the individual repositories
Modeling

  • Windows application (WPF/C++)
  • Browser application (HTML/JavaScript)
  • iOS (iPad) application (Objective-C)
  • Other applications (other language)

The application that consumes the OData services can be based on any type of technology, for example:

  • Callable entities are media link entries. They are defined as follows as regular entities. The OData properties have the meta data for these resources, for example, the title of a picture, an audio or PDF file or a navigation target.

  • Callable Entities belong to an Entity:
    • Header-Item (one to many) relationship: Navigation property from the entity to the related CEs.
    • A CE has exactly one parent entity: Navigation property from CE to related parent entity omitted.
Architecture
  1. A user starts an application.
  2. The application requests data from an SAP platform.
  3. The OData service serves the data.
  4. The application requests callable entity data (title of links, media type, and media URLs).
  5. The OData service uses its platforms navigation façade to create the callable entity data.
  6. The application visualizes the callable entities, for example, as hyperlinks.
  7. The user clicks on a link.
    Note When the user clicks the link to edit the data, he must know the OData service that is connected to the object.
  8. The application passes the media URL of the callable entity to an HTML container.
  9. The container executes the URL, that is, it requests the bootstrap.
  10. The OData service passes the business context to its platform's navigation façade and puts the resulting HTML into the response.
  11. The HTML interprets the received HTML page and executes the JavaScript of the bootstrap.
  12. The bootstrap initiates the optimal navigation to real target application.