Skip to main content

Versteckte User-Exits Workflow

Einige Skripte enthalten User-Exit Funktionen und viele dieser Funktionen sind in den verschiedenen "UserExit"-Bibliotheken enthalten. Wenn neue Funktionen hinzukommen müssten diese Bibliotheken allerdings immer manuell um diese Funktionen erweitert werden. Daher werden neue hinzugefügte UserExit Funktionen nur aufgerufen, wenn Sie als Funktion existieren. Die Funktionen können bei Bedarf in einer UserExit-Bibliothek (zum Beispiel "DEXPRO__UserExit_CustomLib") hinzugefügt werden.

Bei der Initialisierung

/** Direkt zu Beginn des Workflows kann über den Parameter "Workflow_InitialDelay" 
 * eine Workflow-Verzögerung angesteuert werden.
 * Nur wenn die Verzögerung angesteuert wird, dann wird vorab dieses User-Exit ausgeführt.
 * Die Funktion wird lediglich ausgeführt.
 * @returns Kein Rückgabewert!
**/
function ue_BeforeInitialDelay(){
  ;
}

/** Zu Beginn des Workflows wird das initiale Skript ausgeführt und im Anschluss werden die Workflow-Regeln ermittelt.
 * In speziellen Fällen wie bei der Erstellung von Split-Mappen kann es gewünscht sein, dass diese Aktionen übersprungen werden sollen.
 * @param {Log} log Logging-Objekt
 * @returns {boolean} true (Abkürzung nehmen) / false
**/
function ue_InitAbbreviation(log){
    log.info("["+context.file.getid()+"] start function ue_InitAbbreviation()");
 	return true; 
}

 

Nach der Ermittlung der Workflow-Regeln

/** Die User-Exit-Funktion wird ausgeführt, wenn eine Aktion über die Workflow-Regeln übersprungen wird.
 * @returns {boolean} true / false (führt zu einem Workflow-Fehler)
**/
function ue_OnSkipAction(){
	return true;
}

/** Nach den Workflow-Regeln wird zunächst auf eine technische Aktion und auf das Überspringen der Aktion geprüft. 
 * Nur wenn die Aktion einer Gruppe oder einem Benutzer zugeordnet wird, wird das Skript "DEXPRO_WF_Rules_BeforeUserAction" aufgerufen. 
 * In dem Skript werden vor allem Zugriffsberechtigungen für die ermittelte Gruppe bzw. für den ermittelten Benutzer gesetzt. 
 * Über die Workflow-Regeln wurde bereits der Benutzer bzw. die Gruppe zugeordnet. 
 * Bei einem Split wird das Skript für jede einzelne Split-Mappe ausgeführt!
 * @returns {boolean} true / false (führt zu einem Workflow-Fehler)
**/
function ue_BeforeUserAction(){
	return true;
}

 

Am Aktions-Ende

/** Nach Abschluss einer Aktion kann eine Verzögerung angesteuert werden.
 * Dadurch kann der Anwender ggf. schneller weiter arbeiten.
 * @since Invoice 1.0.300
 * @returns {boolean} true/false
**/
function ue_DelayAtWorkflowActionEnd(){
    return true;
}

 

Am Workflow-Ende

/** Am Workflow-Ende kann eine Mappe gelöscht ("delete") oder versiegelt ("seal") werden oder es passiert nichts mit dem Beleg.
 * Die Information wird in der WEB-Konfiguration zur Workflow ID angegeben und kann über dieses UserExit pro Mappe manipuliert werden.
 * @param {string} wfEndType Ermittelte Angabe über die WEB-Konfiguration.
 * @return {string} "delete" / "seal" / "".
**/
function ue_ManipulateWorkflowEndType(wfEndType){
    return wfEndType;
}
/** Das UserExit wird vor dem Zurücksenden im Skript "DEXPRO_Action_SendBack" aufgerufen.
 * Bei einem Fehler muss "context.errorMessage" in der Funktion gesetzt werden!
 * @param {string} workflowAction Enthält die ausgewählte Workflow-Aktion.
 * @since Invoice 0.94
 * @return {boolean} true / false.
 */
function ue_BeforeSendBack(workflowAction){
    return true;
}
/**Das UserExit wird beim Zurücksenden auf den ausgehenden Kontrollflüssen 
 * über das Skript "DEXPRO_WF_CheckSendBack" aufgerufen (ab Workflow-Version "WorkflowRules-3"). * Die Funktion greift demnach auch bei projektspezifischen UDA, welche diese Kontrollflüsse verwenden.
 * Bei einem Fehler muss die Fehlermeldung zurückgegeben werden - andernfalls ein Leerstring!
 * @since Invoice 1.0.001
 * @return {string} ""/ error-message.
 */
function ue_OnSendBack(){
    return "";
}
/** Das UserExit wird bei Übernahme einer Mappe aus einem Gruppenkorb aufgerufen.
 * Der Aufruf erfolgt über das Skript "DEXPRO_WF_CheckDataForwardUser". * In dem Skript wird zuvor lediglich der aktuelle Benutzer in das Feld "ActionUser" geschrieben.
 * Bei einem Fehler muss die Fehlermeldung zurückgegeben werden - andernfalls ein Leerstring!
 * @since Invoice 1.0.010
 * @return {string} ""/ error-message.
 */
function ue_CheckDataForwardUser(){
    return "";
}
/** Das UserExit wird beim Zurücklegen in den Gruppenkorb aufgerufen.
 * Der Aufruf erfolgt über das Skript "DEXPRO_WF_CheckDataBackAccessProfile".
 * Bei einem Fehler muss die Fehlermeldung zurückgegeben werden - andernfalls ein Leerstring!
 * @since Invoice 1.0.010
 * @return {string} ""/ error-message.
 */
function ue_CheckDataBackAccessProfile(){
    return "";
}