This is a test message to test the length of the message box.
Login
|
Fiori für ABAP Manifest
Erstellt von Software-Heroes

Fiori für ABAP - Manifest

160

Was ist eigentlich das zentrale Steuerelement einer Fiori Elements Applikation? In diesem Artikel schauen wir uns die manifest.json einmal im Detail an und welche Möglichkeiten du dort hast.

Werbung


In diesem Artikel schauen wir uns die zentrale Datei für jede Fiori-Anwendung an. Was sie enthält, was du darin einstellen kannst und wofür du sie sonst noch brauchen könntest.

 

Einleitung

Aktuell haben wir unsere Sales App als Fiori-Anwendung im Business Application Studio generiert. In den nächsten Schritten und Tutorials werden wir hier weitere Anpassungen in der Anwendung vornehmen, bevor wir das eigentliche Deployment auf das System durchführen. Weiterhin sollten wir uns aber auch anschauen, welche wichtigen Dateien und Einstellungen es in einer Anwendung gibt, die du vielleicht für die Zukunft benötigen kannst. Deshalb schauen wir uns heute die manifest.json an. Diese ist eine wichtige und zentrale Datei, wenn es um die Wirkung und Funktion deiner Anwendung geht.

 

manifest.json

Du findest die Datei im webapp-Ordner deiner Anwendung. Dort befindet sie sich auf der obersten Ebene, direkt neben der index.html, die für den Einstieg in unsere Anwendung als eigenstänige Anwendung benötigt wird, aber auch neben dem Controller und weiteren Einstellungen innerhalb der Anwendung.

 

Mit einem einfachen Klick oder einem Doppelklick öffnest du die Datei im Editor. Wie der Name bereits sagt, öffnet sich dann hier eine JSON-Datei, die in verschiedene Segmente unterteilt ist, welche die Einstellungen innerhalb unserer Anwendung definieren. Der Großteil der Felder wurde bereits durch den Fiori-Generator erstellt und konfiguriert. Trotzdem gibt es immer noch Einstellungen, die wir anpassen können, um die Anwendung zu beeinflussen.

 

Einstellungen

In diesem Kapitel schauen wir einmal auf die verschiedenen Einstellungen innerhalb der Datei. Dabei werden wir nicht auf alle Segmente eingehen können, aber zumindest uns die wichtigsten Punkte anschauen.

 

sap.app

Dieser Knoten bietet den Einstieg in unsere Anwendung und definiert wichtige Attribute, die für den Betrieb der Anwendung wichtig sind. Hier findest du zum Beispiel die App-ID, die im System eindeutig sein muss, um die Anwendung zu identifizieren. Zudem sind dort beschreibende Elemente wie der Titel und die Beschreibung der Anwendung definiert.

 

Unter dem Punkt "dataSources" findest du verschiedene Einstellungen für deine Quellen. Hier finden wir zum Beispiel die Annotationen, die für den Service verwendet werden, um das UI zu generieren. Zudem haben wir dort auch die Möglichkeit, zum Beispiel lokale Annotationen zu definieren, welche die Annotationen aus dem Service später überschreiben werden. Diese findest du, wie im Pfad angegeben, unter "webapp/annotations/annotation.xml", welches als lokales Attribut angelegt wurde.

 

Unter "mainService" findest du den eigentlichen Service für unsere Anwendung, der die Daten später bereitstellen soll. Hier hinterlegt ist die Konfiguration für den Service mit seiner URL, dem Typ, in diesem Fall OData, und weiteren Einstellungen, zum Beispiel zu den Annotationen, die dort zu finden sind, sowie der Version, die entsprechend verwendet wurde. Ebenfalls gibt es eine lokale Datei für den Service, welche die Metadaten puffert. Solltest du später einmal Probleme mit dem Service oder fehlenden Einstellungen haben, kannst du diesen aktualisieren und die Metadaten-Datei neu laden.

 

sap.ui5

Im Bereich "sap.ui5" ist definiert, welche Mindestversion von UI5 wir verwenden und welche Bibliotheken, kurz Libs, geladen werden, um die Anwendung zu starten und zu verwenden. Hier findest du weitere Attribute zum Verhalten der Anwendung, wie zum Beispiel das Attribut flexEnabled, welches definiert, ob die Key User Adaption dieser Anwendung aktiviert ist oder nicht. Ebenfalls findest du ein Attribut für die Content Density, um zu definieren, wie viel Platz im UI ist und für welche Geräteklasse die Anwendung eigentlich optimiert ist.

 

Unter dem Punkt "models" findest du alle lokal verfügbaren Modelle, die wir verwenden, um zum Beispiel auf Daten zuzugreifen. Im Standard sind das die i18n-Modelle, um Texte aus der Textdatei lesen zu können, und der eigentliche Hauptservice, der in diesem Verlauf vom Server geladen wird und die Daten bereitstellt, die wir genau in unserer Anwendung sehen und dann an entsprechende Felder binden können.

 

