brainX

Automatisierungen - Hinweise und Tipps

Paket: BASIS

1. Hinweise und Tipps zu Automatisierungen

1.1. Hinweise

Mandantenfähigkeit von Automatisierungen

Automatisierungen können an bestimmte Mandanten gebunden werden:

  • Mailscanner die an Mandanten gebunden sind, werden ausgeführt, wenn einer davon für den Benutzer, dessen Postfach gescannt wird, erlaubt ist.
  • Der Mandant für die Datensatzanlage wird automatisch über den Ausgangsdatensatz ermittelt. In Modulen ohne explizite Mandantenauswahl greift die Zuständigkeit bzw. der eingeloggte Benutzer.
Änderungsverfolgung

Änderungen, die von Automatisierungen vorgenommen werden, werden entsprechend in der Änderungsverfolgung protokolliert.

Auslöser und externe Quellen (API / Import)

Im Standard werden Auslöser ausschließlich durch manuelle Aktionen in der Benutzeroberfläche ausgelöst. Soll ein Auslöser auch bei Änderungen greifen, die über die API oder einen CSV-Import/Update erfolgen, muss dies im Auslöser über das Feld “Auch für Änderungen über” explizit aktiviert werden.

Dies ist insbesondere dann zu beachten, wenn externe Dienste über die API Prozesse in brainX anstoßen - etwa Push-Benachrichtigungen von DocuSeal nach erfolgter Unterschrift. In solchen Fällen muss bei allen beteiligten Auslösern eines Automatisierungsstrangs - einschließlich verketteter Folgeauslöser - der Wert “API” aktiviert sein.

Zeitverzögerte Aktionen

In einer Aktion einer Automatisierung kann eine Zeitverzögerung konfiguriert werden.

Dies bedeutet, dass z.B. ein E-Mail-Versand so konfiguriert werden kann, dass die E-Mail erst nach Ablauf einer frei definierbaren Zeitverzögerung nach dem Speichervorgang versendet wird.

Alle Aktionen mit konfigurierter Zeitverzögerung werden im Modul Geplante Aktionen aufgelistet und können dort nochmals kontrolliert und bei Bedarf gelöscht werden.

Mahngebühren u. Verzugszinsen

Mahngebühren u. Verzugszinsen in Automatisierungen sind nur für das Modul Rechnungen möglich.

Zugriff auf sekundäre Daten des Auslösers

Aktionen erlauben Zugriff auf sekundäre Daten des Auslösers, wenn passend. Dazu zählen z.B. Positionsfelder aus Faktura-Datensätzen.

Auswertung Logdateien bei Fehlern

Sollten bei einer Automatisierung Fehler auftreten, werden diese in den Logdateien protokolliert.

Um die auslösenden Knoten leichter identifizieren zu können, stehen in den Knoten Nummern, welche in den Logdateien entsprechend angezeigt werden.

Was sind Zyklen und wie sind diese zu vermeiden?

In einer Automatisierung beziehen sich "Zyklen" auf wiederholte Abläufe oder Prozesse, die in einer Schleife ausgeführt werden. Diese Zyklen können in verschiedenen Kontexten auftreten, wie zum Beispiel bei der Verarbeitung von Daten, der Ausführung von Aufgaben oder der Interaktion mit Benutzern.

Zyklen können problematisch sein, wenn:

  1. Endlosschleifen entstehen: Wenn ein Prozess so konzipiert ist, dass er sich selbst immer wieder ausführt, ohne eine Bedingung zu haben, die ihn stoppt, kann dies zu einer Überlastung des Systems führen.
  2. Ressourcenverschwendung: Zyklen können unnötige Ressourcen beanspruchen, was die Effizienz der Software beeinträchtigt.
  3. Fehleranfälligkeit: Komplexe Zyklen können schwer zu debuggen sein und zu unerwarteten Fehlern führen.

Um Zyklen zu vermeiden, können folgende Strategien angewendet werden:

  1. Bedingungen festlegen: Sicherstellen, dass jeder Zyklus eine klare Abbruchbedingung hat, die erfüllt sein muss, damit der Prozess endet.
  2. Eingabekontrollen: Eingaben und Bedingungen überprüfen, um sicherzustellen, dass sie nicht zu unerwarteten Zyklen führen.
  3. Testen und Validieren: Umfassende Tests durchführen, um sicherzustellen, dass die Automatisierungsprozesse wie gewünscht funktionieren und keine Zyklen erzeugen.

