Dateneingabe in veraltete Kernsysteme mit Power Automate for desktop automatisieren — Manuelle Eingabe aus Excel und Papier durch UI-Automatisierung ersetzen
· Go Komura · Power Automate, RPA, Desktopflow, UI-Automatisierung, Excel, Kernsystem, Betriebsautomatisierung, Technische Beratung
„Jeden Tag tippen Mitarbeitende Bestellungen, die über ein Webformular oder per E-Mail eingehen, von Hand in unser internes Vertriebssystem ab.“ „Die Übertragung eines Monats an Anwesenheits- und Antragsdaten aus Excel in das Kernsystem zum Monatsende dauert zwei volle Tage.“ Solche Klagen hören wir ständig. Was sie gemeinsam haben: Das Zielsystem ist eine alte Geschäftsanwendung, die seit zehn oder zwanzig Jahren im Einsatz ist — ein WinForms- oder VB6-Bildschirm, ein dedizierter Client — ohne API und ohne CSV-Importfunktion.
Eine Anpassung des Systems würde das Problem an der Wurzel lösen, aber es ist nicht ungewöhnlich, dass manuelle Eingabe fortbesteht, weil der ursprüngliche Anbieter nicht mehr existiert, der Quellcode nicht mehr vorhanden ist oder sich die Kosten der Anpassung schlicht nicht rechnen. Ein praktisches Werkzeug, um diese Lücke zu schließen, ist UI-Automatisierung mit Power Automate for desktop (PAD). Da es einfach die Tastatureingaben und Mausbewegungen einer Person nachbildet, können Sie den Vorgang automatisieren, ohne das Zielsystem überhaupt anzufassen. Unter Windows 11 gibt es zusätzlich den Vorteil, es ohne zusätzliche Installation ausprobieren zu können.
Allerdings ist UI-Automatisierung auch ein Werkzeug, bei dem „es beim ersten Mal zum Laufen zu bringen einfach ist, es aber schwierig ist, es dauerhaft zuverlässig laufen zu lassen“. Dieser Artikel konzentriert sich speziell auf Dateneingabearbeit und behandelt alles von der Frage, ob Sie überhaupt UI-Automatisierung wählen sollten, über die Grenze zwischen kostenlos und lizenzpflichtig, bis zu Designs für stabilen Betrieb und die Wiederherstellung nach Fehlschlägen. Die allgemeine Frage, wann welcher Teil von Power Automate zum Einsatz kommt, sowie Fehlerbehandlung im Allgemeinen haben wir in Geschäftsprozesse mit Power Automate automatisieren — Cloudflows, Desktopflows und robuste Fehlerbehandlung behandelt; dieser Artikel ist die spezifische Fallstudie für Dateneingabearbeit.
1. Das Wichtigste zuerst
- UI-Automatisierung ist die letzte Option. Prüfen Sie, bevor Sie danach greifen, ob das Zielsystem einen CSV-Import, direkte Datenbankeinfügung, eine API oder dateibasierte Integration bietet. Existiert auch nur eine davon, wird sie zuverlässiger stabil sein als UI-Automatisierung.
- PAD ist fest in Windows 11 eingebaut und lässt sich unter Windows 10 auch kostenlos installieren. Mit dem Recorder und über 400 Aktionen können Sie einen No-Code-Flow bauen, der Excel liest und die Daten in einen Bildschirm eintippt.12
- Einen Flow zu bauen und selbst auszuführen (angeleitete Ausführung) kostet nichts extra. Das gilt, egal ob Sie sich mit einem Arbeits-/Schulkonto oder einem Microsoft-Konto anmelden. Der automatische Start aus einem Cloudflow, zeitgesteuerte Läufe und das Teilen von Flows hingegen erfordern alle eine Power Automate Premium-Lizenz.34
- Unbeaufsichtigte Ausführung — die Art, die Sie für einen nächtlichen Stapellauf verwenden würden — erfordert zusätzlich Rechnerregistrierung und eine Power Automate Process-Lizenz. Es gibt auch dafür spezifische technische Voraussetzungen, etwa dass jeder Benutzer abgemeldet sein muss.56
- Die Schlüssel für stabilen Betrieb sind drei Dinge: wie Sie Selektoren bauen, das Warten auf Elemente und Fehlerbehandlung pro Datensatz. Ein Flow, der nur aus festen Wait-Aktionen besteht, bricht garantiert irgendwann.789
- Damit Sie bei einem Fehlschlag erkennen können, wie weit die Eingabe gekommen ist, bauen Sie von Anfang an ein Design ein, bei dem die Quell-Excel-Datei eine Statusspalte und eine Registriernummer-Spalte besitzt, die nach jedem Datensatz zurückgeschrieben werden. So führt ein erneuter Lauf des Flows nie zu doppelten Einträgen.
- Weil das Schicksal, bei einer Bildschirmänderung irgendwann zu brechen, nie verschwindet, gehören Arbeit mit hohem Volumen, Arbeit, die keine Ausfallzeit verträgt, oder Arbeit gegen eine häufig aktualisierte App in den Bereich der Datenintegrationsentwicklung oder der Anpassung des Kernsystems. Wo diese Grenze verläuft, legen wir in Kapitel 8 dar.
2. Was an Dateneingabearbeit wirklich das Problem ist
Die Übertragung von Daten aus Excel oder Papier in ein Kernsystem birgt Probleme, die weit über „einfache Arbeit frisst Zeit“ hinausgehen. Drei Themen tauchen in unseren Beratungen immer wieder auf.
- Die Zeit konzentriert sich um den Abschlusstermin. Tägliche Auftragserfassung ist zumindest verteilt, aber Rechnungsverarbeitung und Anwesenheitsabrechnung zum Monatsende konzentrieren sich am Ende auf die ein bis zwei Tage direkt nach dem Abschlusstermin. In diesem Fenster können Mitarbeitende kaum etwas anderes erledigen. Die meisten Unternehmen fangen das mit ziemlicher Sicherheit über Überstunden oder zusätzliche Hilfe auf.
- Eingabefehler fließen stromabwärts. Eine falsch getippte Ziffer, eine verrutschte Zeile, ein vertauschter Produktcode. Übertragungsfehler tauchen erst auf, wenn sie sich in eine falsche Rechnung oder einen falschen Lagerbestand verwandelt haben, sodass der Aufwand für die Ursachenermittlung und Korrektur am Ende ein Vielfaches des ursprünglichen Fehlers beträgt. Eine zusätzliche Doppelprüfung reduziert Fehler, kostet aber auch zusätzliche Zeit.
- Die Arbeit wird zu etwas, das nur eine bestimmte Person kann. Wissen wie „dieser Bildschirm wirft einen Fehler, wenn man die Dinge nicht in dieser Reihenfolge eingibt“ oder „dieser eine Kunde braucht eine besondere Eingabeweise“ sammelt sich im Kopf dieser Person an, und die Arbeit steht still, wenn sie ausfällt.
Der Wert von Automatisierung beschränkt sich nicht auf Zeitersparnis. Ein Flow gibt Daten immer nur genau so ein, wie ihm gesagt wurde, sodass Übertragungsfehler verschwinden, und weil das Verfahren als Flow greifbar erhalten bleibt, mildert das auch das Problem „das kann nur eine Person“. Auch die Fähigkeit, die Spitze rund um den Abschlusstermin abzuflachen, zählt viel.
Eine Anmerkung: Stammt die Quelle von Papier oder Fax, gibt es davor einen „Lese“-Schritt, der geschehen muss — OCR für gefaxte Bestellformulare zum Beispiel ist ein eigenes Thema. Dieser Artikel geht davon aus, dass die Quelle bereits zu Daten geworden ist, etwa als Excel-Datei.
3. Optionen für die Automatisierung — UI-Automatisierung ist die letzte Option
Das Erste, was ich betonen möchte, ist, dass die Automatisierung von Bildschirmvorgängen (UI-Automatisierung) die letzte Option auf der Liste ist. UI-Automatisierung hängt von „Belangen auf Darstellungsebene“ ab — Bildschirmlayout, Auflösung, Antwortgeschwindigkeit —, sodass sie, egal wie sorgfältig Sie sie bauen, unweigerlich zerbrechlicher ist als eine Methode, die Daten direkt übergibt. Prüfen Sie zuerst, ob das Zielkernsystem eines der Folgenden bietet.
| Integrationsmethode | Was zu prüfen ist | Stabilität | Anmerkungen |
|---|---|---|---|
| CSV-/Festbreiten-Dateiimport | Ob „externer Datenimport“ oder „Massenregistrierung“ irgendwo in den Menüs versteckt ist. Handbuch oder Support des Anbieters prüfen | Hoch | Selbst alte Geschäftssysteme haben das überraschend oft. Das Erzeugen der Importdatei selbst lässt sich mit PAD oder PowerShell automatisieren |
| Direkte Datenbankeinfügung | Ob Sie den DB-Typ und die Verbindungsdaten kennen und ob direkte Schreibvorgänge laut Wartungsvertrag des Anbieters erlaubt sind | Hoch | Birgt das Risiko, Geschäftslogik (Nummernvergabe, Integritätsprüfungen) zu umgehen — lesen Sie also direkt, aber seien Sie vorsichtig beim direkten Schreiben. Muss überprüft werden |
| API / Integrations-Middleware | Ob eine neuere Paketversion eine Integrationsoption besitzt | Hoch | Gegen die Kosten der Option abwägen |
| Dateibasierte Integration (überwachter Ordner) | Ob es einen Mechanismus gibt, der in einen festgelegten Ordner abgelegte Dateien einliest | Hoch | Eine übliche Form bei Berichtssystemen und Lagersystemen |
| UI-Automatisierung (PAD) | Wenn nichts davon existiert | Mittel | Die einzige Methode, die keinen Eingriff in den Bildschirm erfordert. Das Thema dieses Artikels |
Die andere Option besteht darin, in Richtung „Beseitigung“ der Übertragung zu gehen — also das Kernsystem selbst anzupassen oder neu aufzubauen. Entscheidungen wie das Hinzufügen einer Importfunktion zu einer VB6-App oder ein vollständiger webbasierter Neubau der Auftragserfassungsfront behandeln wir in Wie lange laufen VB6-Anwendungen noch? — Support-Status der Laufzeitumgebung und ein praxisnaher Weg zur .NET-Migration und Wenn man eine Windows-App besser nicht ins Web migriert: Entscheidungstabelle und die pragmatische Lösung der Aufteilung. Da eine Anpassung Entwicklungsbudget kostet, ist es auch realistisch, zunächst mit PAD zu automatisieren, um Zeit zu gewinnen, und dann in die Anpassung zu investieren, sobald das Arbeitsvolumen wächst und Sie die Grenzen der Automatisierung erkennen.
4. Die Grundlagen von Power Automate for Desktop
Der Einstieg hat eine niedrige Hürde
PAD ist fest in Windows 11 eingebaut. Suchen Sie „Power Automate“ im Startmenü, und Sie finden die App; beim ersten Start wird sie automatisch heruntergeladen, und Sie können sofort loslegen.2 Auch Windows 10 und Windows Server 2016 besitzen Nutzungsrechte, und Sie können es kostenlos aus dem Download Center installieren.2 Es gibt zwei Installationsmethoden — eine Microsoft-Store-Version und eine MSI-Installer-Version — und wenn Sie bereits an die später besprochene Cloud-Integration (Rechnerregistrierung) denken, wählen Sie die MSI-Version, da sie es Ihnen erlaubt, die Maschinen-Runtime-App gleich mitzuinstallieren.10
Das Grundgerüst mit dem Recorder bauen
PAD verfügt über einen Recorder, der Ihre Vorgänge aufzeichnet und in eine Abfolge von Aktionen umwandelt. Er zeichnet Maus- und Tastaturvorgänge im Verhältnis zu UI-Elementen auf, was ihn für den Bau des Grundgerüsts eines Dateneingabe-Flows durchaus praxistauglich macht. Speziell für Dateneingabearbeit ist wichtig, dass Sie zwischen zwei Aufzeichnungsmethoden wählen können, UIA (UI Automation) und MSAA (Microsoft Active Accessibility). UIA ist die empfohlene Methode für relativ neuere Apps wie WPF oder WinForms, während MSAA die Methode für alte Apps ist — wie VB6 oder klassisches Win32 —, deren Elemente UIA nicht erfassen kann. Lassen sich Elemente eines alten Kernsystem-Bildschirms nicht richtig greifen, kann ein Wechsel des Aufzeichnungsmodus des Recorders zu MSAA manchmal Abhilfe schaffen.11
Der Recorder ist jedoch nur für das Grundgerüst gedacht. Er kann keine bedingten Verzweigungen oder Schleifen aufzeichnen, sodass die Annahme ist, dass Sie den Flow danach im Designer fertigstellen.11
UI-Elemente und Selektoren
PAD merkt sich Buttons und Textfelder auf dem Bildschirm als „UI-Elemente“. Was das darunter tatsächlich ist, ist ein Selektor, der das Element durch eine Kombination aus Fensterhierarchie und dessen Attributen identifiziert. Die Lebensdauer eines Dateneingabe-Flows wird fast vollständig davon bestimmt, wie gut diese Selektoren gebaut sind. Enthält ein Selektor einen fortlaufenden Index oder eine sich dynamisch ändernde ID, kann er eines Tages plötzlich aufhören, das Element zu erfassen, obwohl der Bildschirm identisch aussieht. Ändern Sie Attribute, deren Werte sich ändern, von Equals zu Contains oder einem regulären Ausdruck, richten Sie für wichtige Vorgänge Ausweich-Selektoren ein, und nutzen Sie die Funktion Repair Selector, um Reparaturkandidaten zu erzeugen, wenn einer bricht. Das ist derselbe Grundansatz, den wir im allgemeinen Leitfaden behandelt haben.7
Es gibt eine für Dateneingabearbeit spezifische Vorsichtsmaßnahme. UI-Automatisierungsaktionen arbeiten unter der Annahme, dass das Zielfenster im Vordergrund ist, und bringen es automatisch in den Vordergrund, falls das nicht der Fall ist.12 Mit anderen Worten: Der PC, auf dem der Flow läuft, ist faktisch „ausschließlich für den Flow reserviert“. Vermeiden Sie es, den Flow auf einem PC laufen zu lassen, auf dem Mitarbeitende gleichzeitig andere Arbeit erledigen, da das ein Rezept für versehentliche Klicks und Fehleingaben ist.
Die Grundform der Dateneingabe: Aus Excel lesen, in den Bildschirm schreiben
Die Grundform eines Dateneingabe-Flows lautet „mit einer Excel-Aktion lesen -> in einer Schleife Datensatz für Datensatz mit UI-Vorgängen schreiben“. Öffnen Sie die Datei mit Launch Excel, und lesen Sie einen Bereich mit Read from Excel worksheet, der zu einer Datentabellenvariable wird. Die Option „erste Zeile als Spaltennamen“ zu aktivieren, erlaubt Ihnen, Werte später in der Schleife per Spaltenname zu referenzieren, etwa CurrentItem['Kundencode'], was den Flow widerstandsfähiger gegen Spaltenumsortierungen macht.13 Nutzen Sie Write to Excel worksheet, um Ergebnisse zurückzuschreiben. Möchten Sie an das Ende der Zeilen anhängen, können Sie mit Get first free row on column eine leere Zeile finden.13
5. Was kostenlos ist und wo die Lizenzgrenze liegt
Die Frage, die bei der Entscheidung für PAD immer aufkommt, lautet: „Wie weit ist es kostenlos, und ab wann kostet es Geld?“ Die Grenze liegt zwischen „es bauen und von Hand ausführen“ und „es automatisch laufen lassen und als Organisation verwalten“.
| Was Sie tun können | Microsoft-Konto | Arbeits-/Schulkonto (keine zusätzliche Lizenz) | Power Automate Premium |
|---|---|---|---|
| Flows bauen, der Recorder, 400+ Aktionen, Fehlerbehandlung | Ja | Ja | Ja |
| Wo Flows gespeichert werden | OneDrive (persönlich) | Dataverse in der Standardumgebung | Dataverse über mehrere Umgebungen |
| Manuelle Ausführung über die PAD-Konsole (angeleitet) | Ja | Ja | Ja |
| Start aus einem Cloudflow (zeitgesteuert/ereignisausgelöst) | Nein | Nein | Ja |
| Teilen von Flows, zentrale Verwaltung von Ausführungsprotokollen | Nein | Nein | Ja |
Das Bauen von Flows und ihre manuelle Ausführung kostet mit jedem Kontotyp nichts extra.34 Mit einem Microsoft-Konto werden Flows in OneDrive gespeichert, mit einem Arbeits-/Schulkonto in Dataverse in der Standardumgebung. Wenn Sie dies in einem Unternehmen einsetzen, ist der Beginn mit einem Arbeitskonto die Standardwahl, mit Blick auf spätere Verwaltung.4
Sie überschreiten die Grenze in dem Moment, in dem Sie möchten, dass der Flow läuft, ohne dass jemand einen Button drückt. Einen Desktopflow zu einer festen Zeit oder bei einem Ereignis zu starten, erfordert eine Konfiguration, bei der er aus einem Cloudflow aufgerufen wird, und das erfordert folgende Vorbereitung.14
- Rechnerregistrierung: Registrieren Sie den PC, der den Flow ausführen soll, bei der Power-Automate-Cloud. Die Anmeldung mit der in der MSI-Version enthaltenen Maschinen-Runtime-App registriert ihn. Beachten Sie, dass die Home-Editionen von Windows 10/11 diese direkte Verbindung nicht unterstützen.10
- Desktopflow-Verbindung: Erstellen Sie eine Verbindung (Windows-Kontozugangsdaten), mit der sich der Cloudflow bei diesem Rechner anmelden kann.14
- Lizenz: Der Benutzer, der die Verbindung erstellt, muss eine dem Ausführungsmodus entsprechende Lizenz besitzen.14 Die Ausführung auf einem PC, bei dem eine Person angemeldet ist — angeleitete Ausführung — erfordert Power Automate Premium (eine Benutzerlizenz, die angeleitete RPA-Rechte umfasst).106
- Unbeaufsichtigte Ausführung erfordert zusätzlich das Zuweisen einer Power Automate Process-Lizenz an den Rechner. Eine Process-Lizenz ist an den Rechner (oder den Flow) gebunden, nicht an einen Benutzer, und verschafft Ihnen einen Slot für unbeaufsichtigte Ausführung (einen unbeaufsichtigten Bot) pro Rechner. Zu beachten ist: Der Rechner, dem Sie eine Process-Lizenz zuweisen, muss bereits von einem Benutzer mit Premium-Lizenz registriert worden sein. Mit anderen Worten: Nur eine Process-Lizenz zu kaufen, lässt sich nicht konfigurieren, wenn kein Premium-Benutzer vorhanden ist.56
Zusammengefasst: Ein Ablauf, bei dem „die zuständige Person morgens den Button drückt und zusieht, wie die Dateneingabe vor ihr läuft“, kommt vollständig mit der kostenlosen Stufe aus. Ein Ablauf, bei dem „es mitten in der Nacht einfach von selbst fertig ist“, erfordert Premium plus Process (plus einen registrierten Rechner). Dauert die Dateneingabearbeit etwa 30 Minuten am Tag, reicht es völlig, mit kostenloser angeleiteter Ausführung zu beginnen und erst dann über unbeaufsichtigte Ausführung nachzudenken, wenn das Volumen wächst. Das vollständige Bild der Power-Automate-Lizenzierung — einschließlich der Grenze zwischen Standard- und Premium-Connectors — ist ein Thema, das eine eigene Behandlung wert ist.
6. Design für stabilen Betrieb
Auf das Element warten, nicht auf eine feste Verzögerung
Alte Kernsysteme haben Such- und Registrierungsantwortzeiten, die je nach Last stark schwanken. Ein mit einem festen Wait wie „3 Sekunden warten“ abgestimmter Flow bricht garantiert an einem Tag, an dem das System langsam ist. Der grundlegende Ansatz besteht darin, mit der Aktion Wait for window content zu „warten, bis ein bestimmtes UI-Element oder ein Text erscheint (oder verschwindet)“.8 Auch das Abrufen eines Fensters (Get window) erlaubt es Ihnen, ein Timeout festzulegen, sodass Sie zwischen „nach N Sekunden fehlschlagen, wenn nicht gefunden“ oder „warten, bis es erscheint“ wählen können.8 Zu warten, bis die Registrierung-abgeschlossen-Meldung erscheint, bevor Sie zur nächsten Zeile übergehen, ist in einem Dateneingabe-Flow besonders wichtig. Beginnen Sie ohne zu warten mit der nächsten Eingabe, wechselt der Bildschirm um, bevor die Registrierung der vorherigen Zeile abgeschlossen ist, und die Daten geraten durcheinander.
Fehlerbehandlung pro Datensatz aufbauen
Die Standardpraxis für die Fehlerbehandlung eines Dateneingabe-Flows besteht darin, einen Datensatz innerhalb der Schleife in einen On-Block-Error-Block zu wickeln, statt den gesamten Flow. Tritt ein Fehler auf, protokollieren Sie, was bei dieser Zeile fehlgeschlagen ist, setzen den Bildschirm auf seinen Ausgangszustand zurück (Eingabebildschirm schließen und zurück zum Menü usw.) und fahren mit der nächsten Zeile fort. So beenden, selbst wenn 1 von 100 Datensätzen einen falschen Produktcode hat, die anderen 99 die Eingabe, und nur der eine fehlgeschlagene bleibt für eine Person übrig. Sie können dies auch mit pro-Aktion-Wiederholungseinstellungen für vorübergehende Fehler wie langsame Antworten kombinieren.9 Für die feineren Details der Fehlerbehandlung — das Abrufen des Fehlers mit Get last error, das Design des Aufräumschritts und so weiter — siehe den allgemeinen Leitfaden und Fehlerbehandlung und Wiederholungsdesign in Power Automate.
Auch bei einem Fehlschlag erkennbar machen, „wie weit es gekommen ist“
UI-Automatisierung kennt keine Transaktionen wie ein Websystem. Stirbt ein Flow mittendrin, und Sie können nicht feststellen, „welche Zeilen bereits im Kernsystem registriert sind“, bleiben Ihnen zwei Optionen: erneut ausführen und doppelte Einträge verursachen, oder jeden einzelnen Datensatz manuell abgleichen. Es gibt zwei Designs, die das verhindern.
- Geben Sie der Quell-Excel-Datei eine Statusspalte. Bereiten Sie eine Statusspalte mit Werten wie „nicht verarbeitet“, „in Bearbeitung“, „abgeschlossen“ und „Fehler“ vor, plus eine Spalte für die vom Kernsystem vergebene Registriernummer. Setzen Sie eine Zeile vor Beginn der Eingabe auf „in Bearbeitung“, bestätigen Sie den Abschluss der Registrierung auf dem Bildschirm, lesen Sie die Registriernummer, und schreiben Sie dann „abgeschlossen“ plus die Registriernummer zurück. Da der Flow immer nur Zeilen anspricht, die noch als „nicht verarbeitet“ markiert sind, berührt er egal wie oft er erneut läuft nie bereits eingegebene Zeilen (sicher für erneute Ausführung).
- Nur Zeilen, die bei „in Bearbeitung“ hängen bleiben, müssen von einem Menschen geprüft werden. Stirbt ein Flow, stirbt er mitten in der Eingabe, sodass nur die auf „in Bearbeitung“ stehenden Zeilen verdächtig sind. Sie müssen nur diese eine Zeile im Kernsystem prüfen, bevor Sie erneut ausführen, was den Abgleichbereich von 100 Datensätzen auf einen reduziert.
Diese Statusspalte dient zugleich als Ausführungsprotokoll. Ob „die gesamte gestrige Übertragung abgeschlossen ist“, lässt sich beantworten, indem man Excel öffnet, ohne überhaupt in den Ausführungsverlauf des Flows zu schauen — eine Form, die sich vor Ort leicht erklären lässt.
Fallstricke der unbeaufsichtigten Umgebung
Wir erhalten wirklich viele Beratungsanfragen zu Flows, die unter angeleiteter Ausführung einwandfrei liefen, aber in dem Moment aufhörten zu funktionieren, in dem sie unbeaufsichtigt liefen. Die Ursache liegt fast immer in einem Unterschied der Umgebung.
- Sitzungsvoraussetzungen: Für unbeaufsichtigte Ausführung erstellt Power Automate eine neue Remotedesktop-Sitzung (RDP) auf dem Zielrechner und meldet sich nach Abschluss der Ausführung ab. Während sie läuft, bleibt der Bildschirm des Zielrechners gesperrt. Als Voraussetzung muss jeder Benutzer auf dem Rechner bereits abgemeldet sein — unter Windows 10/11 schlägt die Ausführung fehl, wenn die Sitzung einer Person bestehen bleibt (selbst gesperrt). Unter Windows Server tritt ein Fehler auf, wenn eine gesperrte Sitzung desselben Benutzers wie die Verbindung bestehen bleibt. Ist Ihre Gewohnheit nach Wartungsarbeiten, sich mit „Sperren“ oder „Trennen“ statt mit Abmelden zu entfernen, wird der nächtliche Flow stoppen. Immer abmelden ist das Losungswort.5
- Berechtigungen: Der für die Verbindung verwendete Benutzer muss auf diesem Rechner eine RDP-Sitzung erstellen können (üblicherweise durch Zugehörigkeit zur Gruppe Remote Desktop Users). Zudem unterstützt unbeaufsichtigte Ausführung keine Vorgänge, die eine Erhöhung auf Administratorrechte beinhalten.5
- Bildschirmauflösung: Die Standardauflösung einer RDP-Sitzung kann sich vom Bildschirm unterscheiden, auf dem der Flow gebaut wurde. Ist die Auflösung niedriger, landen UI-Elemente, die beim Bau des Flows sichtbar waren, außerhalb des Bildschirms und verursachen „Element nicht gefunden“-Fehlschläge, oder ein koordinatenbasierter Vorgang klickt am Ende woanders hin.5 Als Gegenmaßnahme können Sie die „Bildschirmauflösung für unbeaufsichtigte Läufe“ in den Eigenschaften des Flows auf denselben Wert fixieren, der beim Bau verwendet wurde.15 Unterschiede bei der DPI-Skalierung verursachen dieselbe Art von Fehlschlag, daher ist es am sichersten, sie sowohl beim Bau als auch bei der Ausführung bei 100 % zu belassen.16
Sobald Sie all das überprüft haben, richten Sie den Zeitplan-Trigger (z. B. jeden Wochentagmorgen um 6 Uhr) auf der Cloudflow-Seite ein. Ein Zeitplandesign mit Prüfung von Werktagen und Monatsabschlussverarbeitung behandeln wir in Zeitplangesteuerte Flows und Werktagslogik in Power Automate gestalten.
7. Ein Beispieldesign für einen Dateneingabe-Flow
Kombiniert man die bisher behandelten Bausteine, sieht ein typischer Dateneingabe-Flow so aus, gestaltet als „Bestelllisten-Excel-Datei -> das Auftragserfassungsbildschirm des Kernsystems -> das Ergebnis zurück nach Excel schreiben“.
flowchart TD
Start([Start: manuell oder aus einem Cloudflow ausgelöst]) --> ReadX[Read from Excel worksheet<br/>Bestellliste lesen, erste Zeile als Spaltennamen]
ReadX --> Filter{Gibt es Zeilen mit Status nicht verarbeitet?}
Filter -- Nein --> Report[Ergebnisse zusammenfassen und protokollieren/benachrichtigen] --> End([Ende])
Filter -- Ja --> Launch[Kernsystem starten und anmelden<br/>Erscheinen des Menübildschirms per Elementwarten bestätigen]
Launch --> Loop[Unverarbeitete Zeilen einzeln durchlaufen<br/>Schleifenkörper in On Block Error einwickeln]
Loop --> Mark[Statusspalte auf in Bearbeitung setzen]
Mark --> Entry[Auftragserfassungsbildschirm öffnen und Felder eintragen<br/>bei jedem Bildschirmwechsel Wait for window content]
Entry --> Confirm[Registrieren-Button -> auf Abschlussmeldung warten<br/>vergebene Registriernummer vom Bildschirm lesen]
Confirm --> WriteBack[Statusspalte auf abgeschlossen setzen und Registriernummer zurückschreiben]
WriteBack --> Loop
Loop -. Bei einem Datensatz tritt ein Fehler auf .-> Handler[Fehlerdetails in dieser Zeile erfassen<br/>Fehlschläge vor der Registrierung werden Fehler / Fehlschläge danach bleiben in Bearbeitung<br/>Bildschirm zum Menü zurückführen und zur nächsten Zeile]
Handler --> Loop
Loop -- Alle Datensätze verarbeitet --> Close[Aus dem Kernsystem abmelden und schließen] --> Report
Ein paar Anmerkungen zum Design.
- Validieren Sie Eingabewerte vor jedem UI-Vorgang. Stellenanzahl des Produktcodes, ob ein numerisches Feld Text enthält, fehlende Pflichtfelder — validieren Sie diese auf der Flow-Seite direkt nach dem Lesen von Excel, und markieren Sie jede fragwürdige Zeile als „Fehler“, bevor sie überhaupt das Kernsystem berührt. Schlechte Daten im Voraus abzulehnen, ist um ein Vielfaches stabiler, als zu versuchen, die Fehlerdialoge des Kernsystems über UI-Vorgänge zu behandeln.
- Nur ein Fehlschlag, der vor dem Drücken des Registrieren-Buttons passiert, darf als „Fehler“ markiert werden. Schreibt Ihre Fehlerbehandlung die Statusspalte einheitlich auf „Fehler“ um, markieren Sie auch eine Zeile als „Fehler“, die fehlgeschlagen ist, nachdem der Registrieren-Button-Vorgang bereits erfolgreich war (etwa während des Wartens auf die Abschlussmeldung oder während des Zurückschreibens), was einen Vorfall vorbereitet, bei dem Mitarbeitende diese Zeile erneut ausführen und sie im Kernsystem doppelt registriert wird. Belassen Sie bei Fehlschlägen nach dem Registrierungsvorgang die Statusspalte bei „in Bearbeitung“; zielen Sie nie auf bei „in Bearbeitung“ verbliebene Zeilen für eine erneute Ausführung ab, sondern lassen Sie eine Person mit dem Kernsystem abgleichen, ob tatsächlich registriert wurde, bevor sie manuell auf „abgeschlossen“ oder „nicht verarbeitet“ zurückgesetzt wird. Der Punkt dieses Designs ist nicht, Mehrdeutigkeit zu beseitigen — er ist, die mehrdeutigen Fälle bewusst zur menschlichen Bestätigung zu leiten, statt zu raten.
- Rechnen Sie mit Fehlerdialogen auf dem Bildschirm. Eingabefehler (unzureichender Bestand, ein Kreditprüfungsfehler eines Kunden usw.) passieren trotzdem. Fangen Sie jeden vorhersehbaren Dialog mit einer „existiert das Fenster“-Bedingungsverzweigung ab, protokollieren Sie ihn als Fehlerdetail dieser Zeile, und überlassen Sie alles Unvorhergesehene On Block Error.9
- Behalten Sie ein grobes Gefühl für Volumen und Zeit. Es ist nicht ungewöhnlich, dass UI-Automatisierung Dutzende Sekunden pro Datensatz benötigt. Dauern 100 Datensätze eine Stunde, passt das bequem in einen nächtlichen unbeaufsichtigten Lauf, aber gibt es täglich mehrere Tausend Datensätze, ist das ein Zeichen, UI-Automatisierung als Methode überhaupt zu überdenken (nächstes Kapitel).
- Schließen Sie die Normalisierung der Quelldaten vorgelagert ab. Fallstricke, die von CSV/Excel kommen — Zeichenkodierungsunterschiede, uneinheitliche Datumsformate, eine Mischung aus Voll- und Halbbreitenzeichen — werden in CSV ist nicht „nur Text“ — CSV in der Praxis für C#-Business-Anwendungen (Zeichenkodierung, Excel-Kompatibilität, Schutz vor Injection) behandelt.
8. Wie weit sollten Sie mit PAD gehen?
UI-Automatisierung bricht irgendwann, wann immer sich der Bildschirm ändert. Das lässt sich nicht durch Design beheben — es ist das Schicksal der Methode selbst. Genau deshalb brauchen Sie eine klare Grenze zwischen „Dateneingabe, die man mit PAD automatisieren darf“ und „Dateneingabe, die zu Entwicklung oder Anpassung übergehen sollte“.
| Situation | Beurteilung |
|---|---|
| Zehn bis Hunderte Datensätze am Tag, ein erneuter Lauf am nächsten Werktag ist auch bei Fehlschlag in Ordnung | PAD reicht aus. Mit angeleiteter Ausführung beginnen |
| Der Bildschirm der Zielanwendung hat sich seit Jahren nicht verändert (eine „eingefrorene“ Altanwendung) | Gut geeignet für PAD. Ironischerweise passt ein „Bildschirm, der sich nie ändert“ gut zu UI-Automatisierung |
| Die Zielanwendung wird häufig aktualisiert (ein SaaS-Web-Bildschirm usw.) | Unter der Annahme laufender Selektor-Wartung entscheiden. Bricht es bei jedem Update, ist UI-Automatisierung ungeeignet |
| Mehrere Tausend oder mehr Datensätze täglich, die Laufzeit frisst Arbeitszeit | Die Verarbeitungsgeschwindigkeit von UI-Automatisierung stößt an eine Grenze. Domäne für das Hinzufügen einer CSV-Importfunktion oder die Entwicklung von Datenintegration (Auftragsentwicklung) |
| Kernbetrieb, bei dem ein Stillstand den Versand/die Rechnungsstellung des Tages lahmlegt | Ist „bei einem Fehlschlag auf manuelle Eingabe zurückfallen, bis es behoben ist“ nicht akzeptabel, ist UI-Automatisierung ungeeignet. Anpassung des Kernsystems oder Entwicklung systemübergreifender Integration in Betracht ziehen |
| Wunsch, den Flow während der Eingabe auch komplexe Geschäftsentscheidungen treffen zu lassen (Bestandszuteilung, Preisbildung) | Geschäftslogik in einen Flow zu vergraben, ist nicht wartbar. Das ist Territorium, in dem die Logik auf der Systemseite gehört |
Als Faustregel für die Beurteilung nutze ich: „Würde das Geschäft, falls dieser Flow eine Woche lang defekt bliebe, durch einen Rückfall auf manuelle Eingabe weiterlaufen?“ Wenn ja, hat PAD-Automatisierung reichlich Wert. Wenn nicht, ist diese Übertragungsarbeit keine „Automatisierungs“-Anforderung mehr — sie ist eine „Systemintegrations“-Anforderung, und es ist Zeit, das Hinzufügen einer Importfunktion, Datenbankintegration oder sogar die Digitalisierung der Auftragsverarbeitung selbst in Betracht zu ziehen (siehe Was ist EDI? Wie es die Bestellabwicklung zwischen Unternehmen erleichtert — von Fax, E-Mail und manueller Eingabe zur Datenintegration oder FAX-Bestellungen ins Web verlagern — die Doppelbetriebsphase gestalten und schrittweise migrieren).
Eine weitere Sache: PAD-Flows selbst neigen ebenfalls dazu, zu „Ressourcen zu werden, die nur die Person anfassen kann, die sie gebaut hat“. Wer den Inhalt des Flows, seine Verbindungen und den Rechner, auf dem er läuft, übernimmt, ist eine Governance-Frage, die es wert ist, von Anfang an bewusst gestaltet zu werden, statt als nachträglicher Gedanke.
9. Zusammenfassung
Übertragung in ein Kernsystem ohne API und ohne CSV-Import lässt sich „ohne das System selbst anzufassen“ mit PADs UI-Automatisierung automatisieren. Unter Windows 11 können Sie sofort loslegen, und der Bau und die eigenständige Ausführung kosten nichts extra. Allein Mitarbeitende von einer Stunde täglicher Dateneingabe zu befreien und die Untersuchung und Korrektur von Übertragungsfehlern zu beseitigen, ist mehr als genug, um den Aufwand der Einführung zurückzuzahlen.
Wichtig ist jedoch, Reihenfolge und Design richtig hinzubekommen. Suchen Sie nach einem CSV-Import, einer Datenbank, einer API oder Dateiintegration, bevor Sie zu UI-Automatisierung greifen. Beginnen Sie mit kostenloser angeleiteter Ausführung, und verstehen Sie die Voraussetzungen für unbeaufsichtigte Ausführung: Premium- plus Process-Lizenzen und ein abgemeldeter Rechner. Stabilisieren Sie mit Selektoren, dem Warten auf Elemente und Fehlerbehandlung pro Datensatz, und bewahren Sie durch das Zurückschreiben der Statusspalte immer „wie weit es gekommen ist“ auf. Und sobald Volumen, Kritikalität oder die Häufigkeit von Bildschirmänderungen überschreiten, was UI-Automatisierung bewältigen kann, zwingen Sie sie nicht zum Weiterwachsen — wechseln Sie stattdessen zur Anpassung des Kernsystems oder zur Entwicklung von Datenintegration.
Wir übernehmen Beratungen über das gesamte Kontinuum, von Design-Reviews PAD-basierter Dateneingabeautomatisierung bis hin zur Auftragsentwicklung von Importfunktionen und systemübergreifender Integration sowie der Migration von Altanwendungen. Melden Sie sich gerne auch schon in der Phase „Funktioniert das überhaupt mit unserem Kernsystem?“.
Verwandte Artikel
- Geschäftsprozesse mit Power Automate automatisieren — Cloudflows, Desktopflows und robuste Fehlerbehandlung
- Wie lange laufen VB6-Anwendungen noch? — Support-Status der Laufzeitumgebung und ein praxisnaher Weg zur .NET-Migration
- Wenn man eine Windows-App besser nicht ins Web migriert: Entscheidungstabelle und die pragmatische Lösung der Aufteilung
- Fehlerbehandlung und Wiederholungsdesign in Power Automate
- CSV ist nicht „nur Text“ — CSV in der Praxis für C#-Business-Anwendungen (Zeichenkodierung, Excel-Kompatibilität, Schutz vor Injection)
Verwandte Beratungsbereiche
Die Komura Software LLC behandelt alles von der Beratung zu Design und Stabilisierung von Dateneingabeautomatisierung mit Power Automate for desktop bis hin zu Datenintegrationsentwicklung und Anpassung von Altanwendungen für Kernsysteme, die über das hinausgehen, was UI-Automatisierung bewältigen kann.
Referenzlinks
-
Microsoft Learn, Get started with Power Automate in Windows 11. Zur auf Windows 11 vorinstallierten Power-Automate-App und dazu, dass sich Flows dank über 400 Aktionen und dem Recorder ohne jede Programmiererfahrung bauen lassen. ↩
-
Microsoft Learn, Power Automate licensing FAQ. Dazu, dass Windows-11-Benutzer angeleitete-RPA-Desktopflows in der Standardumgebung ohne zusätzliche Kosten nutzen können (Teilen oder Bauen in anderen Umgebungen ist nicht eingeschlossen), dazu, dass die Suche nach Power Automate in der Windows-Suchleiste beim ersten Start einen automatischen Download auslöst, sowie dazu, dass Windows 10 und Windows Server 2016 ebenfalls Nutzungsrechte besitzen und aus dem Download Center erhältlich sind. ↩ ↩2 ↩3
-
Microsoft Learn, Get started with a work or school account. Dazu, dass die Nutzung von Power Automate for desktop mit einem Arbeits-/Schulkonto nichts extra kostet, dass die Standardumgebung eine Dataverse-Datenbank benötigt, sowie dazu, dass das Freischalten von RPA-Funktionen wie automatischer Ausführung und Flow-Teilen ein Upgrade auf Premium erfordert. ↩ ↩2
-
Microsoft Learn, Prerequisites and limitations. Ein Funktionsvergleich nach Anmeldekontotyp (Microsoft-Konto / Arbeits-Schul-Konto / organisatorisches Premium-Konto). Dazu, dass Recorder, Aktionen und Fehlerbehandlung für alle Kontotypen verfügbar sind, während die Verbindung zu Cloudflows (Start/Zeitplanung), Teilen und zentrale Verwaltung/Berichterstattung nur Premium vorbehalten sind, sowie dazu, dass Flows entweder in OneDrive oder Dataverse gespeichert werden. ↩ ↩2 ↩3
-
Microsoft Learn, Run unattended desktop flows. Dazu, dass unbeaufsichtigte Ausführung den Power Automate Process-Plan erfordert, dass Power Automate eine RDP-Sitzung erstellt und sich nach der Ausführung abmeldet, dass der Bildschirm während der Ausführung gesperrt ist, dass alle Benutzer abgemeldet sein müssen (wobei die Ausführung unter Windows 10/11 fehlschlägt, wenn eine Sitzung bestehen bleibt, einschließlich einer gesperrten), dass der verbindende Benutzer RDP-Sitzungserstellungsrechte benötigt (die Gruppe Remote Desktop Users), dass die Ausführung keine Administratorerhöhung unterstützt, sowie dazu, dass sich die Standardauflösung der RDP-Sitzung von der beim Bau des Flows verwendeten unterscheiden kann, was zu „Element nicht gefunden“-Fehlschlägen führen kann. ↩ ↩2 ↩3 ↩4 ↩5
-
Microsoft Learn, Types of Power Automate licenses. Dazu, dass angeleitete RPA-Rechte (Rechnerregistrierung, Auslösen angeleiteter Ausführung usw.) in der Premium-Benutzerlizenz enthalten sind, dass unbeaufsichtigte RPA eine dem Rechner zugewiesene Process-Lizenz erfordert (ein unbeaufsichtigter Bot pro Rechner), sowie dazu, dass die Zuweisung einer Process-Lizenz an einen Rechner voraussetzt, dass dieser bereits von einem Premium-Benutzer registriert wurde. ↩ ↩2 ↩3
-
Microsoft Learn, Build a custom selector. Zum Bau dynamischer, schwerer brechender Selektoren durch Ändern von Attributen, deren Werte sich ändern, von Equals zu Contains oder einem regulären Ausdruck, zum Fallback über mehrere Selektoren, sowie zum Erzeugen von Reparaturkandidaten mit Repair selector. ↩ ↩2
-
Microsoft Learn, UI automation actions. Zur Aktion Wait for window content, die auf das Erscheinen/Verschwinden eines bestimmten Texts oder UI-Elements wartet, sowie zur Timeout-Einstellung der Aktion Get window (Wahl zwischen Fehlschlag, wenn innerhalb einer bestimmten Zeit nicht gefunden, oder unbegrenztem Warten). ↩ ↩2 ↩3
-
Microsoft Learn, Handle errors in desktop flows. Zur Fehlerbehandlung pro Block mit On Block Error und zu pro-Aktion-Wiederholungseinstellungen (Retry action if an error occurs). ↩ ↩2 ↩3
-
Microsoft Learn, Manage machines. Zur Rechnerregistrierung über die Maschinen-Runtime-App (im MSI-Installer enthalten), dazu, dass Windows 10 Home und Windows 11 Home keine direkte Verbindung unterstützen, dazu, dass der Start eines Desktopflows aus einem Cloudflow einen Premium-Benutzerplan mit angeleiteter RPA erfordert, sowie dazu, dass unbeaufsichtigte Ausführung die Zuweisung von Prozesskapazität (ein unbeaufsichtigter Bot) an den Rechner erfordert. ↩ ↩2 ↩3
-
Microsoft Learn, Record desktop flows. Dazu, dass der Recorder Maus- und Tastaturvorgänge durch Aufzeichnung ihrer Beziehung zu UI-Elementen in Aktionen umwandelt, dazu, dass Sie zwischen UIA (empfohlen für neuere Frameworks wie WPF und WinForms) oder MSAA (für Altanwendungen wie VB6 und klassisches Win32, die UIA nicht unterstützt) als Aufzeichnungsmethode wählen können, sowie dazu, dass bedingte Verzweigungen und Schleifen nicht aufzeichenbar sind und eine Bearbeitung nach der Aufzeichnung erfordern. ↩ ↩2
-
Microsoft Learn, Automate desktop applications. Dazu, dass UI-Automatisierungsaktionen verlangen, dass das Zielfenster im Vordergrund ist, und es automatisch in den Vordergrund bringen, falls es das nicht ist. ↩
-
Microsoft Learn, Excel actions. Zum Erstellen einer Instanz mit Launch Excel, zum Lesen einer einzelnen Zelle oder eines Bereichs (Umwandlung in eine Datentabelle, mit einer Option, die erste Zeile als Spaltennamen zu behandeln) mit Read from Excel worksheet, zum Schreiben mit Write to Excel worksheet, sowie zum Auffinden einer leeren Zeile mit Get first free row on column. ↩ ↩2
-
Microsoft Learn, Trigger desktop flows from cloud flows. Zu den Voraussetzungen für den Start eines Desktopflows aus einem Cloudflow (ein registrierter Rechner oder eine Rechnergruppe, ein Arbeits-/Schulkonto, eine Desktopflow-Verbindung und dass der Ersteller der Verbindung eine dem Ausführungsmodus entsprechende Lizenz besitzt) sowie zur Datenübergabe zwischen Cloud- und Desktopseite über Ein-/Ausgabevariablen. ↩ ↩2 ↩3
-
Microsoft Learn, Set screen resolution on unattended mode. Dazu, dass sich die Auflösung für unbeaufsichtigte Läufe fixieren lässt — über die Eigenschaften des Flows (Display resolution for unattended runs) oder die Registrierung —, wenn die unbeaufsichtigte Auflösung niedriger ist als die beim Bau verwendete und Elemente dadurch verborgen werden, was zu Fehlschlägen führt. ↩
-
Microsoft Learn, Troubleshoot unattended desktop flow execution failures. Dazu, dass Unterschiede bei Auflösung oder DPI-Skalierung zwischen angeleiteten und unbeaufsichtigten Sitzungen Fehlschläge verursachen, sowie zu Gegenmaßnahmen wie dem Beibehalten von 100 % DPI sowohl beim Entwerfen als auch beim Ausführen. ↩
Verwandte Artikel
Aktuelle Artikel mit denselben Schlagwörtern führen zu verwandten Themen weiter.
Power-Automate-Lizenzierung ── Wie weit Microsoft 365 kostenlos trägt und wann Premium nötig wird
Innerhalb von Microsoft 365 lassen sich Cloud-Flows auf Standard-Connectoren ohne Zusatzkosten erstellen und ausführen, doch Premium-Conn...
Eine Excel-Tabelle durch eine SharePoint-Liste ersetzen ── Mit Freigabe, Verlauf und Flow-Integration Schluss mit der kaputten Tabelle
Ein praxisnaher Leitfaden zur Migration einer Excel-Verwaltungstabelle aus einem Netzwerkordner in eine SharePoint-Liste (Microsoft Lists...
Excel-VBA-Makros zu Power Automate migrieren — Was Sie durch Office-Skripte ersetzen können, und was als VBA bleiben sollte
Ein Leitfaden dazu, ob Excel-VBA-Makros zu Power Automate migrieren können: Was Office-Skripte ersetzen können, was nur VBA weiterhin lei...
Power Automate versus PowerShell + Aufgabenplanung — Jedes Automatisierungswerkzeug dort einsetzen, wo es passt, statt sie zu vermischen
Für IT-Mitarbeiter in kleinen und mittleren Unternehmen, bei denen nächtliche PowerShell-+-Aufgabenplanung-Batches und Power-Automate-Flo...
Personenabhängigkeit bei Power Automate vermeiden — Flows am Laufen halten, nachdem ihr Ersteller das Unternehmen verlässt
Ein Überblick, wie sich dem Risiko begegnen lässt, dass Power-Automate-Flows stehen bleiben, wenn ihr Ersteller kündigt oder wechselt: wa...
Verwandte Themen
Diese Seiten ordnen den Artikel in einen größeren Leistungs- und Entscheidungskontext ein.
Technische Windows-Themen
Portal zu Windows-Entwicklung, Fehleranalyse und der Nutzung bestehender Assets.
Leistungen zu diesem Thema
Dieser Artikel ist direkt mit den folgenden Leistungen verbunden.
Nutzung und Migration bestehender Assets
Wiederverwendung und Migration von COM / ActiveX / OCX sowie 32-/64-Bit-Abhängigkeiten.
Häufige Fragen
Fragen, die in Beratungen zu diesem Artikelthema häufig gestellt werden.
- Ist Power Automate for desktop kostenlos nutzbar?
- Ja. Die Power-Automate-App ist fest in Windows 11 eingebaut und lässt sich unter Windows 10 auch kostenlos aus Microsofts Download Center installieren. Arbeits-/Schulkonten erhalten den gesamten Umfang an Funktionen für den Flow-Bau und die manuelle (angeleitete) Ausführung — den Recorder, über 400 Aktionen, Fehlerbehandlung — ohne Zusatzkosten. Der automatische Start aus einem Cloudflow, das Teilen von Flows und die zentrale Verwaltung von Ausführungsprotokollen erfordern jedoch alle eine kostenpflichtige Power Automate Premium-Lizenz.
- Was benötige ich, um einen Dateneingabe-Flow nachts oder früh morgens ohne anwesende Person auszuführen?
- Unbeaufsichtigte Ausführung erfordert einen Aufbau, bei dem ein Cloudflow sie aufruft, was wiederum die Registrierung des Zielrechners, das Erstellen einer Desktopflow-Verbindung und das Zuweisen einer Power Automate Process-Lizenz an den Rechner voraussetzt. Auch die Registrierung des Rechners selbst muss von einer Person mit Premium-Lizenz durchgeführt werden. Technisch läuft die unbeaufsichtigte Ausführung, indem eine neue Remotedesktop-Sitzung erstellt wird, sodass jeder Benutzer auf dem Zielrechner bereits abgemeldet sein muss — bleibt auch nur eine gesperrte Sitzung bestehen, schlägt die Ausführung unter Windows 10/11 fehl.
- Ich habe gehört, UI-Automatisierung sei zerbrechlich. Ist sie tatsächlich praxistauglich?
- Sie ist praxistauglich, solange die Bildschirme des Zielkernsystems stabil sind. Das meiste, was bricht, hängt davon ab, wie UI-Elemente identifiziert werden (Selektoren) und von unzureichendem Warten, sodass sich die Stabilität mit Designs wie dem Ändern veränderlicher Attribute von Equals zu Contains oder regulären Ausdrücken, dem Einrichten von Ausweich-Selektoren und dem Warten auf das Erscheinen eines Elements statt einer festen Verzögerung erheblich verbessert. Trotzdem verschwindet das Schicksal, irgendwann bei einer Layoutänderung zu brechen, nie vollständig; aktualisiert sich die Zielanwendung häufig, oder bedeutet der Umfang oder die Bedeutung der Arbeit, dass Ausfallzeit inakzeptabel ist, sollten Sie Datenintegrationsentwicklung oder die Anpassung des Kernsystems selbst statt UI-Automatisierung in Betracht ziehen.
- Wenn ein Dateneingabe-Flow mittendrin fehlschlägt, verlieren wir dann nicht den Überblick, wie weit er gekommen ist?
- Das lässt sich mit dem richtigen Design verhindern. Der Schlüssel ist, der Quell-Excel-Datei eine Statusspalte (nicht verarbeitet / in Bearbeitung / abgeschlossen / Fehler) sowie eine Spalte für die Registriernummer zu geben und nach jedem Datensatz das Registrierungsergebnis des Kernsystems zu prüfen und den Status zurückzuschreiben. So behält die Excel-Datei selbst genau fest, welche Zeilen bereits registriert sind, und ein erneuter Lauf des Flows zielt nur auf Zeilen ab, die noch als „nicht verarbeitet“ markiert sind, sodass doppelte Einträge nie passieren. Die Fehlerbehandlung pro Datensatz — die fehlgeschlagene Zeile protokollieren und zur nächsten übergehen — sorgt außerdem dafür, dass ein einzelner Eingabefehler nicht den gesamten Lauf stoppt.
Autorenprofil
Profilseite des Artikelautors.
Go Komura
Geschäftsführer von KomuraSoft LLC
Spezialisiert auf Windows-Softwareentwicklung, technische Beratung und Fehleranalyse, insbesondere bei bestehenden Systemen und schwer reproduzierbaren Störungen.