Was sind Admin-Container?
Ein Admin-Container ist ein Paket, das alle Konfigurationsänderungen bündelt, die Sie während einer Arbeitssitzung im Admin Client vornehmen. Jede Änderung — ob Sie ein Datenobjekt anlegen, eine Datenquelle anpassen oder ein Formular umbauen — wird automatisch dem aktiven Container zugeordnet.
Mit dem Container-System können Sie Konfigurationen zwischen UDM-Systemen transportieren, z. B. von einem Testsystem auf ein Produktivsystem. Außerdem lässt sich ein Container bei Bedarf zurückrollen, um alle enthaltenen Änderungen rückgängig zu machen.
Container-Status im Überblick
| Status | Bedeutung |
|---|---|
| Entwurf | Container wurde erstellt, aber noch nicht aktiviert. |
| Aktiv | Container sammelt aktiv Änderungen. Dies ist der Normalzustand während der Arbeit. |
| Abgeschlossen | Erfassung beendet. Der Container kann exportiert werden. |
| Exportiert | Container wurde als JSON-Datei exportiert. |
| Zurückgerollt | Alle Änderungen des Containers wurden rückgängig gemacht. |
Container erstellen und verwalten
Container-Auswahl nach dem Login
Nach dem Login im Admin Client erscheint ein Pflichtdialog zur Container-Auswahl. Sie müssen einen bestehenden Container auswählen oder einen neuen erstellen, bevor Sie mit der Arbeit beginnen können. Dieser Dialog kann nicht übersprungen werden.
Neuen Container erstellen
- Öffnen Sie die Container-Verwaltung Navigieren Sie im Admin Client zum Bereich System → Admin-Container. Alternativ können Sie beim Login-Dialog „Neu erstellen“ wählen.
- Klicken Sie auf „Neu“ Es öffnet sich das Detailformular für einen neuen Container.
-
Geben Sie Name und Beschreibung ein
Wählen Sie einen sprechenden Namen, z. B.
Release 2.5 — Kundenverwaltung. Die Beschreibung hilft später beim Nachvollziehen, welche Änderungen der Container enthält. - Speichern Sie den Container Der Container wird mit Status Aktiv erstellt und Ihrer Session zugewiesen. Ab sofort werden alle Änderungen diesem Container zugeordnet.
Container wechseln
Sie können jederzeit über die Container-Verwaltung einen anderen Container für Ihre Session aktivieren. Wählen Sie dazu den gewünschten Container in der Liste aus und klicken Sie auf „Session zuweisen“. Alle nachfolgenden Änderungen werden dann dem neuen Container zugeordnet.
Container abschließen
Wenn Sie mit Ihren Änderungen fertig sind, setzen Sie den Container-Status auf Abgeschlossen. Klicken Sie dazu in der Container-Liste auf „Abschließen“. Erst nach dem Abschließen kann der Container exportiert werden.
| Name | Beschreibung | Änderungen | Status | Session |
|---|---|---|---|---|
| Release 2.5 — Kundenverwaltung | Neue CRM-Felder + Dialoge | 42 | aktiv | meine Session |
| Hotfix 2.4.1 — Rechnungslauf | Korrektur Steuerberechnung | 5 | abgeschlossen | — |
| Release 2.4 — Faktura | Initiale Faktura-Konfiguration | 118 | exportiert | — |
| Test — Gauge-Spielwiese | Temporäre Tests | 23 | zurückgerollt | — |
Was wird im Container erfasst?
Der Container zeichnet alle Änderungen an Konfigurationsdaten auf — also an den Metadaten, die Ihr UDM-System steuern. Dazu gehören unter anderem:
| Bereich | Beispiele |
|---|---|
| Subsysteme & Datenobjekte | Subsysteme, Entities, Entity-Properties, Relationen |
| Oberfläche | Dialoge, Ansichtselemente, Datenquellen, Ansichten, Menügruppen |
| Benutzer & Berechtigungen | Benutzer, Berechtigungen, Rollen, Positionen |
| Vorlagen & Berichte | Nachrichtenvorlagen, Berichtsvorlagen, Dynamischer Code |
| Sonstiges | Nummernkreise, Apps, Deep-Links, Hintergrund-Jobs, Dashboards |
| Schema-Operationen | Erstellung von Tabellen, Spalten und Fremdschlüsseln (DDL) |
Änderungsprotokoll einsehen
Im Container-Detail finden Sie den Subdialog „Protokolleinträge“. Dort sehen Sie alle erfassten Änderungen mit Details wie Entität, Operation (Anlage, Änderung, Löschung), geänderte Felder, Benutzer und Zeitpunkt.
Container exportieren
Der Export erzeugt eine JSON-Datei, die alle Änderungen des Containers enthält. Diese Datei können Sie anschließend in einem anderen UDM-System importieren.
Voraussetzungen
- Der Container muss den Status Abgeschlossen oder Exportiert haben.
- Der Container sollte mindestens eine Änderung enthalten.
Schritt für Schritt
- Öffnen Sie die Container-Liste Navigieren Sie zu System → Admin-Container.
- Wählen Sie den Container aus und klicken Sie auf „Exportieren“ Es öffnet sich die Export-Seite mit einer automatischen Vorschau.
- Prüfen Sie die Export-Vorschau Die Vorschau zeigt Ihnen alle Datensätze, die exportiert werden, inklusive Statistik-Badges (Anzahl Upserts, Löschungen, übersprungene Einträge). So können Sie vor dem Export kontrollieren, ob der Inhalt Ihren Erwartungen entspricht.
-
Klicken Sie auf „Exportieren“
Die JSON-Datei wird generiert und als Download bereitgestellt.
Der Dateiname folgt dem Muster
AdminContainer_{Name}_{Datum}.json. Der Container-Status wechselt auf Exportiert.
Was enthält die Export-Datei?
| Bereich | Beschreibung |
|---|---|
| Container-Metadaten | Name, Beschreibung, Zeitraum, Anzahl Änderungen |
| Statistiken | Gesamtzahl, Upserts, Löschungen, übersprungene Einträge, betroffene Tabellen |
| Datensätze (Records) | Jeder Datensatz mit Tabelle, Primärschlüssel, Operation (Upsert/Delete) und den vollständigen Daten |
| Schema-Operationen | DDL-Befehle (Tabellen- und Spaltenerstellung), die im Zielsystem ausgeführt werden |
Container importieren
Der Import überträgt die Änderungen aus einer Export-Datei in das aktuelle UDM-System. Dabei werden Datensätze angelegt, aktualisiert oder gelöscht — je nach Inhalt der Datei.
Import-Modi
| Modus | Verhalten | Anwendungsfall |
|---|---|---|
| Full (Standard) | Alle Felder eines Datensatzes werden überschrieben | Frisches Zielsystem, 1:1-Kopie gewünscht |
| Delta | Nur die tatsächlich geänderten Felder werden aktualisiert | Zielsystem hat eigene Änderungen, die erhalten bleiben sollen |
Schritt für Schritt
- Öffnen Sie die Container-Liste und klicken Sie auf „Importieren“ Es öffnet sich die Import-Seite.
- Laden Sie die JSON-Datei hoch Klicken Sie auf das Datei-Upload-Feld und wählen Sie die Export-Datei aus (max. 50 MB). Die Datei wird im Browser verarbeitet und an den Server zur Vorschau-Prüfung gesendet.
-
Prüfen Sie die Import-Vorschau
Die Vorschau zeigt für jeden Datensatz, welche Operation ausgeführt wird:
- Insert — Datensatz existiert nicht im Zielsystem und wird neu angelegt
- Update — Datensatz existiert bereits und wird aktualisiert
- Delete — Datensatz wird im Zielsystem gelöscht
- Skip — Datensatz existiert nicht und ein Delete ist nicht nötig
- Wählen Sie den Import-Modus Entscheiden Sie zwischen Full (alle Felder überschreiben) und Delta (nur geänderte Felder). Der Standardmodus ist Full.
- Klicken Sie auf „Import ausführen“ Der Import wird in einer atomaren Transaktion ausgeführt — entweder werden alle Änderungen übernommen oder keine (alles oder nichts).
- Prüfen Sie das Import-Ergebnis Nach dem Import wird eine Zusammenfassung angezeigt. Im Subdialog „Import-Ergebnis“ sehen Sie das Ergebnis für jeden einzelnen Datensatz (Eingefügt, Aktualisiert, Gelöscht, Übersprungen, Fehler).
Rollback — Änderungen zurückrollen
Mit der Rollback-Funktion können Sie alle Änderungen eines Containers rückgängig machen. Das funktioniert sowohl im Quellsystem (eigene Änderungen zurücknehmen) als auch im Zielsystem (Import rückgängig machen).
Voraussetzungen
- Der Container darf nicht den Status Entwurf oder Zurückgerollt haben.
- Ein Rollback kann nicht rückgängig gemacht werden — planen Sie sorgfältig!
Schritt für Schritt
- Wählen Sie den Container in der Liste aus Navigieren Sie zu System → Admin-Container und wählen Sie den Container, den Sie zurückrollen möchten.
- Klicken Sie auf „Zurückrollen“ Es erscheint ein Bestätigungsdialog, der Sie auf die Konsequenzen hinweist. Falls der Container physische Tabellen erstellt hat (Schema-Operationen), wird zusätzlich eine Liste dieser Tabellen angezeigt, die Sie einzeln bestätigen können.
- Bestätigen Sie den Rollback Nach Bestätigung werden alle Änderungen in umgekehrter Reihenfolge rückgängig gemacht. Der Container-Status wechselt auf Zurückgerollt.
Was passiert beim Rollback?
| Ursprüngliche Operation | Rollback-Aktion |
|---|---|
| Datensatz angelegt (Insert) | Datensatz wird gelöscht |
| Datensatz geändert (Update) | Ursprüngliche Werte werden wiederhergestellt |
| Datensatz gelöscht (Delete) | Datensatz wird aus gespeichertem Snapshot wiederhergestellt |
| Tabelle erstellt (Schema-Operation) | Tabelle wird gelöscht (nur nach expliziter Bestätigung) |
Nach dem Rollback finden Sie im Container-Detail unter Rollback-Info eine Zusammenfassung des Ergebnisses — mit Angaben zu wiederhergestellten Updates, gelöschten Inserts, wiederhergestellten Deletes sowie eventuelle Warnungen.
Versionierung und Abhängigkeiten
Abhängigkeitsebenen
UDM verwaltet 42 Systemtabellen in 5 Abhängigkeitsebenen. Beim Export und Import wird die Reihenfolge automatisch eingehalten, damit keine Fremdschlüssel-Konflikte entstehen:
| Ebene | Tabellen (Beispiele) | Verhalten |
|---|---|---|
| 0 | Subsysteme, Apps, Nummernkreise, Einstellungen | Werden zuerst importiert (keine Abhängigkeiten) |
| 1 | Entities, Benutzer, Menügruppen, Endpunkte | Benötigen Ebene 0 |
| 2 | Entity-Properties, Datenquellen, Relationen, Ansichtselemente | Benötigen Ebene 0 + 1 |
| 3 | Dialoge, Menüeinträge, Hintergrund-Jobs, Deep-Links | Benötigen Ebene 0–2 |
| 4 | Nachrichtenempfänger | Höchste Abhängigkeitsebene |
Dateiformat und Versionierung
Die Export-Datei enthält eine formatVersion, die derzeit
auf 1 steht. Beim Import prüft UDM diese Version und lehnt
inkompatible Dateien ab. So wird sichergestellt, dass nur kompatible Pakete
importiert werden können.
Atomare Transaktionen
Jeder Import läuft in einer einzigen Datenbank-Transaktion. Wenn ein Fehler auftritt, werden alle Änderungen zurückgerollt — das Zielsystem bleibt unverändert. Es gibt keine halbfertigen Zustände.
Praxisbeispiele
Sie konfigurieren ein neues Modul (z. B. „Kundenverwaltung“) auf dem Testsystem. Alle Änderungen landen automatisch in Ihrem aktiven Container. Nach dem Testen schließen Sie den Container ab, exportieren ihn als JSON-Datei und importieren diese Datei im Produktivsystem — im Modus Full, da das Produktivsystem noch keine eigenen Anpassungen hat.
Auf dem Testsystem beheben Sie einen Konfigurationsfehler — z. B. eine falsche Datenquellen-Einstellung. Das Produktivsystem hat zwischenzeitlich eigene Anpassungen erhalten. Sie exportieren den Container und importieren ihn im Modus Delta, sodass nur die tatsächlich geänderten Felder überschrieben werden und die übrigen Anpassungen erhalten bleiben.
Sie stellen nach einem Import fest, dass die Änderungen nicht korrekt sind. Öffnen Sie die Container-Liste, wählen Sie den betroffenen Container (der durch den Import im Zielsystem entstanden ist) und klicken Sie auf „Zurückrollen“. Alle importierten Änderungen werden rückgängig gemacht und die ursprünglichen Werte wiederhergestellt.
Zwei Administratoren arbeiten gleichzeitig am selben System — einer an der „Artikelverwaltung“, der andere an der „Auftragsverwaltung“. Jeder hat seinen eigenen Container. Die Änderungen werden getrennt erfasst und können unabhängig voneinander exportiert, importiert und zurückgerollt werden.
Tipps und Warnungen
Release 2.5 — CRM-Modul oder
Hotfix — Datenquellen-Korrektur.
So behalten Sie auch bei vielen Containern den Überblick.
Häufig gestellte Fragen
Kann ich einen Container mehrfach exportieren?
Ja. Der Export kann beliebig oft wiederholt werden. Die erzeugte Datei enthält immer den aktuellen Stand aller dem Container zugeordneten Änderungen.
Kann ich die Export-Datei in mehrere Systeme importieren?
Ja. Die Export-Datei ist ein eigenständiges Paket. Sie können sie in beliebig viele Zielsysteme importieren — jedes System verarbeitet den Import unabhängig.
Was passiert, wenn der Import fehlschlägt?
Der Import läuft in einer atomaren Transaktion. Wenn ein Fehler auftritt, werden alle Änderungen automatisch zurückgerollt. Das Zielsystem bleibt in dem Zustand, in dem es vor dem Import war.
Was ist der Unterschied zwischen Full und Delta?
Im Full-Modus werden alle Felder jedes Datensatzes überschrieben. Im Delta-Modus werden nur die Felder aktualisiert, die im Quellsystem tatsächlich geändert wurden. Delta eignet sich, wenn das Zielsystem eigene Anpassungen hat, die erhalten bleiben sollen.
Kann ich nur einzelne Änderungen aus einem Container exportieren?
Nein. Der Export umfasst immer alle Änderungen eines Containers. Wenn Sie nur bestimmte Änderungen übertragen möchten, erstellen Sie dafür einen separaten Container.
Muss ich nach dem Import den Container manuell löschen?
Nein. Importierte Änderungen werden im Zielsystem automatisch einem Container zugeordnet (mit dem Vermerk „importiert“). Dieser Container dient als Protokoll und ermöglicht einen späteren Rollback.
Werden Benutzerdaten („echte“ Geschäftsdaten) mit exportiert?
Nein. Der Admin-Container exportiert ausschließlich Konfigurationsdaten (Metadaten). Geschäftsdaten aus den Subsystem-Tabellen werden nicht erfasst. Für den Export einer kompletten App inklusive Zeilendaten gibt es den separaten App-Export.
Kann ich einen Rollback rückgängig machen?
Nein. Ein Rollback ist endgültig. Erstellen Sie im Zweifelsfall vorher einen Export als Sicherungskopie.