Split Absence
Der Prozess Split Absence dient dazu, Abwesenheiten, die sich über mehrere Abrechnungsperioden (Monate) erstrecken, automatisch aufzuteilen. Dies ist besonders wichtig für den Monatsabschluss, um die Fehlzeiten korrekt den jeweiligen Perioden zuzuordnen.
Funktionsweise
Abschnitt betitelt „Funktionsweise“Wenn eine Abwesenheit in einem Monat beginnt und in einem der folgenden Monate endet, muss das System diese an den Monatsgrenzen aufteilen (“splitten”).
- Identifikation: Der Prozess sucht nach genehmigten, aber noch nicht verbuchten Abwesenheiten, die vor oder in der abgeschlossenen Periode liegen.
- Berechnung: Für jede betroffene Abwesenheit wird das Verhältnis zwischen der tatsächlichen Fehlzeit und der Sollarbeitszeit berechnet.
- Splitting:
- Für jeden abgeschlossenen Monat wird ein neuer Abwesenheitsdatensatz erstellt.
- Dieser neue Datensatz erhält den Status “verbucht” (
abs_booking_timestamp). - Die ursprüngliche Abwesenheit wird auf den verbleibenden Zeitraum (ab der aktuellen Periode) gekürzt.
- Das Feld
abs_splitwird auftruegesetzt, um zu markieren, dass dieser Datensatz das Ergebnis einer Aufteilung ist.
- Bereinigung: Automatisch generierte Arbeitszeiten (
t_worktime) in den betroffenen Zeiträumen werden gelöscht, sofern der Zeitraum noch nicht final freigegeben wurde.
Konfiguration
Abschnitt betitelt „Konfiguration“Der Prozess wird über den Interface Client (Porter) gestartet. Die Konfiguration erfolgt in einer YAML-Datei.
Beispiel Konfiguration (splitabsence.yaml)
Abschnitt betitelt „Beispiel Konfiguration (splitabsence.yaml)“tenant: "ihr_tenant"url: "https://api.chronapp.com"description: "Split absence process"sso: url: "https://sso.chronapp.com/realms/" client: "chronapp-porter" secret: "ihr_secret"jdbcurl: "jdbc:sqlserver://ihr_server;database=ihr_db;..."exp: - api: "splitabsence" variant: "standard"