Sie verwenden keine aktuelle Browser-Version. Deshalb wird die Webseite möglicherweise nicht korrekt dargestellt. Hier finden Sie weitere Hinweise.

Mobile Development Kit (MDK)

SAP Customer Experience Featured Image

Inhaltsverzeichnis

Herausforderung mobiler Anwendungen mit dem MDK meistern 

Überblick 

Steht man vor der Herausforderung mobile Anwendungen für seine Anwender bereitzustellen, gibt es einige Hürden zu meistern. Möchte man die App für Android und iOS zur Verfügung stellen, werden Entwickler benötigt, die Java und Swift können. Außerdem gibt es einen doppelten Aufwand, da pro Plattform eine App entwickelt werden muss. SAP stellt hier eine alternative Möglichkeit zur Verfügung, das Mobile Development Kit (MDK). 

Ausgangspunkt ist ein oData– oder seit neustem ein REST-Service. Auf der NEO-Plattform wird in der Web IDE, auf Cloud Foundry mit dem Business Application Studio entwickelt. Da die Web IDE keine Debugging-Möglichkeit zur Verfügung stellt, kann zusätzlich Visual Studio Code mit dem MDK-Plugin Verwendung finden, hier steht dann die Möglichkeit zum Debuggen zur Verfügung. 

Was ist nun der Unterschied zwischen MDK und einem nativen Ansatz? Beim MDK kann die komplette Oberfläche der App mit einem WYSIWYG-Editor erstellt werden, das Layout wird automatisch vom Framework übernommen. Daraus werden Metadaten erzeugt, die auch im Editor visualisiert werden. Um zusätzliche Funktionalitäten umzusetzen, können Regeln erstellet werden, auch hier gibt es einen grafischen Editor für die Javascript-Regeln. Man kann aber auch direkt eine JS-Datei erstellen und ausprogrammieren. Die App wird dann auf SAP Cloud Platform Mobile Services deployed. Es kann dann jeweils ein Client für Android und iOS erstellt werden. Der Client ist im Grunde nur eine leere Hülle, die mit dem SCPMS-Endpoint verbunden ist. Der Client lädt beim Start die Metadaten der SCPMS und interpretiert diese zur Laufzeit, d.h. die Oberfläche wird vom Client zur Laufzeit anhand der Metadaten erzeugt. Dies hat den Vorteil, dass somit die App nur einmal entwickelt werden muss und automatisch auf Android und iOS lauffähig ist. Es entsteht ein natives „look and feel“ und insgesamt wird hier ein „low code“-Ansatz verfolgt. 

Ist der oData-Service fertig, kann innerhalb weniger Minuten eine App erzeugt werden. Die Editoren stellen nämlich die Funktionalität zur Verfügung, sich das Projekt anhand einer Vorlage generieren zu lassen, inklusive CRUD. Hier wird dann auf der Hauptseite eine Übersicht aller Entitätsmenge erzeugt.

Abbildung 1 – Hauptseite: Übersicht aller Entitätsmenge

Zusätzlich wird pro Entitätsmenge eine Tabellenansicht der einzelnen Entitäten erzeugt (List), eine Detail– und Editierseite, sowie eine Seite für Neuanlagen.

Abbildung 2 – Übersicht der Kategorien


Das MDK stellt zusätzlich die Option einer Offline-App zur Verfügung. Die App beinhaltet diese Funktionalitäten automatisch, übernimmt also die Erzeugung der Offline-Datenbank, ohne dass sich um die konkreten oData-Aufrufe gekümmert werden müsste. Dies wird alles direkt erzeugt und auch hier nur über Metadaten beschrieben. 

Das MDK wird ständig von SAP weiterentwickelt, die Version 3 gab es z.B. März 2019, die aktuelle Version ist 5.0.1 und am 16.11.2020 erschienen. Diese beinhaltet viele Neuerungen. Hier eine kleine Auswahl. Es wurde ein neues Layout Master Detail Page ergänzt, welches einen Splitscreen zur Verfügung stellt. Auf der linken Seite kann man ein Objekt auswählen und bekommt auf der rechten die Detaildaten angezeigt. Außerdem steht nun auch ein Passwort-Eingabefeld zur Verfügung. Zusätzlich ist es nun möglich den Fokus auf ein Feld zu setzen. Es gibt jetzt auch, wie man es aus vielen Apps kennt, ein Pulldown-Event, um z.B. die Seite zu aktualisieren, wenn man die Seite nach unten zieht. Seit Release 5.0 ist es ebenfalls möglich einen REST-Service anzubinden. 

Demo 

Zu guter Letzt noch eine kleine Anleitung, wie Sie zu Ihrer ersten App kommen. Zuerst muss auf der SCPMS ein MDK-Eintrag erstellt werden.

Abbildung 3 – SCPMS MDK-Eintrag

Dort wird unter „Mobile Konnektivität“ die Verbindung zum oData-Service hinterlegt. In dem Beispiel verwende ich die den öffentlichen Northwind-Service von oData.org

Abbildung 4 – Eingabe „Destination und URL

Im Business Application Studio legt man dann z.B. ein neues MDK-CRUD-Template-Projekt an.

Abbildung 5 – Eingabe „Basic Information“

Im nächsten Schritt geben wir dann die zuvor angelegte Service-Destination an.

Abbildung 6 – Eingabe „Service Configuration“

Hier wird auch die Entscheidung getroffen, ob Offline-Funktionalität zur Verfügung stehen soll. 

Am Ende werdem dann noch die gewünschten Entitätsmengen gewählt und die App wird komplett generiert. Diese muss dann nur per Rechtsklick auf Application.app und dem Punkt MDK:Deploy und der darauffolgenden Auswahl Mobile Services entsprechend deployed werden.

CX7-1.png (571×628)
Abbildung 7 – Auswahl „MDK: Deploy“

Normalerweise würde im nächsten Schritt für Android oder iOS ein Client generiert werden, ejedoch gibt es von SAP in den Stores die App „Mobile Svcs“. Diese reicht für unsere Demo aus. Nach dem Start wird der QR-Code aus SCMPS unter dem Reiter APIs gescannt. Dies würde bei einem eigenen Client entfallen. Und schon ist das Ergebnis auf dem Smartphone sichtbar. Hier ein paar Screenshots.

Android 

Abbildung 8 – Android „Main“
Abbildung 9 – Android „Customers“
Abbildung 10 – Android „Customer Details“
Abbildung 11 – Android „Update Customer“
Abbildung 12 – Android Create Customer“

iOS 

Abbildung 13 – iOS „Main“
Abbildung 14 – iOS „Customer“
Abbildung 15 – iOS „Customer Details“
Abbildung 16 – iOS „Update Customer“
Abbildung 17 – iOS „Create Customer“

Nehmen Sie Kontakt zu uns auf!

    Mit der Erhebung, Verarbeitung und Nutzung meiner personenbezogenen Daten zur Bearbeitung meiner Anfrage erkläre ich mich einverstanden. Ich kann mein Einverständnis jederzeit ohne Angabe von Gründen widerrufen. Weitere Informationen finden Sie in unserer Datenschutzerklärung.

    Kostenloses Factsheet

    • Welche Vorteile bietet RISE with SAP?
    • Was ist Bestandteil des Servicepakets?
    • Welche Tools und Services helfen Ihnen?
    • Was ist SAP Business Process Intelligence?
    • Wie bringen Sie Ihr ERP effizient in die Cloud?
    • Wie kann Nagarro Sie unterstützen?