Durch diese Maßnahmen kann die Wahrscheinlichkeit von Zyklen in einer Automatisierung reduziert und die Effizienz und Stabilität der Prozesse verbessert werden.

Löst eine Automatisierung einen Zyklus aus, wird nur eine einzelne Meldung ausgegeben. Die betroffene Automatisierung wird anschließend mit einer Markierung versehen, die darauf hinweist, dass seit der letzten Speicherung ein Zyklus aufgetreten ist. Die Markierung wird aufgehoben, sobald die Automatisierung erneut bearbeitet und gespeichert wird.

Alle aufgetretenen Zyklen werden weiterhin in einer separaten Log-Datei protokolliert, um eine nachträgliche Analyse zu ermöglichen. Zyklen sollten generell vermieden werden, da sie zu unnötiger Systemlast führen.

1.2. Tipps

Vorgehensweise bei neuen, komplexen und sensiblen Automatisierungen

Aufgrund ihres Funktionsumfangs und der Vielzahl möglicher Auslöser, Bedingungen und Aktionen sind Automatisierungen ein sehr “mächtiges“ Instrument.

Bei der Erstellung - gerade bei etwas komplexeren Automatisierungen - wird empfohlen, sensible Aktionen (z. B. der E-Mail-Versand von Rechnungen, Mahnungen etc.) die erste Zeit mit Zeitverzögerung auszuführen. Die E-Mails können dann vor dem Versand im Modul Geplante Aktionen nochmals kontrolliert werden.

Liefern die Aktionen das gewünschte Ergebnis, kann die Zeitverzögerung reduziert oder entfernt werden.

Namen von Auslösern, Bedingungen und Aktionen

Bei der Erstellung von Auslösern, Bedingungen und Aktionen sollten stets “sprechende”, also aussagekräftige, Namen gewählt werden.

Sprechende Namen sind aus mehreren wichtigen Gründen sinnvoll:

  • Klar benannte Auslöser, Bedingungen und Aktionen machen die Automatisierung verständlicher. Wer die komplette Automatisierung betrachtet, erkennt sofort den Zusammenhang und den Ablauf, ohne die Konfiguration der einzelnen Knoten ansehen zu müssen.
  • Falls zu einem späteren Zeitpunkt Änderungen an der Automatisierung notwendig sind, erleichtern aussagekräftige Namen das Verständnis und die Anpassung der Automatisierung.
  • Wenn mehrere Personen/Benutzer administrative Berechtigungen besitzen und entsprechend Automatisierungen bearbeiten dürfen, erleichtert dies die gemeinsame Bearbeitung.
Verwendung von Hilfsfeldern

Zur Berechnung von Werten in Bedingungen und Aktionen - z.B. vergangene Zeit zwischen zwei Datumswerten - werden manchmal Feldwerte benötigt, die in den Standardfeldern nicht zur Verfügung stehen.

Es bietet sich in solchen Fällen an, in der Modulverwaltung Felder anzulegen, und diese mit der Eigenschaft Zusätzliche Angabe zu kennzeichnen.

Wurde die Einstellung “Zusätzliche Angabe” aktiviert, steht das Feld nicht in der Hauptmaske zur Dateneingabe zur Verfügung, sondern wird in einer separaten Seitenleiste in der Detailansicht eines Datensatzes angezeigt.

Änderungen in Automatisierungen

Im brainX-System werden Änderungen in den Globalen Einstellungen grundsätzlich protokolliert (siehe Abschnitt Letzte Änderungen). Dabei werden jedoch nicht alle Details einer Änderung gespeichert.

Vor der Durchführung von Änderungen an einer Automatisierung kann diese durch duplizieren/kopieren als “Sicherungskopie” gespeichert werden. In dieser Kopie kann diese nochmals im Detail angesehen werden, nachdem in der ursprünglichen Automatisierung Änderungen durchgeführt wurden. Mittels Export kann eine Automatisierung auch separat gesichert werden.

Gerade bei komplexeren Automatisierungen sollten die Schritte von durchgeführte Änderungen eventuell auch durch den Administrator manuell protokolliert werden.