Skip to main content

Versteckte User-Exits

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. 

 

/** Ü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
 * @since Invoice 0.95
 * @returns {string} Neuer Name für die Log-Datei
 **/
function ue_ChangeRulesLogName(logName, fileId, fileTemplate){
    return logName + "_" + fileId + "_" + fileTemplate;
}

/** Über dieses UserExit kann der Log-Pfad zur Log-Datei angepasst werden.
 * Achtung! Diese Funktion kann ggf. über den später ausgeführten UserExit ue_ChangeLogPath() nochmals überschrieben werden!
 * @param {string} logFolder Aktueller Datei-Pfad
 * @param {string} fileId Aktuelle Mappen-ID
 * @param {string} fileTemplate Mappentyp der aktuellen Mappe
 * @since Invoice 0.95
 * @returns {string} Neuer Log-Pfad
 **/
function ue_ChangeRulesLogFolder(logFolder, fileId, fileTemplate){
    return logFolder + cFS + "WfRules"; // cFS ist bei Linux "/" und bei Windows "\\"
}

/** Ü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
 * @since Invoice 0.95
 * @returns {string} new log add
 **/
function ue_ChangeRulesLogAdd(logName, fileId, fileTemplate){
    return "y";
}

/** Über dieses UserExit kann der Log-Pfad generell für alle internen Logs umgestellt werden!
 * @param {string} path Aktueller Pfad.
 * @since Invoice 0.95
 * @return {string} Angepasster Pfad.
 */
function ue_ChangeLogPath(path){
    if( context.scriptName==="abc" ){
        return "E:\\Logs";
    }
    return path;
}
/** Das UserExit wird vor der Bearbeitung einer Mappe direkt zu Beginn im Skript "Invoice_DF_BeforeEdit" aufgerufen.
 * @since Invoice 0.94
 * @return {boolean} true / false.
 */
function ue_BeforeEdit_Start(){
if( !context.file ){
context.errorMessage = "Ungültige Mappe";
return false;
}
return true;
}
/** Das UserExit wird vor der Bearbeitung einer Mappe am Ende des Skripts "Invoice_DF_BeforeEdit" aufgerufen.
 * @since Invoice 0.94
 * @return {boolean} true / false.
 */
function ue_BeforeEdit_End(){
    if( !context.file ){
        context.errorMessage = "Ungültige Mappe";
        return false;
    }
    return true;
}