Alex®-ZEITGEIST muss natürlich auch die gesetzlichen Bestimmungen hinsichtlich Arbeitszeitgesetz und Arbeitsruhegesetz berücksichtigen. Um dies zu gewährleisten, sind bei der Inbetriebnahme seitens Bit Factory einige Vorarbeiten zu erledigen.
Die Parametereinstellungen aus der Parametergruppe "Arbeitszeitgesetz" werden für die Zeitgeist-Berechnungen verwendet!
Berechnung mit Standardmodul "_7up"
Es sind keine weiteren Arbeiten erforderlich.
Berechnung mit ALEX-TCX-Modulen
Folgende TCX-Erweiterungen sind durchzuführen:
//- Mindestruhezeit zwischen zwei Diensten [Minuten] procedure ZeitgeistDailyIdleMin param employee, keyDate { return employee.AZG_TAG_PAUSE_ZW_2_DIENSTEN.GetInheritedValue( keyDate ) * 60.0 } //-------------------------------------------------------------------------- //- Mindestruhezeit je Woche: Ruhestunden [Minuten] procedure ZeitgeistWeeklyIdleMin param employee, keyDate { return employee.AZG_WOCHE_PAUSE_STUNDEN.GetInheritedValue( keyDate ) * 60.0 } //-------------------------------------------------------------------------- //- Maximale WÖCHENTLICHE Arbeitszeit [Minuten] procedure ZeitgeistWeeklyTotalMax param employee, keyDate { return employee.AZG_WOCHE_MAX_STD.GetInheritedValue( keyDate ) * 60.0 } //-------------------------------------------------------------------------- //- Wochenanzahl für freie Wochenenden [Anzahl] procedure ZeitgeistWeekendsIdleWatched param employee, keyDate { if employee.WE_PRUEFEN.GetInheritedValue( keyDate ) then return employee.AZG_ANZAHL_WOCHEN_FUER_FREIE_WE.GetInheritedValue( keyDate ) else return 0.0 endif } //-------------------------------------------------------------------------- //- Mindestanzahl gänzlich freie Wochenenden (SA und SO) [Anzahl] procedure ZeitgeistWeekendsIdle param employee, keyDate { return employee.AZG_ANZAHL_WOCHEN_FUER_FREIE_WE.GetInheritedValue( keyDate ) - employee.AZG_ANZAHL_FREIE_WE.GetInheritedValue( keyDate ) } //-------------------------------------------------------------------------- //- Mindestanzahl teilweise freie Wochenenden (SA oder SO) [Anzahl] procedure ZeitgeistWeekendsPartialIdle param employee, keyDate { return 0.0 } //-------------------------------------------------------------------------- //- Mindestruhezeit je Woche: Wochentag für Prüfung [Wochentag] procedure ZeitgeistWeeklyIdleMinCheckOnDOW param employee, keyDate { return SONNTAG() } //-------------------------------------------------------------------------- //- Wochentag für WÖCHENTLICHE Arbeitszeit [Wochentag] procedure ZeitgeistWeeklyTotalCheckOnDOW param employee, keyDate { return SONNTAG() } //--------------------------------------------------------------------------