Effiziente Fiori®-Apps durch UI5 Smart Controls!

Mit Fiori und dem SAPUI5 Framework hat SAP® vor einigen Jahren einen neuen Weg eingeschlagen, bei dem die Anwendungen der neuen Generation eine vereinfachte und personalisierte User Experience schaffen sollen. Nicht sonderlich überraschend ist die Tatsache, dass ein solch neuer Entwicklungsansatz für Business Apps in dem kurzen Zeitraum seit seiner Entstehung immer weiter angepasst und optimiert worden ist. 

Ich möchte Ihnen an dieser Stelle eine dieser Anpassungen – nämlich die UI5 Smart Controls – näher beschreiben und auf diesem Weg einen effizienten Ansatz zur Entwicklung von SAP Fiori-Apps eröffnen. 

Was sind UI5 Smart Controls und was macht sie so smart?

Smart Controls sind UI-Komponenten, die ab der SAPUI5-Version 1.22 sukzessiv in die JavaScript Bibliothek aufgenommen wurden. Dazu zählen z.B. Listen, Tabellen, Filter, Formulare und Diagramme, die ein breites Spektrum an Anwendungsfällen abdecken können. 

Generell handelt es sich bei diesen Komponenten um Standardkomponenten, die um smarte Funktionen erweitert wurden. Smart bedeutet in diesem Sinne, dass die Komponenten über den Bezug von Informationen aus standardisierten Annotationen und dem Metadatenmodell ihre Ausprägung und Funktionen automatisch erkennen und anpassen können. 

Ohne eine Zeile JavaScript-Code geschrieben zu haben, kann beispielsweise die Ausprägung eines Formularfelds durch die Metadaten so gesteuert werden, dass ein Wert als Datum dargestellt und dabei sogar die länderspezifische Darstellungsweise Berücksichtigung findet. 

Welchen Nutzen bringen Smart Controls?

An dieser Stelle möchte ich einige Funktionen von Smart Controls an dem folgenden Beispiel einer Smart Table und einer Smart Filter Bar darstellen. Hierbei ist zu beachten, dass kein JavaScript-Code zur Realisierung des Beispiels notwendig ist. 

Allein durch das Metadaten-Modell des OData-Service erkennt die Smart Filter Bar diejenigen Eigenschaften, nach denen die Daten in der verknüpften Smart Table gefiltert werden können. Abhängig vom Datentyp der Eigenschaft werden Wertehilfe-Dialoge mit den entsprechenden Filteroperatoren bereitgestellt. 

Mithilfe von Annotationen kann in einer Smart Table gesteuert werden, welche Daten initial angezeigt werden sollen. Dabei ist trotz der standardisierten Vorlage eine Anpassung an spezifische Anforderung („custom data“) möglich. Die Smart Table bezieht ihre Daten aber auch aus dem OData-Metadatenmodell und stellt so – in Anlehnung an die Fiori Design-Richtlinien – Beträge zusammen mit der ihnen zugeordneten Währung rechtsbündig dar. 

Auch Zusatzfunktionalitäten, wie das Varianten-Management, Excel-Export oder Personalisierungsdialoge zum Selektieren, Sortieren oder Gruppieren der Tabellendaten sind bereits für die Smart Table vollständig implementiert und flexibel kombinierbar. 

Welche Vorteile bringen Smart Controls?

Den Entwicklungsaufwand deutlich reduzieren – das hört sich gut an. Bei der Anwendungsentwicklung mit Smart Controls kann in einigen Anwendungsbereichen bis zu 90% client-seitiger Code reduziert werden. Demzufolge wird die App-Entwicklung beschleunigt und die Projektkosten gesenkt. 

Ein weiterer Effekt dieses Ansatzes ist eine erhöhte Codequalität, aus der meist eine bessere Wartbarkeit der Anwendung resultiert. Beispielsweise wird dies dann bemerkbar, wenn allein die Formatierung von Anzeige- und Eingabefeldern nicht in jeder einzelnen App implementiert sowie angepasst werden muss und somit auch redundanter Code reduziert wird.

Weitere Vorteile bei der Nutzung von Smart Controls liegen darin, dass die Fiori Design-Richtlinien mit den standardisierten Vorlagen eingehalten werden und eine App entsteht, die durch Updates und Verbesserung der SAPUI5-Bibliothek auf dem aktuellsten Stand gehalten wird. 

Haben Smart Controls auch Nachteile?

Ja. Smart Controls haben auch Nachteile.  

Auch wenn Smart Controls schon länger in der SAPUI5 Bibliothek etabliert sind, finden Entwickler und Anwender auch Fehler bei diesen UI-Komponenten. Beispielsweise, wenn ein Betrag in einer ausländischen Währung fälschlicherweise keine Nachkommastellen besitzt. 

Solche Fehler sind jedoch sehr selten und sollten kein Grund sein sich gegen Smart Controls zu entscheiden, da diese schnell mit Updates behoben werden. 

Haben Sie Fragen oder Anmerkungen? Kontaktieren Sie uns einfach unverbindlich.