Datensätze geändert
Starten Sie eine Automation, wenn in einer CSV-, Excel- oder XML-Datei Zeilen hinzukommen, sich ändern oder entfallen.
Funktionsweise
Der Trigger beobachtet eine Datei und vergleicht ihre Zeilen mit dem zuletzt bekannten Stand. Hat sich etwas geändert, startet er den Workflow mit den Änderungen: welche Zeilen neu sind, welche sich geändert haben (mit den vorherigen Werten) und welche entfernt wurden.
Es gibt zwei Varianten – wählen Sie die, die zum Ablageort der Datei passt:
| Trigger | Die Datei liegt … |
|---|---|
| Datensätze geändert (Server-Ordner) | auf dem Server des AI Kit oder einem eingehängten Netzlaufwerk. Änderungen werden sofort bemerkt. |
| Datensätze geändert (WebDAV) | auf Nextcloud, ownCloud, einem NAS oder einem anderen WebDAV-Server. Die Datei wird in einem festen Intervall geprüft und nur heruntergeladen, wenn sie sich geändert hat. |
Das Format (CSV, Excel .xlsx/.xls/.ods, XML) wird an der Datei selbst erkannt – Sie müssen nichts auswählen. Trennzeichen in CSV-Dateien (;, ,, Tabulator, |) und Zeichenkodierungen (UTF-8, Windows-1252 wie in typischen deutschen Exporten) werden automatisch erkannt.
Typische Quellen sind Exporte aus einem ERP- oder Warenwirtschaftssystem, die regelmäßig neu geschrieben werden, oder eine von Hand gepflegte Excel-Liste.
- Beim ersten Start merkt sich der Trigger nur den aktuellen Stand; es läuft nichts. (Auf Wunsch können vorhandene Zeilen als neu gelten.)
- Der Stand übersteht Neustarts: Änderungen, die vorgenommen wurden, während der Dienst gestoppt war, werden beim nächsten Start gemeldet.
- Eine Datei, die noch geschrieben wird, fehlt oder sich nicht lesen lässt, ändert den Stand nicht – sie wird bei der nächsten Prüfung einfach erneut gelesen. Eine vorübergehend fehlende Datei wird nicht als „alle Zeilen entfernt“ gemeldet.
Einstellungen
| Feld | Was es steuert | Erforderlich | Hinweise |
|---|---|---|---|
| WebDAV-Adresse / Benutzer / Passwort | Zugang zum WebDAV-Server. | nur WebDAV | Wie bei Datei ablegen; das Passwort wird verschlüsselt gespeichert. |
| Datei | Die zu beobachtende Datei. | erforderlich | Server-Ordner: absoluter Pfad, z. B. /data/exports/orders.csv. WebDAV: Pfad unterhalb der Adresse, z. B. Exports/orders.csv. |
| Schlüsselspalte | Die Spalte, die eine Zeile eindeutig kennzeichnet, z. B. Auftragsnr. | optional | Nötig, um geänderte und entfernte Zeilen zu erkennen. Ohne Schlüssel werden nur neue Zeilen erkannt. |
| Neue Zeilen / Geänderte Zeilen / Entfernte Zeilen | Welche Änderungen einen Lauf starten. | optional | Standardmäßig sind neue und geänderte Zeilen eingeschaltet, entfernte ausgeschaltet. |
| Läufe | „Ein Lauf mit allen Änderungen“ (per-run) oder „Ein Lauf je geänderter Zeile“ (per-row). | optional | per-run (Standard): ein Lauf mit allen Änderungen einer Prüfung. per-row: ein Lauf je geänderter Zeile. |
| Vorhandene Zeilen beim ersten Start als neu melden | Meldet den aktuellen Inhalt einmalig. | optional | Standardmäßig aus. |
| Tabellenblatt (nur Excel) | Welches Tabellenblatt gelesen wird. | optional | Standard: das erste Blatt. |
| Datensatz-Element (nur XML) | Das wiederkehrende Element. | optional | Leer: Das erste wiederkehrende Element wird verwendet. Sonst ein Pfad wie Orders/Order. Attribute erscheinen mit @, z. B. @id. |
| Netzlaufwerk (Abfragemodus) | Für SMB-/NFS-Freigaben, die Dateiänderungen nicht melden. | nur Server-Ordner | Standardmäßig aus. |
| Prüfen alle (Sekunden) | Das Prüfintervall. | nur WebDAV | Standard: 60. |
| Änderungen | Speicher-Schlüssel für die Änderungen als Markdown-Tabellen. | erforderlich | Direkt nutzbar in einem KI-Schritt oder einer Mail. Siehe unten. |
| Änderungen als Daten (optional) | Speicher-Schlüssel für dieselben Änderungen als strukturierte Daten. | optional | Für Bedingungen oder die Excel-Aktion. |
| Dateiinfo (optional) | Pfad, Adresse (Pfad oder URL), Änderungszeit und Anzahl der Zeilen. | optional |
Änderungen (Markdown) bei Ein Lauf mit allen Änderungen:
**3 Änderungen** in `orders.csv`: 1 neu, 1 geändert, 1 entfernt
### Neu (1)
| Order no. | Customer | Status |
| --- | --- | --- |
| 1003 | White | open |
### Geändert (1)
| Order no. | Customer | Status | Geänderte Felder |
| --- | --- | --- | --- |
| 1001 | Miller | delivered | Status: open → delivered |
### Entfernt (1)
…
Änderungen als Daten bei Ein Lauf mit allen Änderungen:
{
"count": 3, "added": 1, "changed": 1, "removed": 1,
"changes": [
{ "changeType": "changed", "key": "1001",
"row": { "Order no.": "1001", "Customer": "Miller", "Status": "delivered" },
"previous": { "Order no.": "1001", "Customer": "Miller", "Status": "open" },
"changedFields": ["Status"] },
{ "changeType": "added", "key": "1003", "row": { "Order no.": "1003", "Customer": "White", "Status": "open" } },
{ "changeType": "removed", "key": "1002", "row": { "Order no.": "1002", "Customer": "Baker", "Status": "open" } }
]
}
Bei Ein Lauf je geänderter Zeile beschreiben beide Ausgaben jeweils eine einzelne Änderung. CSV-Werte bleiben Text, genau wie in der Datei (1.200,50); Excel-Werte behalten ihren Typ.
Workflows, die mit dem früheren einzelnen Trigger Datensätze geändert (mit dem Umschalter Ablage) erstellt wurden, laufen unverändert weiter; der Editor kennzeichnet ihn als veraltet.
Beispielszenario
Lieferstatus. Das ERP schreibt orders.csv alle 15 Minuten neu. Der Trigger beobachtet die Datei mit der Schlüsselspalte Auftragsnr. und nur Geänderte Zeilen, ein Lauf je Zeile. Er schreibt die Änderung als Daten nach change; eine Bedingung prüft {memory://change/row/Status} == "delivered", ein KI-Schritt verfasst eine kurze Lieferbestätigung, und die Mail-Aktion sendet sie an den Kunden.
Empfehlungen
- ✅ Setzen Sie immer eine Schlüsselspalte, wenn die Datei eine hat – nur dann lassen sich Änderungen und Entfernungen erkennen.
- ✅ Wählen Sie Ein Lauf je geänderter Zeile, wenn jede Änderung eine eigene Aktion auslöst (eine Mail, ein Ticket); für Zusammenfassungen Ein Lauf mit allen Änderungen.
- ✅ Lassen Sie das exportierende System unter einem temporären Namen schreiben und die Datei am Ende umbenennen – der Trigger wartet zusätzlich, bis die Datei nicht mehr wächst.
- ⚠️ Wer Schlüsselspalte, Tabellenblatt oder Datensatz-Element ändert, beginnt mit einem neuen Ausgangsstand.
- ❌ Richten Sie den Trigger nicht auf eine Datei, in die Ihr eigener Workflow schreibt – jeder Lauf würde den nächsten starten.
Nächste Schritte
- Bearbeiten Sie die Zeilen mit der Excel-Aktion oder beziehen Sie über Freigabe einholen eine Person ein.