Lange Wartezeit bei Weiterleitung

Bei Abschluss einer Workflow-Aktion bleibt die aktuelle Mappe so lange im Fokus des aktuellen Benutzers, bis der nächste Workflow-Schritt erreicht wurde. Dies kann aus unterschiedlichen Gründen sehr lange dauern.

Status/Monitor kontrollieren

Zunächst sollte der Status der Mappe kontrolliert werden. Hier können die Zeitpunkt-Einträge bereits sehr hilfreiche Informationen liefern. Leider sind die angaben nur in Minuten angegeben. Aber wenn zwischen einer Aktion und der nächsten Aktion ungewöhnlich viele Status-Einträge geschrieben werden kann es bedeuten, dass eine oder gar mehrere Workflow-Aktionen durch entsprechende Workflow-Regeln übersprungen werden. Wenn hierdurch eine große Wartezeit entsteht könnte ein Verzögerungs-Schritt helfen. Hierdurch erhält die Mappe schneller einen neuen Workflow-Schritt und der Anwender kann schneller weiter arbeiten. Die Mappe wird im Folgenden durch den Job-Benutzer weitergeleitet.

image-1598536866846.png

Skript-Log einschalten

Durch das Skript-Log werden die Laufzeiten der einzelnen Skripte mit Start- und Endzeitpunkt bis zur Millisekunde genau in das Documents-Log geschrieben und zudem wird die Laufzeit in Millisekunden berechnet. Hierdurch können Skripte mit langen Laufzeiten schnell identifiziert werden.

image-1598592783376.png

Das Skript-Log kann über die documents.ini eingeschaltet werden:

ScriptLog=1

Im Anschluss ist ein Neustart notwendig. Alternativ kann das Skript-Log ohne Neustart auch zur Laufzeit über die Wartungsoperation "ScriptLog 1" oder über den Portal-Skript-Aufruf "context.doMaintenance("ScriptLog 1");" eingeschaltet werden.

Das Skript "DEXPRO_Action_FinishAction" zum Beispiel führt die Aktion "forwardFile()" aus. Bei der Weiterleitung werden viele weitere Workflow-Skripte ausgeführt und zudem werden Documents-spezifische Skripte ausgeführt (diese beginnen mit "util"). Eine lange Laufzeit von diesem Skript beinhaltet demnach die Laufzeit vieler anderer Skripte und somit bedeutet eine lange Laufzeit nicht automatisch, dass die Fehler-Ursache in diesem Skript liegt!

Das Skript-Logging sollte nach dem Support wieder ausgeschaltet werden!

Asynchrone Mailversendung verwenden

Wenn nach der Weiterleitung eine neue Gruppe bzw. ein neuer Benutzer angesprochen wird und die neuen Benutzer eine E-Mail bei Posteingang erhalten, dann werden zunächst Info-Mails versendet. Erst im Nachgang wird die Weiterleitung beendet.

Der Versender der Mappe kann in dieser Zeit nicht weiter arbeiten. Die synchrone Mail-Versendung kann unter Umständen lange dauern. In einem Fall waren es weit über 10 Sekunden. Daher sollte die Mandanten-Eigenschaft "EMailAsync" mit dem Wert "1" gesetzt werden.

image-1598537835926.png