Erscheinungsbild
Backend-Konfiguration
Ein Teil des Mobile-Builder-Verhaltens wird nicht im Designer, sondern direkt im SAP-Backend eingestellt — in Tabellen, die über die Transaktion SM30 gepflegt werden. Diese Seite beschreibt, welche Tabellen das sind und wofür sie zuständig sind.
| Tabelle | Zweck | Reichweite |
|---|---|---|
/mobbuild/boot | UI5-Bootstrap: Pfad zur UI5-Laufzeit und Start-Theme | ein Eintrag pro Mandant |
/mobbuild/feat | Feature-Toggles: systemweite Schalter für das Backend-Verhalten | ein Eintrag pro Schalter |
/mobbuild/lic | Lizenzschlüssel — siehe Lizenz | ein Eintrag pro Mandant |
Nicht im Transport
Alle drei Tabellen sind mandantenabhängige Anwendungstabellen (Lieferklasse A). Ihre Einträge werden nicht in einen Transport aufgezeichnet und wandern deshalb nicht von Entwicklungs- ins Produktivsystem. Pflegen Sie sie in jedem System und Mandanten separat.
UI5-Bootstrap (/mobbuild/boot)
Diese Tabelle legt fest, welche UI5-Laufzeit der Designer und die gebauten Apps laden und mit welchem Theme sie starten. Sie enthält genau einen Eintrag pro Mandant.
| Feld | Beschriftung in SM30 | Bedeutung |
|---|---|---|
MOBBUILD_UI5_PATH | Path | Pfad oder URL zu sap-ui-core.js |
MOBBUILD_UI5_THEME | Theme | UI5-Theme beim Start |

So wirkt sie: Bevor die Oberfläche startet, fragt die index.html — sowohl die des Designers als auch die jeder gebauten App — den Backend-Aufruf bootstrap_get ab und erzeugt daraus das UI5-Bootstrap-Script. Ein leeres Feld wird abgefangen: ohne Pfad gilt resources/sap-ui-core.js (der vom SAP-System selbst ausgelieferte UI5-Stand), ohne Theme gilt sap_fiori_3.
Typische Werte für den Pfad
Die UI5-Laufzeit kann entweder aus dem eigenen SAP-System oder vom SAP-CDN (ui5.sap.com) kommen. Beim CDN entscheidet das erste Segment hinter dem Hostnamen über die Version:
| Wert | Wirkung |
|---|---|
resources/sap-ui-core.js | UI5 aus dem eigenen SAP-System (gilt auch, wenn das Feld leer bleibt) |
https://ui5.sap.com/1.120.49/resources/sap-ui-core.js | feste Version vom CDN — <Major>.<Minor>.<Patch> |
https://ui5.sap.com/1.120/resources/sap-ui-core.js | Evergreen-Version — jeweils neuester Patch dieser Minor-Version |
https://ui5.sap.com/resources/sap-ui-core.js | Default-Version des CDN — laut SAP nicht für Produktiv- oder Testsysteme geeignet |
Version festnageln
Die Default-URL ohne Versionsangabe wird von SAP laufend auf eine neue UI5-Version gehoben. SAP rät ausdrücklich davon ab, sie in Produktiv- oder Testumgebungen zu verwenden, weil ein solcher Versionswechsel unbemerkt das Verhalten der Apps ändern kann. Tragen Sie stattdessen eine feste Version ein — oder eine Evergreen-Version, wenn Sie Patches automatisch mitnehmen wollen.
Evergreen-URLs gibt es nur für Long-Term-Maintenance-Versionen ab 1.71. Sie setzen asynchrones Bootstrapping voraus — das bringt der Mobile Builder bereits mit (data-sap-ui-async und der ComponentSupport-Callback stehen im Bootstrap-Script).
Welche Versionen aktuell verfügbar sind und wie lange sie gepflegt werden, zeigt die SAPUI5-Versionsübersicht. SAP entfernt Versionen ein Jahr nach Wartungsende vom CDN.
Cache-Buster
Ohne Versionsangabe in der URL lohnt sich der SAPUI5-Cache-Buster: Der Browser holt die UI5-Ressourcen dann dauerhaft aus dem Cache und lädt sie nur neu, wenn sie sich tatsächlich geändert haben. Dazu wird resources/sap-ui-core.js durch resources/sap-ui-cachebuster/sap-ui-core.js ersetzt:
| Wert | Wirkung |
|---|---|
resources/sap-ui-cachebuster/sap-ui-core.js | UI5 aus dem eigenen SAP-System, mit Cache-Buster |
https://ui5.sap.com/resources/sap-ui-cachebuster/sap-ui-core.js | UI5 vom CDN, mit Cache-Buster |
Nur ohne feste Version nötig
Bei einer fest eingetragenen Version (.../1.120.49/resources/...) ist der Cache-Buster überflüssig — diese URL liefert immer denselben Stand und darf vom Browser beliebig lange gecacht werden. Der Cache-Buster ist die Antwort auf die Default- und Evergreen-Variante, deren Inhalt sich unter gleichbleibender URL ändert.
Vor dem Produktiveinsatz prüfen
Der Cache-Buster arbeitet mit einer Zwischenstufe: Die erste Anfrage liefert kein UI5, sondern ein kleines Script, das den echten Bootstrap mit Zeitstempel-Pfad nachzieht. Der Mobile Builder baut sein Bootstrap-Script dynamisch auf (er fragt diese Tabelle ja erst ab, bevor er UI5 lädt) — testen Sie die Kombination deshalb im eigenen System, bevor Sie sie produktiv setzen.
Mindestversion beachten
Der Designer setzt SAPUI5 ≥ 1.76 voraus — egal, ob die Laufzeit aus dem SAP-System oder vom CDN kommt. Siehe Installation → Voraussetzungen. Ein CDN-Pfad erfordert außerdem, dass die Clients ui5.sap.com erreichen dürfen; CORS-Header liefert SAP dafür mit, ein vorgeschalteter Proxy ist nicht nötig.
Verhältnis zu den anderen Theme-Einstellungen
Das Theme aus /mobbuild/boot ist das Start-Theme. Es gilt nicht überall gleich:
- Designer — nach dem Start überschreibt der Designer das Theme mit der persönlichen Einstellung des angemeldeten Anwenders (siehe Designer-Einstellungen). Das Bootstrap-Theme wirkt hier nur, solange keine persönliche Einstellung gepflegt ist.
- Gebaute Apps — sie bringen keine eigene Theme-Logik mit und bleiben deshalb beim Theme aus
/mobbuild/boot. - Im Fiori Launchpad — dort startet die Shell die UI5-Laufzeit selbst; die
index.htmlder App wird gar nicht verwendet. Pfad und Theme kommen dann aus der FLP-Konfiguration,/mobbuild/bootbleibt wirkungslos.
Feature-Toggles (/mobbuild/feat)
Über diese Tabelle werden systemweite Schalter gesetzt, mit denen sich das Backend an Eigenheiten des Kundensystems anpassen lässt — ohne Änderung am Coding.
| Feld | Beschriftung in SM30 | Bedeutung |
|---|---|---|
FEATURE | Feature-Toggle-Key | Schlüssel des Schalters (siehe Katalog unten) |
VALUE | Flag | Ankreuzfeld: gesetzt = eingeschaltet, leer = ausgeschaltet |
DESCR | TEXT | freier Beschreibungstext für die eigene Dokumentation |

