Skip to main content

Versteckte User-Exits Workflow-Regeln

Bei der Ermittlung der Workflow-Regeln kann an bestimmten Punkten eingegriffen werden.

/** Über dieses UserExit kann der Name der Log-Datei angepasst werden.  
 * @param {string} logName Aktueller Dateiname  
 * @param {string} fileId Aktuelle Mappen-ID  
 * @param {string} fileTemplate Mappentyp der aktuellen Mappe
 * @returns {string} Neuer Name für die Log-Datei  
**/
function ue_ChangeRulesLogName(logName, fileId, fileTemplate){
	return logName + "_" + fileId + "_" + fileTemplate;
}

/** Über dieses UserExit kann der Zusatz zum Log-Dateinamen angepasst werden.  
 * In der Regel wird ein täglicher oder monatlicher Zeitstempel angefügt, damit die einzelnen Logdateien nicht zu groß werden.
 * Der zurückgegebene String wird einfach zum Dateinamen angefügt, falls es nicht einer dieser speziellen Rückgabewerte ist:
 * "year"/"yyyy"/"y" fügt das Aktuelle Jahr hinzu
 * "month"/"mm"/"m" fügt Jahr und Monat hinzu
 * "date"/"day"/"dd"/"d" fügt Jahr, Monat und Tag hinzu
 * "timestamp"/"ts" fügt Jahr, Monat, Tag und Uhrzeit hinzu
 * @param {string} logName Incoming log-name
 * @param {string} fileId Aktuelle Mappen-ID
 * @param {string} fileTemplate Mappentyp der aktuellen Mappe
 * @returns {string} new log add 
**/
function ue_ChangeRulesLogAdd(logName, fileId, fileTemplate){
	return "";
}

/** Das User-Exit wird bei den Workflow-Regeln beim Auslesen des Gentable aufgerufen.
 * Über die Funktion können Sonderzeichen in String-Werten ersetzt werden.
 * Die Funktion wird ausschließlich für String-Werte aufgerufen.
 * @param {string} fieldValue Feldwert
 * @returns {string} Angepasster String-Wert
**/
function ue_FieldConfParseGentableStringValues(fieldValue){
	return fieldValue.replace(/\u001e/g, "").replace(/\u001c/g, ""); 
}

/** Das UserExit wird direkt nach der Ermittlung der Workflow-Regeln aufgerufen.
 * Der Aufruf erfolgt über das Skript "DEXPRO_WF_Rules_DeterminationUser".
 * Über die Funktion können die ermittelten Regeln manipuliert werden. 
 * Der String-Wert 'rulesJSONStr' wird im Anschluss in das Feld 'RulesJSON' geschrieben.
 * @param {string} rulesJSONStr Das Ergebnis der Workflow-Regeln als String.
 * @param {string}workflowid Aktuelle Workflow ID.
 * @param {string} actionid Aktuelle Aktion ID.
 * @param {string} techAction Angabe, ob es sich um eine technische Aktion handelt.
 * @return {string} Angepasste Workflow-Regeln als JSON-string.
**/
function ue_CheckWorkflowRules(rulesJSONStr, workflowid, actionid, techAction){
    var rulesObj = JSON.parse(rulesJSONStr);
    /** An dieser Stelle kann das Objekt manipuliert werden.... **/
    return JSON.stringify(rulesObj);
}

/** 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;
}