Kontext
Ein Krankenhaus sperrt Betten aus vielen Gründen, und jede Station hat das bisher für sich geführt. Eine zentrale Stelle gab es nicht. Wer wissen wollte, welche Betten gerade nicht zur Verfügung stehen, musste nachfragen. Eine Auswertung über alle Stationen war so nicht möglich, und freie Kapazität blieb unbemerkt.
Ansatz
Eine SAPUI5-App, in der Bettensperren erfasst und wieder aufgehoben werden. Dieselbe App wertet die Sperren aus: welche Betten, wie lange, auf welcher Station. Sie hängt im Fiori Launchpad neben den Anwendungen, die die Stationen ohnehin nutzen.
Wie es gebaut ist
Das Frontend ist SAPUI5, und das war eine bewusste Wahl: UI5 bringt die Bausteine fertig mit, Tabellen, Filter, Formulare, Datumsauswahl. Damit ließ sich alles Wichtige direkt anzeigen, statt es neu zu bauen. Das Backend liefert OData-Services aus ABAP mit CDS Views.
Die App baut auf den beiden Bettentypen-Anwendungen von 2022 auf: eine gemeinsame SAPUI5-Library trägt zentrale Funktionen wie Excel-Import und -Export, ein Sperrkonzept für Frontend und Backend verhindert, dass zwei Personen denselben Datensatz gleichzeitig ändern. Kataloge, Gruppen, Rollen und Kacheln im Launchpad gehören zur Auslieferung, ebenso der Transport von E bis P.
| Baustein | Technik | Entscheidung |
|---|---|---|
| Oberfläche | SAPUI5 | Tabellen, Filter, Formulare und Datumsauswahl kommen fertig aus dem Framework |
| Backend | ABAP, CDS Views, OData | Die Auswertung entsteht im Datenmodell, nicht in der Oberfläche |
| Library | Gemeinsame SAPUI5-Library | Excel-Import und -Export und das Sperrkonzept liegen einmal für beide Anwendungen |
| Launchpad | Kataloge, Gruppen, Rollen, Kacheln | Die App startet dort, wo die Stationen ohnehin arbeiten |
Erkenntnisse
- UI5 liefert die Komponenten, die eine solche App braucht. Die Arbeit lag im Datenmodell und in der Auswertung, nicht in der Oberfläche.
- Den Nutzen bringt die Auswertung über alle Stationen, nicht die Erfassung.
- Eine gemeinsame Library zahlt sich ab der zweiten App aus.
- Das Sperrkonzept war nötig, weil mehrere Stationen dieselben Daten anfassen.