Auswertung: Ist zu einem Schalter kein Eintrag vorhanden, gilt sein Standardverhalten — heute für alle Schalter „aus". Eine Zeile mit gesetztem Ankreuzfeld schaltet ihn ein, eine Zeile mit leerem Ankreuzfeld wieder aus. Es genügt also, nur die Schalter zu pflegen, die vom Standard abweichen sollen.
Änderungen wirken erst in neuen Sitzungen
Das Backend puffert die Tabelle je Sitzung. WebSocket-Sitzungen des Designers sind langlebig — nach einer Änderung in SM30 melden Sie sich neu an bzw. laden den Browser neu, damit der neue Wert greift.
Katalog der Schalter
FEATURE_MESSAGE_PRODUCER_PLAIN
Steuert, auf welchem Weg das Backend seine WebSocket-Nachrichten verschickt — betroffen sind alle Echtzeit-Meldungen: das Sperren und Entsperren von Views, der Live-Abgleich beim Speichern, die Push-Aktualisierung und die Meldung „Build fertig".
| Zustand | Verhalten |
|---|---|
| kein Eintrag / Flag leer | Standard — Nachrichten werden gezielt an die Empfänger-Sitzung adressiert |
| Flag gesetzt | Nachrichten werden ohne Sitzungsadressierung an den Kanal gesendet |
Welche der beiden Varianten funktioniert, hängt vom SAP-System ab. Setzen Sie den Schalter auf X, wenn die WebSocket-Verbindung nachweislich steht, die Echtzeit-Meldungen aber trotzdem nicht bei den Anwendern ankommen — etwa wenn eine fremd gesperrte View beim Kollegen nicht als gesperrt erscheint oder die „Build fertig"-Meldung ausbleibt. Vor Einführung des Schalters war diese Variante nur durch eine Änderung am Coding umstellbar.
Systemweit, nicht pro Kanal
Der Schalter gilt für alle Sendestellen gemeinsam. Er beschreibt eine Eigenschaft des Kundensystems und wird deshalb einmal gesetzt — nicht pro App oder pro Kanal.
Pflege in SM30
- Transaktion SM30 aufrufen.
- Im Feld Tabelle/View den Tabellennamen eintragen (
/MOBBUILD/BOOTbzw./MOBBUILD/FEAT) und Pflegen wählen. - Bei
/MOBBUILD/FEATüber Neue Einträge einen Schalter ergänzen oder ein bestehendes Ankreuzfeld ändern; bei/MOBBUILD/BOOTden vorhandenen Eintrag über Detail bearbeiten. - Sichern. Ein Transportauftrag wird nicht abgefragt — die Einträge bleiben im jeweiligen Mandanten.
Für beide Tabellen ist die Pflege über SM30 vorgesehen; einen eigenen Transaktionscode gibt es dafür nicht.
Nächste Schritte
- Lizenz – Lizenzschlüssel eintragen und prüfen
- Designer-Einstellungen – persönliche Einstellungen je Anwender
- Installation – Transport, Services und Erstinbetriebnahme