Zum Inhalt springen

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.

Wenn eine Abwesenheit in einem Monat beginnt und in einem der folgenden Monate endet, muss das System diese an den Monatsgrenzen aufteilen (“splitten”).

  1. Identifikation: Der Prozess sucht nach genehmigten, aber noch nicht verbuchten Abwesenheiten, die vor oder in der abgeschlossenen Periode liegen.
  2. Berechnung: Für jede betroffene Abwesenheit wird das Verhältnis zwischen der tatsächlichen Fehlzeit und der Sollarbeitszeit berechnet.
  3. 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_split wird auf true gesetzt, um zu markieren, dass dieser Datensatz das Ergebnis einer Aufteilung ist.
  4. Bereinigung: Automatisch generierte Arbeitszeiten (t_worktime) in den betroffenen Zeiträumen werden gelöscht, sofern der Zeitraum noch nicht final freigegeben wurde.

Der Prozess wird über den Interface Client (Porter) gestartet. Die Konfiguration erfolgt in einer YAML-Datei.

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"