AllgemeinNative Fiori AppsSAP FioriSAP Mobile CardsSAPUI5

SAP Fiori® Apps – technische Umsetzungsmöglichkeiten

By Mittwoch, der 15. Mai 2019 No Comments

SAP Fiori App - vier Umsetzungsmöglichkeiten

SAP Fiori steht in erster Linie für Business-Applikationen, welche den von der SAP definierten Design-Guidelines [1] folgen und sich auf allen Geräten aufrufen lassen, die einen modernen Webbrowser unterstützen. Die bei der Entwicklung von SAP Fiori verwendete Technik nennt sich SAPUI5 und ist ein auf Web-Standards basierendes JavaScript Framework.

In einigen Anwendungsfällen reicht es jedoch nicht aus, eine Applikation als reine Webanwendungen auszuliefern. Grund dafür ist, dass Webanwendungen im Regelfall keinen Zugriff auf Hardwarefeatures des ausführenden Geräts erhalten. So ist es innerhalb einer im Browser laufenden Anwendung beispielsweise nicht möglich, auf den internen Speicher des Geräts zuzugreifen oder Push Mitteilungen zu erhalten. Sollten Sie diese Features für die Umsetzung des Projekts jedoch zwingend benötigen, bieten Ihnen die folgenden Alternativen Lösungen, mit denen Sie das bewährte Fiori-Konzept beibehalten, aber dennoch nicht auf die benötigten Ressourcen verzichten müssen.

Hybride Fiori Apps

Eine hybride SAP-Fiori-App bietet alle Funktionalitäten einer reinen SAPUI5-Webanwendung und zusätzlich den direkten Zugriff auf Hardware-Ressourcen wie z. B. Barcode-Scanner, Standortbestimmung per GPS und Push-Nachrichten des mobilen Endgeräts (Smartphone, Tablet).

Aus einer bestehenden SAPUI5-Anwendung können Sie leicht eine hybride Version generieren. Dafür setzen Sie das Framework „Apache Cordova“ [2] (ehemals Phonegap) ein. Mit der Entwicklung von „Kapsel“[3] hat SAP eine Sammlung von Plugins für Cordova geschaffen, mit der die SAPUI5-Controls übersetzt werden können, damit die App weiterhin direkt auf Android und iOS lauffähig ist.

Die Entwicklung einer hybriden Fiori App ist häufig die richtige Wahl, wenn es um den Zugriff auf Hardware-Ressourcen geht.

Native Fiori Apps

Für die Entwicklung von nativen SAP Fiori Apps werden Programmiersprachen wie Swift für Apple iOS sowie Java oder Kotlin für Android-Systeme genutzt. Diese bieten Ihnen die Möglichkeit, auf alle Features des Geräts zuzugreifen und sind deutlich

performanter als ihre Konkurrenz. SAP stellt dafür ein Software Development Kit (SDK) zur Verfügung, welches auf den von Fiori definierten Guidelines aufbaut. Das SDK ist eine Sammlung von Frameworks und wurde 2017 für iOS [4] und Mitte 2018 für Android [5] veröffentlicht. Für beide SDKs existieren mittlerweile offizielle SAP Fiori Design Guidelines.

Das SAP Cloud Plattform SDK kann die App mithilfe eines Assistenten direkt in den Mobile Services der Cloud Plattform veröffentlichen und verwalten. Weiterhin ist es Ihnen damit möglich, einen bereits vorhandenen OData-Service hinzuzufügen. Dadurch werden sogenannte Proxy-Klassen generiert, über die der Datenaustausch mit dem Backend-System vereinfacht wird. Außerdem wird eine Login-Maske für die Authentifizierung erstellt.

Gegenüber einer reinen SAPUI5-Web-App bietet die native Fiori App u. a. folgende Zusatzfunktionalitäten:

  • Offline-Funktionalität (àOffline OData)
  • Push-Nachrichten
  • Logging & Tracking
  • Security Features (Touch ID / Fingerprint)
  • Translation Hub Integration

SAP Fiori Client

Der SAP Fiori Client ist eine Laufzeitumgebung für Fiori-Apps. Diese wird als native App von SAP über den Apple App Store (für iOS) bzw. über Google Play (für Android) bereitgestellt. Der SAP Fiori Client kann bestehende Fiori Apps oder ein SAP Fiori Launchpad über deren URL einbinden.

Ähnlich wie bei hybriden Fiori Apps bietet der SAP Fiori Client Ihnen als Entwickler direkten Zugriff auf Hardwareressourcen des genutzten Endgerätes mittels Cordova. Die dazu notwendige Infrastruktur des Apache Cordova Frameworks bringt der Fiori Client bereits mit.

Die Entwicklung einer unter SAP Fiori Client lauffähigen App gleicht der Entwicklung einer Standard-Fiori Web App. Zusätzlich müssen Sie lediglich den benötigten Code für die Verwendung der Zusatzfeatures implementieren.

Zudem bietet der Fiori Client u.a. eine verbesserte Performance aufgrund von optimiertem Cache Management, so wie einfaches Auslesen der Standortdaten und das Verwenden des Barcodescanners.

SAP Mobile Cards

Die Verwendung von SAP Mobile Cards ist eine ausgezeichnete Möglichkeit einfache Use Cases abzubilden und setzt bei der Entwicklung auf die Webstandards HTML, CSS und JavaScript. Genau wie Fiori Apps nutzen Mobile Cards einen OData-Service als Datenquelle. So lassen sich wichtige Informationen komprimiert anzeigen. Mobile Cards zielen auf einfache Use Cases ab und bieten die Möglichkeit auf Karten mit Standardoperationen wie „Akzeptieren“ und „Verwerfen“ zu reagieren. Weiterhin dienen sie primär dazu, einen schnellen Überblick auf wesentliche Unternehmenskennzahlen und -Grafiken zu erhalten. Mit Hilfe eines Abonnementsystems können Sie über die Auswahl der angezeigten Karten entscheiden und erhalten gleichzeitig vom Administrator als Standard definierte Karten automatisch auf Ihr Gerät [6].

Welche Lösung für welche Anwendung?

Nachdem wir Ihnen nun einige Alternativen zur klassischen Fiori-Webanwendung beschrieben haben, stellt sich natürlich die Frage, wann Sie welche einsetzen?

Die Wahl der richtigen Implementierung hängt im Allgemeinen von den im Use Case enthaltenen Anforderungen ab. Können Sie das Konzept ohne den Zugriff auf die Hardware des aufrufenden Gerätes umsetzen, ist eine Fiori-Webanwendung die richtige Wahl. Reichen die Features einer Webanwendung nicht aus, prüfen Sie, ob Sie mit dem SAP Fiori Client Abhilfe schaffen können. Benötigen Sie weitere Gerätefeatures, die die SAP Fiori Client App nicht unterstützt, können Sie das Konzept mit Hilfe des iOS- oder Android-SDK in Form einer nativen App umsetzen. SAP Mobile Cards wurden für die Nutzung auf Smartphones optimiert. Daher sollten Sie diese nur in für SAP Mobile Cards entwickelten Use Cases verwenden.