Übersicht
S10 Anwendungen können in das SAP Fiori Launchpad integriert werden. Dies bedeutet zum einen, dass dynamische Informationen auf Kacheln angezeigt werden können, die über ABAP Methoden gelesen werden. Zum anderen können die Anwendungen auch über eine Kachel gestartet und eingebettet im Launchpad ausgeführt werden.

Dadurch ist eine nahtlose Integration mit anderen Anwendungen wie Fiori Apps und auch Standard SAP-Transaktionen gewährleistet.

Beispiel:
Kacheln mit dynamischen Informationen zum jeweils ausgewählten Kunden


Die S10 Anwendung mit Details zum gewählten Kunden:


Details zur Funktionalität
  • Alle Daten einer Kachel können in einer ABAP Methode gesetzt werden:
    Titel und Texte, Ikone, KPI, Farben und Indikatoren
  • Die eingebetteten S10 Anwendungen können eigenständig oder Views einer gemeinsamen Anwendung sein.
    Im Link kann definiert werden, welcher View und ggf. auch welcher Reiter beim Start angezeigt werden soll.
  • Aus S10 Anwendungen können Fiori Apps oder Standardtransaktionen aufgerufen werden
  • Beim Start einer S10 Anwendungen wird automatisch eine Anmeldung durchgeführt
Implementierung
Zunächst wird die Erstellung dynamischer Kacheln beschreiben, anschließend die Einbettung bestehender S10 Anwendungen in das Fiori Launchpad.

Zur Erstellung von neuen Kacheln wird der SAP Fiori Launchpad Designer verwendet. Dieser kann z.B. über die Transaktion /UI2/FLPD_CUST aufgerufen werden, wobei die Anwendung dann im Browser gestartet wird. Kacheln sind jeweils einem bestimmten Katalog zugeordnet:



Im Gegensatz zu Fiori Kacheln mit ihren jeweiligen Odata-services wird beim S10 Framework nur ein einziger generischer Service verwendet und über Parameter gesteuert. Der Service liefert dann die Daten für die jeweilige Kacheln im JSON Format zurück, so dass das Launchpad die Informationen auf den Kacheln darstellen kann:


Syntax der Service URL:
/sap/opu/odata/s10/dynamictile_srv/tile('KLASSE.METHODE.PROGRAMM')

Beispiel:
Die Informationen für die Kachel "Aktueller Kunde" werden über folgende Service URL in der Klasse "customer", im Programm "/S10/CIS" und der Methode "tile_customerdetails" gelesen:

/sap/opu/odata/s10/dynamictile_srv/tile('customer.tile_customerdetails.%2Fs10%2Fcis')

Hinweis: Durch die Übergabe der Parameter in der URL müssen bestimmte Zeichen kodiert werden, daher werden die Schrägstriche im Namen des Programms "/S10/CIS" als %2F codiert.

Die Aufgerufene Method hat als changing-Parameter eine Referenz auf eine Struktur vom Typ /s10/fiori_tile. Diese wird dann später ausgewertet und im JSON Format zurück an das Fiori Launchpad gesendet:

ABAP Methode
tile_customerdetails
        importing
          options  type string
        changing
          tileinfo type /s10/fiori_tile.


method tile_customerdetails.

* Read data
* ... 


* Fill tileinfo structure for fiori tile

    tileinfo-title = kunnr_out.
    tileinfo-subtitle = kna1-name1.
    tileinfo-info = kna1-land1 && | | && kna1-pstlz && | | && kna1-ort01.
    tileinfo-number = ''.
    tileinfo-icon = 'sap-icon://customer'.

  endmethod.

Einbetten bestehender S10 Anwendungen
Fiori-Kacheln können als gewöhnliche Links definiert werden, um eine beliebige URLs aufzurufen. Damit die S10 Anwendungen jedoch eingebettet in das Launchpad starten und nicht in einem neuen Fenster oder Reiter, müssen die Links als sog. semantische Objekte im SAP System definiert werden. Anschließend können diese als Ziel in eine Kacheldefinition eingetragen werden.

Anwendungsdefinition
Zunächst muss eine Ziel-URL in der Transaktion LPD_CUST (Launchpad-Definition) angelegt werden. Hierbei sind folgende Parameter wichtig:

Anwendungstyp URL
URL Pfad zur S10 Anwendung, optional mit Parametern
(Die Parameter können mit s10session->clientquerystring ausgewertet werden)
Anwendungsalias Name des semantischen Objekts, das in der Fiori Kachel angegeben wird
Zusatzinformationen managed=FioriWave1
Dies sorgt dafür, dass die Anwendung eingebettet im Fiori Launchpad gestartet wird

Ohne den Zusatzparameter wird die Anwendung standardmäßig in einem neuen Browsertab geöffnet.
Navigationsmodus Inplace

Transaktion "LPD_CUST"


Definition des semantischen Objekts
Im SAP Fiori Launchpad Designer kann über "Zielzuordnungen" ein semantisches Objekt angelegt werden, das als Aktion das Öffnen einer S10 Anwendung definiert. Dazu müssen folgende Parameter gesetzt werden:
Semantisches Objekt Beliebiger Name, der später in der Kacheldefinition eingetragen wird
Aktion Name einer Aktion, im Prinzip beliebig wählbar
Anwendungstyp SAP-Fiori-App verwendet LPD_CUST
Dadurch wird auf das Element in der Launchpad-Definition verwiesen (Transaktion LPD_CUST)
Launchpad-Rolle Name der Rolle in der Launchpad-Definition
Launchpad-Instanz TRANSACTIONAL
Anwendungsalias In der Launchpad-Definition gesetzter Name

Beispiel:


Definition der Ziel-URL
Das semantische Objekt kann nun einer Kachel im SAP Fiori Launchpad Designer zugewiesen werden:


Der Benutzer kann nun auf die Kachel klicken und damit die entsprechende S10 Anwendung direkt im Fiori Launchpad öffnen.

Komponente S10 Framework