Der Wizard Workflow Tracker zeigt den Fortschritt von Wizard-basierten Hintergrund-Workflows in Echtzeit an. Statt eines leeren Bildschirms nach dem Absenden sehen Nutzende den aktuellen Schritt und Status.
Architektur
Die Extension wird als Front-End Workspace in Matrix42 integriert und besteht aus drei AngularJS-Komponenten:
| Komponente | Funktion |
|---|---|
rootitup-wizard-postaction | Führt nach Workflow-Abschluss automatisch eine Folgeaktion aus |
rootitup-process-status | Pollt den Workflow-Status und zeigt den Fortschritt |
rootitup-view-help | Zeigt Hilfe basierend auf der Wizard-Konfiguration |
Technische Details
Das AngularJS-Modul RootITUp.AwaitWorkflow registriert sich über mx.workspacesConfig.registerModule() in der Matrix42-Shell. Genutzte Matrix42-Services:
mx.shell.EventService– Lauscht aufWizardPostAction-Eventsmx.shell.ActionManagerService– Ruft konfigurierte Aktionen abmx.shell.ActionExecutorService– Führt Folgeaktionen ausmx.shell.SidePanelService– Öffnet Views im Seitenpanelmx.SolutionBuilderAgent.ViewHelpService– Zeigt Hilfe an
Installation
Extension Gallery
- Matrix42 Administration öffnen
- Zu Administration → Extensions → Extension Gallery navigieren
- Nach „Wizard Workflow Tracker” von RootITUp suchen
- Auf „Install” klicken und warten, bis die Installation abgeschlossen ist
Voraussetzung: Administrative Rechte im Matrix42-System.
Konfiguration
Basiskonfiguration
1. Wizards filtern
Unter Administration → User Interface → Layouts die Wizard-Übersicht öffnen.
Der Wizard Workflow Tracker funktioniert nur mit Wizards, die Workflows starten. Wir filtern daher mit folgendem ASQL:
T(PDRContentWidgetClassWizard).Workflow IS NOT NULL
2. Layout Builder öffnen
Den gewünschten Wizard auswählen und über „Change Layout” den Layout Builder starten.
3. Control einfügen
- In der Toolbox nach „Workflow” suchen
- Das Element „RootITUp Await Workflow” per Drag-&-Drop platzieren
- Einen lokalisierten Namen vergeben (z. B. „Hardware ausgeben”)
Workflow-Schritte konfigurieren
Die Qualität der Fortschrittsanzeige hängt von den Schrittbeschreibungen im Workflow ab. Der Tracker liest diese über die REST-API /m42Services/api/BackgroundProcess/{processId} und zeigt den aktuellen Schritt (Last step:) an.
1. Workflow öffnen
Unter Administration → Services & Processes → Workflow Studio → Manage Workflows den relevanten Workflow auswählen.
2. Visual Progress konfigurieren
An strategischen Stellen die Aktivität „Update Visual Progress” einfügen:
| Workflow-Schritt | Visual Progress |
|---|---|
| Start | „Hardware wird gesucht…” |
| Verfügbarkeitsprüfung | „Verfügbarkeit wird geprüft…” |
| Zuweisung | „Hardware wird zugewiesen…” |
| Bestätigung | „Inventar wird aktualisiert…“ |
3. Aktivität konfigurieren
In jeder „Update Visual Progress”-Aktivität:
- Schritte hinzufügen: Jeder logische Schritt benötigt einen eigenen Eintrag (über „Add”)
- Icon zuweisen: Wird in der Workflow-Instanz-Detailansicht angezeigt (hilfreich bei Fehleranalyse)
- Lokalisierte Namen: Die Anzeigenamen erscheinen in der Sprache der Nutzenden
4. Workflow veröffentlichen
Alle Aktivitäten prüfen, Workflow einchecken und veröffentlichen.
Funktionen im Detail
Statusverfolgung (Polling)
Die rootitup-process-status-Komponente pollt den Workflow-Status automatisch über die Matrix42 REST-API.
Polling-Verhalten
| Parameter | Standardwert | Beschreibung |
|---|---|---|
pollInterval | 2 Sekunden | Intervall zwischen Statusabfragen |
| Max. Laufzeit | 20 Minuten | Automatischer Stopp zur Ressourcenschonung |
Erkannte Status
| API-Status | Anzeige | Typ |
|---|---|---|
Active / Executing / Starting | Läuft | loading |
Completed | Abgeschlossen | completed |
Failed / Terminated / Canceled | Fehlgeschlagen | failed |
Suspended / Suspending | Angehalten | suspended |
Queued | Warteschlange | queued |
Bei Status
completedoderfailedstoppt das Polling automatisch.
Folgeaktionen (Post-Action)
Die rootitup-wizard-postaction-Komponente führt nach Workflow-Abschluss automatisch eine Aktion aus.
Bindings
| Parameter | Typ | Beschreibung |
|---|---|---|
isActive | Boolean | Aktiviert/deaktiviert die Komponente |
action | String | ID der auszuführenden Aktion |
title | String | Anzeigename für die Aktion |
Ablauf
- Komponente lauscht auf
WizardPostAction-Event - Liest
OperationIdaus demSubmitData-Return des Wizards - Ruft die konfigurierte Aktion über
ActionManagerServiceab - Führt die Aktion mit dem neuen Objekt als Referenz aus
Hilfe-Integration
Die rootitup-view-help-Komponente zeigt Hilfe basierend auf der Wizard-Konfiguration.
Hilfetypen
| SourceType | Beschreibung |
|---|---|
0 | Keine Hilfe |
1 | Knowledge-Base-Artikel |
3 | Externe URL |
Die Hilfekonfiguration wird direkt aus dem Wizard übernommen (helpSourceType, helpValue).
Barrierefreiheit
Ab Version 1.3.0 unterstützt der Wizard Workflow Tracker ARIA-Attribute für Screenreader und assistive Technologien.
Changelog
Version 1.3.0 – Funktionsupdate (25.01.2026)
- 🔁 Angehaltene Workflows: Status „Suspended” wird korrekt angezeigt
- 🌐 ARIA-Unterstützung: Barrierefreiheit für Screenreader
- 🌍 Erweiterte Lokalisierung: Zusätzliche Sprachressourcen
- ⚡️ Optimiertes Polling: Kürzere Reaktionszeiten
- ✅ Rückwärtskompatibel mit Version 1.2.0
Version 1.2.0 – Initial Release (14.03.2025)
- ✨ Control-Deskriptor „RootITUp Await Workflow” für Echtzeitverfolgung
- ✨ Statusanzeige durch „RootITUp Prozess-Status”
- ✨ Hilfe-Integration via „RootITUp View Help”
- ✨ Drag-&-Drop-Integration im Layout Designer
- ✨ Unterstützung für „Update Visual Progress”-Schrittbeschreibungen
- ✨ Kompatibel mit Matrix42 ab Version 11.x.x
- ✅ Verwendet ausschließlich öffentliche Matrix42-APIs
Häufig gestellte Fragen
Welche Matrix42-Versionen werden unterstützt?
Der Wizard Workflow Tracker ist mit allen Matrix42-Versionen ab 11.x.x kompatibel.
Warum stoppt das Polling nach 20 Minuten?
Um Ressourcenlecks zu vermeiden, stoppt das Polling automatisch nach 20 Minuten unabhängig vom Workflow-Zustand. Bei längeren Workflows empfehlen wir eine Kombination mit E-Mail-Benachrichtigungen.
Lässt sich das Polling-Intervall anpassen?
Ja, über die Eigenschaft pollInterval (in Sekunden) im Layout Designer. Der Standardwert beträgt 2 Sekunden.
Werden zusätzliche Berechtigungen benötigt?
Nein. Die Extension verwendet ausschließlich öffentliche Matrix42-APIs – keine zusätzlichen Berechtigungen erforderlich.
Wie wird die Hilfefunktion konfiguriert?
Die Hilfe wird über die Wizard-Konfiguration definiert. Im Wizard-Editor unter „Help Configuration” entweder einen Knowledge-Base-Artikel (SourceType 1) oder eine externe URL (SourceType 3) auswählen.
Was passiert bei einem Workflow-Fehler?
Bei Status „Failed”, „Terminated” oder „Canceled” wird der Fehlerstatus angezeigt und das Polling gestoppt. Über die konfigurierte Hilfefunktion erhalten Nutzende Unterstützung.