{"id":61259,"date":"2015-12-03T14:05:34","date_gmt":"2015-12-03T13:05:34","guid":{"rendered":"http:\/\/e3mag.com\/?p=61259"},"modified":"2019-07-18T09:16:23","modified_gmt":"2019-07-18T07:16:23","slug":"alternativen-zu-fiori","status":"publish","type":"post","link":"https:\/\/e3mag.com\/de\/alternativen-zu-fiori\/","title":{"rendered":"Alternativen zu Fiori"},"content":{"rendered":"<p>Es wird gleich etwas technisch, denn wir wollen die Fiori-Technologie kritisch unter die Lupe nehmen und mit der Architektur unseres eigenen Produkts \u201eCIS mobile\u201c vergleichen.<\/p>\n<p>Da ist es zum Verst\u00e4ndnis hilfreich, wenn Sie einige Fiori-Anwendungen und auch unser CIS mobile davor kurz ausprobieren. Hier sind die Links dazu:<\/p><div class=\"great-fullsize-content-de great-entity-placement\" style=\"float: left;\" id=\"great-3406484683\"><div id=\"great-864475585\" style=\"margin-bottom: 20px;\"><a data-no-instant=\"1\" href=\"https:\/\/www.youtube.com\/watch?v=6Ja0zaCg0ss\" rel=\"noopener\" class=\"a2t-link\" target=\"_blank\" aria-label=\"banner_bdc_2026_1200x150\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150.jpg\" alt=\"\"  srcset=\"https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150.jpg 1200w, https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150-400x50.jpg 400w, https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150-768x96.jpg 768w, https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150-100x13.jpg 100w, https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150-480x60.jpg 480w, https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150-640x80.jpg 640w, https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150-720x90.jpg 720w, https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150-960x120.jpg 960w, https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150-1168x146.jpg 1168w, https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150-18x2.jpg 18w, https:\/\/e3mag.com\/wp-content\/uploads\/2026\/03\/banner_bdc_2026_1200x150-600x75.jpg 600w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" width=\"1200\" height=\"150\"  style=\" max-width: 100%; height: auto;\" \/><\/a><\/div><\/div>\n<ul>\n<li><a href=\"https:\/\/sapfioritrial.com\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/sapfioritrial.com<\/a> f\u00fcr Fiori-Apps<\/li>\n<li><a href=\"https:\/\/s10mobile.com\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/s10mobile.com<\/a> f\u00fcr CIS mobile<\/li>\n<\/ul>\n<p>Jede Fiori-App stellt eine isolierte, kleine Standard-Anwendungsfunktion dar, die als Web-Applikation mit HTML5 als Front\u00adend implementiert ist. Sie kann auf jedem webf\u00e4higen Ger\u00e4t (Desktop, Tablet, Smartphone) ausgef\u00fchrt werden.<\/p>\n<p>Im Benutzerinterface gleichen sich alle Fiori-Apps, denn sie folgen engen Standards, insbesondere dem \u201eFiori-1-1-3-UI\u201c: eine Benutzerrolle, ein Szenario, drei Klicks. Jede Fiori-App f\u00e4llt in eine der Kategorien \u201eTransactional app\u201c, \u201eFact sheet\u201c oder \u201eAnalytical app\u201c, wobei nur \u201eTransactional\u201c ohne Hana-Datenbank auskommt.<\/p>\n<p>Technologisch nutzen die Fiori-\u00adApps mehrere komplexe Frameworks: Die Anwendung l\u00e4uft als JavaScript-Code im Browser. Sie generiert die HTML5-Oberfl\u00e4che dynamisch mit SAP UI5, ben\u00f6tigt das JQuery-Framework und kommuniziert \u00fcber OData-Protokoll, SAP Web Dispatcher und SAP Gateway mit dem FES (Fiori Frontend Server).<\/p>\n<p>Der FES kontaktiert schlie\u00dflich die SAP Business Suite, die Datenzugriffe und Updatefunktionen als zustandslose Services in Abap bereitstellt. F\u00fcr unser Produkt CIS mobile, eine umfassende mobile Web-Anwendung f\u00fcr Vertriebsmitarbeiter auf Basis von SAP SD, ist Fiori sowohl was das 1-1-3-UI betrifft als auch bez\u00fcglich der technologischen Infrastruktur nicht ausreichend.<\/p>\n<p>Das liegt prim\u00e4r an den berechtigten Anspr\u00fcchen der Benutzer: Ein Vertriebsmitarbeiter w\u00fcnscht sich eine integrierte Sicht auf alle Aspekte der von ihm betreuten Kunden, beispielsweise Angebote, Auftr\u00e4ge, Lieferungen, Terminplanung, Besuchsberichte, Kontrakte, Bonusvereinbarungen, Dokumente zum Kunden.<\/p>\n<p>Er erwartet Diagramme und Kennzahlen und m\u00f6chte Kundeninformationen mobil in das zentrale SAP-System zur\u00fcckmelden. Damit sind alle drei Anwendungstypen, \u201etransactional\u201c, \u201efact sheet\u201c und \u201eanalytical app\u201c, erforderlich und ein nahtloser \u00dcbergang aller Komponenten.<\/p>\n<p>Vertriebsbem\u00fchungen k\u00f6nnen umso erfolgreicher sein, je besser man die Kundensituation kennt. Dazu geh\u00f6ren dann nicht nur Angebote und Auftr\u00e4ge, sondern z. B. auch Kundenreklamationen und offene Rechnungen. Mit dieser Informationsf\u00fclle w\u00e4re Fiori mit seinem 1-1-3-UI \u00fcberfordert.<\/p>\n<p>Selbst wenn es gelingen w\u00fcrde, die Anwendung in das Fiori-Schema zu pressen, w\u00fcrde die Bedienung sehr hakelig, da das in Fiori verwendete Master-Detail-Schema st\u00e4ndige Kontextwechsel mit jeweils nur partikul\u00e4ren Sichten erzwingt.<\/p>\n<p>Das UI in CIS mobile ist dagegen generell so gehalten, dass Sie Detailinformation sukzessiv abrufen k\u00f6nnen, die dann dynamisch in die angezeigte Seite eingef\u00fcgt werden. Zum Beispiel k\u00f6nnen Sie f\u00fcr einen Auftrag die Auftragspositionen anzeigen und dann f\u00fcr die Position die Konditionen.<\/p>\n<p>Das Gleiche nun f\u00fcr eine weitere Auftragsposition. Jetzt k\u00f6nnen Sie einfach durch Bl\u00e4ttern auf der Seite die beiden Positionen im Detail vergleichen, was komfortabler und m\u00fcheloser ist als eine dauernde Vorw\u00e4rts-\/R\u00fcckw\u00e4rtsnavigation mit eigenem Merken der angezeigten Informationen.<\/p>\n<h3>UI und Technologie<\/h3>\n<p>Aber k\u00f6nnte man mit der Fiori-Technologie nicht auch ganz andere, komplexere UI-Pattern implementieren? SAP hat das anscheinend vor, da Fiori nach und nach SAP GUI als Frontend f\u00fcr S\/4 Hana ersetzen soll.<\/p>\n<p>Wird das funktionieren? Sieht man sich die Implementierung der Fiori-Apps n\u00e4her an, ist hier trotz der Kleinheit der Anwendungen eine Menge JavaScript n\u00f6tig. Wenn man in klassischer Abap-Dynpro-Weise eine der Fiori-App vergleichbare Anwendungsfunktion realisiert, reicht ein viel geringerer Codierungsaufwand. Das stimmt nicht sehr optimistisch, was zuk\u00fcnftige komplexe Anwendungen angeht.<\/p>\n<h3>CIS-mobile-Technologie<\/h3>\n<p>Zwischen unserer CIS-mobile-Technologie und Fiori gibt es einige Gemeinsamkeiten, aber ganz wesentliche Unterschiede. Wie Fiori verwenden wir HTML5 als Frontend, um alle webf\u00e4higen Endger\u00e4te zu unterst\u00fctzen.<\/p>\n<p>Im Browser l\u00e4uft bei CIS mobile aber nicht die gesamte Anwendung, sondern nur der UI-Teil in Form von vordefinierten HTML5-Masken plus sehr sparsam eingesetztem JavaScript f\u00fcr spezielle UI-Funktionen.<\/p>\n<p>Das statische HTML hat den Vorteil, dass jeder normale HTML-Editor zum Entwickeln und WYSIWYG-Anpassen der Oberfl\u00e4che eingesetzt werden kann, was bei UI5 nicht der Fall ist.<\/p>\n<p>Die CIS-mo\u00adbile-Anwendung selbst liegt auf einem zentralen Windows-Server mit Microsoft IIS (Internet Information Services). Sie ist in VB.NET implementiert, was den Vorteil einer ausgereiften und komfortablen Entwicklungsumgebung (Visual Studio) bietet, in der wir im Unterschied zu JavaScript alle Windows-M\u00f6glichkeiten zur Verf\u00fcgung haben, zum Beispiel tempor\u00e4re Dateien verwenden oder mit Grafikpaketen Diagramme erzeugen k\u00f6nnen.<\/p>\n<p>Mit dem SAP-System kommuniziert CIS mobile \u00fcber perfomante Schnittstellen im LAN, die auf SAP RFC und SAP GUI basieren. SAP Gateway und OData sind ebenfalls m\u00f6glich, werden in CIS mobile aber nicht verwendet, da wir auch \u00e4ltere ERP-Systeme und auch Non-Unicode unterst\u00fctzen.<\/p>\n<p>Die Datenbeschaffung ist in Abap-Funktionsbausteinen realisiert, das Update von SAP-Daten (z. B. Termine, Ansprechpartner, Angebote) \u00fcber SAP-GUI-Transaktionen (Scripting), damit alle SAP-Standardpr\u00fcfungen und Fortschreibungen garantiert sind.<\/p>\n<p>Alle Bauteile der CIS-mobile-Architektur sind Standardtechnologien (HTML5, VB.NET, IIS, Abap, RFC und SAP GUI), von denen jede einzelne bereits eine robuste und reiche Funktionalit\u00e4t bietet.<\/p>\n<p>In relativ einfacher und naheliegender Weise sind diese Bauteile zu einer Architektur zusammengef\u00fcgt, mit der die Entwicklung anspruchsvoller Web-Anwendungen im SAP-Umfeld m\u00f6glich wird.<\/p>\n<h3>Serverseitige Anwendung<\/h3>\n<p>Die serverseitige Anwendung bietet viele Vorteile: Erstens Sicherheit, denn eine JavaScript-Anwendung im Browser kann durch Aufruf von JavaScript-Debugging manipuliert werden.<\/p>\n<p>Zweitens k\u00f6nnen wir auf dem Server in einem eigenen Anwendungscache, der von allen Benutzerprozessen erreichbar ist, h\u00e4ufig verwendete Read-only-Daten halten, auf die die Anwendung innerhalb von Mikrosekunden zugreifen kann.<\/p>\n<p>Drittens sind komfortable Entwicklung, Fehlerbehebung und stabiler Dauerbetrieb auf einem Server leichter zu gew\u00e4hrleisten als bei einer Architektur, in der gro\u00dfe Anwendungsteile auf einer Vielzahl von Ger\u00e4ten und Software-Versionen ablaufen. F\u00fcr hohe Benutzerzahlen steht ein Dispatching auf mehrere Server zur Verf\u00fcgung.<\/p>\n<p>Die Verbindung von HTML-UI und VB.NET geschieht pro Benutzeraktion in einem einzigen Roundtrip zwischen Frontend und Server. Zwischen Server und SAP-System k\u00f6nnen dann mehrere Requests stattfinden.<\/p>\n<p>Da die Antwortzeit eines Web Requests im Schnitt \u00fcber dem Zehnfachen der LAN-Antwortzeit liegt, ist das eine vern\u00fcnftige Strategie, mit der wir sehr gute Antwortzeiten erreichen.<\/p>\n<p>Dagegen muss man sich bei einer browserseitigen Anwendung bem\u00fchen, pro Benutzeraktion nicht allzu viele Roundtrips zum Server auszul\u00f6sen, was in der Regel bedeutet, dass die Datenschnittstelle der aufgerufenen Services immer umfangreicher wird und bei jeder zus\u00e4tzlichen Information angepasst werden muss.<\/p>\n<p>Die Wiederverwendung von Services durch andere Apps wird schwierig, da man entweder zu viele Informationen besorgt und das SAP-System unn\u00f6tig belastet ist oder viele spezialisierte Services hat, dann aber mehr Roundtrips braucht.<\/p>\n<h3>UI und Anwendung<\/h3>\n<p>Die logische Verbindung zwischen HTML-UI und VB.NET besteht in einem Mapping der HTML-Hierarchie auf die Objekthierarchie in VB.NET. Insgesamt ist die CIS-mobile-Anwendung in Form von etwa 200 VB.NET-Klassen realisiert, deren Namen und Inhalt sich meist an SAP-Business-Objekten orientiert, also z. B. Verkaufspositionen VBAP oder Werke T001W.<\/p>\n<p>Die Attribute der Klassen werden in der HTML-Oberfl\u00e4che \u00fcber ihren Namen angesprochen, die durch Interpretation des DOM gesammelt und an den Server geschickt werden.<\/p>\n<p>Die Auswertung der Klassenattribute und die Navigation innerhalb der Objekthierarchie auf dem Server erfolgt dann dynamisch. Jede VB.NET-Klasse kann eigene UI-Teile in Form von HTML-Iframes beisteuern.<\/p>\n<p>Damit erreichen wir eine gewisse Unabh\u00e4ngigkeit des UI von der Anwendung. Wenn beispielsweise in der Auftragsposition die Versandstelle als Code \u201e1000\u201c angezeigt wird (\u201eVSTEL\u201c) und nun noch der entsprechende Text \u201eVersandstelle Z\u00fcrich\u201c gew\u00fcnscht wird, gen\u00fcgt es, in HTML das Attribut \u201eVSTEL.VTEXT\u201c zu verwenden.<\/p>\n<p>Auf dem Server erfolgt dann automatisch der Zugriff auf den Text \u00fcber die SAP-Tabelle TVSTT, was in der Regel nur einen Cache-Zugriff von einigen Mikrosekunden bedeutet.<\/p>\n<p>Zus\u00e4tzliches Coding ist hier weder in HTML\/JavaScript noch in VB.NET erforderlich, da die Verbindung zwischen dem Code der Versandstelle und dem Text \u00fcber das Datenmodell bekannt ist. Sobald wir \u201eVSTEL.VTEXT\u201c wieder durch \u201eVSTEL\u201c ersetzen, entf\u00e4llt auf dem Server der Zugriff auf die Texttabelle.<\/p>\n<p>So weit dieser kleine Ausflug in ein Detail der Architektur, der zeigt, dass durch Modellierung und Interpretation des Modells zur Laufzeit viel Anwendungscode eingespart werden kann.<\/p>\n<h3>Separation of concerns<\/h3>\n<p>Die Trennung von UI (HTML), Anwendungscoding (VB.NET) und SAP-Zugriffen (Abap) erleichtert einen robusten und gut strukturierten Entwicklungsprozess. In Fiori ist diese Trennung, da UI und Anwendung gemeinsam in JavaScript implementiert sind, nur durch entsprechende Disziplin erreichbar.<\/p>\n<h3>Fazit<\/h3>\n<p>Die St\u00e4rke von Fiori liegt architekturbedingt in kleineren isolierten Anwendungen. CIS mobile ist daf\u00fcr optimiert, dem professionellen Benutzer die SAP Business Suite auch in einer mobilen Web-Oberfl\u00e4che ad\u00e4quat zur Verf\u00fcgung zu stellen: schnell, \u00fcbersichtlich und umfangreich.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Fiori 2.0 umfasst Hunderte Web-Applikationen. Zus\u00e4tzlich bieten viele SAP-Partner L\u00f6sungen auf Fiori-Basis an, und jeder SAP-Kunde kann eigene Fiori-Apps entwickeln. Aber tr\u00e4gt die Fiori-Architektur auch f\u00fcr umfangreiche Oberfl\u00e4chen und professionelle Benutzer, oder braucht es hier andere Ans\u00e4tze? <\/p>\n","protected":false},"author":1834,"featured_media":61274,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"pmpro_default_level":"","footnotes":""},"categories":[4,1591],"tags":[453,1507,65,296,4192],"coauthors":[33788],"class_list":["post-61259","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-management","category-1591","tag-abap","tag-fiori","tag-hana","tag-html5","tag-sap-gui","pmpro-has-access"],"acf":[],"featured_image_urls_v2":{"full":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",1000,387,false],"thumbnail":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-150x150.jpg",150,150,true],"medium":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",400,155,false],"medium_large":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-768x297.jpg",768,297,true],"large":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",1000,387,false],"image-100":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-100x39.jpg",100,39,true],"image-480":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-480x186.jpg",480,186,true],"image-640":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-640x248.jpg",640,248,true],"image-720":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-720x279.jpg",720,279,true],"image-960":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-960x372.jpg",960,372,true],"image-1168":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",1000,387,false],"image-1440":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",1000,387,false],"image-1920":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",1000,387,false],"1536x1536":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",1000,387,false],"2048x2048":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",1000,387,false],"trp-custom-language-flag":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",18,7,false],"bricks_large_16x9":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",1000,387,false],"bricks_large":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",1000,387,false],"bricks_large_square":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",1000,387,false],"bricks_medium":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",600,232,false],"bricks_medium_square":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015.jpg",600,232,false],"profile_24":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-24x24.jpg",24,24,true],"profile_48":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-48x48.jpg",48,48,true],"profile_96":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-96x96.jpg",96,96,true],"profile_150":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-150x150.jpg",150,150,true],"profile_300":["https:\/\/e3mag.com\/wp-content\/uploads\/2019\/07\/2015-300x300.jpg",300,300,true]},"post_excerpt_stackable_v2":"<p>Fiori 2.0 umfasst Hunderte Web-Applikationen. Zus\u00e4tzlich bieten viele SAP-Partner L\u00f6sungen auf Fiori-Basis an, und jeder SAP-Kunde kann eigene Fiori-Apps entwickeln. Aber tr\u00e4gt die Fiori-Architektur auch f\u00fcr umfangreiche Oberfl\u00e4chen und professionelle Benutzer, oder braucht es hier andere Ans\u00e4tze? <\/p>\n","category_list_v2":"<a href=\"https:\/\/e3mag.com\/de\/category\/management\/\" rel=\"category tag\">Business-Management<\/a>, <a href=\"https:\/\/e3mag.com\/de\/category\/1512\/\" rel=\"category tag\">MAG 15-12<\/a>","author_info_v2":{"name":"Gerhard Rod\u00e9, Synactive","url":"https:\/\/e3mag.com\/de\/author\/gerhard-rode\/"},"comments_num_v2":"0 comments","_links":{"self":[{"href":"https:\/\/e3mag.com\/de\/wp-json\/wp\/v2\/posts\/61259","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/e3mag.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/e3mag.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/e3mag.com\/de\/wp-json\/wp\/v2\/users\/1834"}],"replies":[{"embeddable":true,"href":"https:\/\/e3mag.com\/de\/wp-json\/wp\/v2\/comments?post=61259"}],"version-history":[{"count":0,"href":"https:\/\/e3mag.com\/de\/wp-json\/wp\/v2\/posts\/61259\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/e3mag.com\/de\/wp-json\/wp\/v2\/media\/61274"}],"wp:attachment":[{"href":"https:\/\/e3mag.com\/de\/wp-json\/wp\/v2\/media?parent=61259"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/e3mag.com\/de\/wp-json\/wp\/v2\/categories?post=61259"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/e3mag.com\/de\/wp-json\/wp\/v2\/tags?post=61259"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/e3mag.com\/de\/wp-json\/wp\/v2\/coauthors?post=61259"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}