Als Nächstes schauen wir uns den Punkt "routing" an, der verschiedene Einstellungen enthält, wie die Config, verschiedene Routes und Targets. Dabei findest du unter config zum Beispiel unser definiertes Flexible Column Layout, das wir in einem anderen Artikel einmal beschrieben haben. Diese Eigenschaften wurden automatisch über den Wizard in die manifest.json eingefügt.

Im Bereich der "routes" finden wir mögliche Routen, die die Anwendung nehmen kann. Zum Beispiel sehen wir im ersten Abschnitt den List Report, der als Target wiederum die Liste hat. Die Object Page kann zum Beispiel als Ziel ebenfalls die Liste oder die Object Page an sich selbst haben. Dazu sind verschiedene Pattern definiert, die für die Navigation notwendig sind.

 

Im Bereich der "targets" findest du die einzelnen definierten Elemente unserer Anwendung. Hier findest du zum Beispiel die List Report Page. Dabei ist definiert, welchen Typ sie hat, welche ID sie besitzt und welchen eindeutigen Namen sie innerhalb der Anwendung trägt. Dazu sind verschiedene Optionen definiert, welche die eigentliche Liste beeinflussen, wie zum Beispiel im unteren Teil der Initial Load bzw. Auto Load, den wir bereits über den Wizard aktiviert haben. Zudem ist festgelegt, um welche Art von Tabelle es sich handelt, eine Responsive Table in diesem Fall, die wiederum die LineItem-Annotation der UI-Sektion verwendet, um die Tabelle anzuzeigen.

Im oberen Teil der Einstellungen findest du zudem den Pfad, über den die Seite erreicht wird, sowie die Navigation, um auf die Object Page zu springen. So sind unter den verschiedenen Targets dann auch die unterschiedlichen Seiten, Absprünge und Navigationen definiert.

 

Weiteres

Innerhalb der Datei wirst du noch weitere Einstellungen und Möglichkeiten finden, die wir in diesem Tutorial erst einmal nicht beschrieben haben. Zum Beispiel findest du noch den Unterpunkt "sap.ui", wo die eigentliche UI-Technologie, verschiedene Icons und die unterstützten Devices definiert werden. Im unteren Bereich findest du zudem Sektionen wie "sap.fiori", wo die Art der eigentlichen Anwendung definiert ist, oder "sap.fe" für weitere Fiori Elements-Einstellungen. Deshalb wollten wir in diesem Tutorial erst einmal auf die Hauptpunkte der manifest.json eingehen.

 

Vollständiges Beispiel

Das heute gezeigte Beispiel findest du in dem GitHub Repository, dort ist die gesamte Anwendung, sowie alle Anpassungen zu sehen. Die manifest.json findest du im webapp-Ordner des Projekts, um dir den gesamten Aufbau anzuschauen.

 

Fazit

Die manifest.json ist ein wichtiger Bestandteil unserer Anwendung. Sie kontrolliert und steuert die eigentliche Anwendung und definiert zudem deren Aufbau, sodass das Fiori Elements Framework weiß, was zu generieren ist. Anpassungen an der Datei können manuell durchgeführt werden, aber auch über die verschiedenen Wizards, welche die Fiori Tools zur Verfügung stellen. Damit sollte ein erster Überblick über die zentrale Datei geschaffen sein.


Enthaltene Themen:
FioriABAPManifestREX7
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden Dienstag und Freitag neuen Content im Bereich ABAP und unregelmäßig in allen anderen Bereichen. Schaue bei unseren Tools und Apps vorbei, diese stellen wir kostenlos zur Verfügung.


Fiori für ABAP - Übersetzung (i18n)

Kategorie - ABAP

Wie sieht es eigentlich mit Mehrsprachigkeit bei unserer Fiori App aus? Bisher hatten wir uns nicht um Texte und Übersetzungen gekümmert, daher schauen wir uns diesen Punkt im Detail an.

12.06.2026

Fiori für ABAP - Excel Upload

Kategorie - ABAP

Du möchtest über Excel Daten in deine Fiori Anwendung importieren und nicht unbedingt die komplette Logik im Backend entwickeln? Schauen wir uns den Spreadsheet Importer und die Funktion an.

09.06.2026

Fiori für ABAP - Änderungsbelege

Kategorie - ABAP

Wie können wir eigentlich die Änderungsbelege in unsere Anwendung einblenden, die aktuell nur auf der Datenbank vorhanden sind? Dazu schauen wir uns eine weitere Re-Use Komponente an.

05.06.2026

Fiori für ABAP - Application Log

Kategorie - ABAP

Wie bekommen wir eigentlich die Daten unseres Application Logs in unsere Fiori Anwendung? Dazu erweitern die Anwendung durch eine Re-Use Komponente und schauen uns die Konfiguration an.

02.06.2026

Fiori für ABAP - Deployment

Kategorie - ABAP

Wie sieht es eigentlich mit dem Deployment von unserer Fiori Anwendung aus? Schauen wir uns verschiedene Einstellungen einmal im Detail an und stellen die App zur Verfügung.

22.05.2026