Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
Konten in der Zeitberechnung
Konten halten die Ergebnisse der Zeitberechnung je Person und Berechnungstag fest. Hier findest du die festen Systemkonten, die Kontenfamilien aus den Stammdaten und die Regeln für ihre Befüllung. Die ZW-Einstellungen für Konten steuern die zusätzliche Kontierung, Bewertung und Speicherung.
Stand 08.10.2026: Beschreibung des geprüften Entwicklungsstands. Die einheitliche Speicherung, 40*, explizite Nullkonten und die Zuschlagstage benötigen die entsprechend aktualisierte Programmversion. Eine Auslieferung an Kunden ist damit nicht bestätigt.
Berechnen und Speichern
Die Berechnung beginnt mit einer leeren Kontenliste. Die einzelnen Rechenschritte schreiben ihre Ergebnisse hinein. Bei mehreren Buchungen werden Werte je nach Konto addiert oder als Tagesmerkmal gesetzt. Ein fehlendes Konto liefert beim Lesen über den Konto-Zugriff den Wert 0, ist aber noch kein gespeicherter Datensatz.
Die Liste wird während der Berechnung intern verwendet. Erst beim Speichern wählen CALC_USEKONTEN und CALC_KONTEN die Datensätze für BerechnetKonten aus. Die Speicherauswahl schaltet die interne Kontenberechnung nicht ab und verändert die Ergebnisliste nicht. Insbesondere exklusive Konten und die WAZ-Basis wirken unabhängig davon, ob ihre Konten gespeichert werden.
Feste Systemkonten
Zeitwerte stehen grundsätzlich in Dezimalstunden: 0,50 entspricht 30 Minuten. Tagesmerkmale und Tagesanteile sind keine Stunden; Geldkonten ebenfalls nicht.
| Konto | Inhalt / Bildung | Einheit |
|---|---|---|
| 1 | Anwesenheit vom ersten Kommen bis zum letzten Gehen zum Zeitpunkt der Anwesenheitsberechnung, einschließlich Zwischenlücken | Stunden |
| 2 | Summe der Zeitabschnitte mit aktiviertem Kennzeichen Netto | Stunden |
| 3 | Anwesenheitswert nach der Beschneidung | Stunden |
| 4 | Anwesenheit nach Beschneidung, für Kennzeichen Netto | Stunden |
| 5 | Bezahlte Anwesenheit aus der Istberechnung | Stunden |
| 6 | Summe des berechneten Zuschlags | Stunden |
| 7 | Gutschrift durch Tagesart, gegebenenfalls vermindert um den Ganztagesabzug | Stunden |
| 8 | Gutschrift durch Ganztagesbuchungen | Stunden |
| 10 | Sollzeit | Stunden |
| 11 | Korrekturgutschrift mit Saldo-Faktor | Stunden |
| 12 | Urlaub nach der Urlaubsteuerung des Rechenmodells | Tagesanteile |
| 13 | Krank nach der Urlaubsteuerung des Rechenmodells | Tagesanteile |
| 14 | Freier Samstag | Tagesmerkmal / Tagesanteil |
| 15 | Gestempelte Pause | Stunden |
| 16 | Mindestpause | Stunden |
| 17 | Angerechnete Pause abzüglich virtueller Pause | Stunden |
| 18 | Korrektur ohne Auszahlung; die Korrekturmenge wird hier ohne Saldo-Faktor gesammelt | Stunden |
| 19 | Basiszeit der Pausenberechnung | Stunden |
| 20 | Kundenspezifischer Stundenwert JS | Stunden |
| 21 | Kundenspezifisch kodierte Kommen-/Gehenzeit: Kommen-Stunde × 1000000 + Kommen-Minute × 10000 + Gehen-Stunde × 100 + Gehen-Minute | Kodierter Wert |
| 22 | Gutschrift Wegezeit/Pause | Stunden |
| 23 | Berechneter KUG-Wert | Stunden |
| 30 | Arbeitszeitplan am Tag aktiv | Tagesmerkmal |
| 31 | Feiertagsmerkmal im betreffenden Berechnungspfad | Tagesmerkmal |
| 32 | Mindestens eine Kommen-/Gehenbuchung nach der Schichtzuordnung | Tagesmerkmal |
| 33 | Weder Kommen-/Gehen- noch Ganztagesbuchung nach der Schichtzuordnung; Korrekturen allein verhindern dieses Merkmal nicht | Tagesmerkmal |
| 90 | Angerechnete Zeit nach Korrekturen und Abzug exklusiver Konten | Stunden |
| 91 | Tagessaldo = angerechnete Zeit − Sollzeit | Stunden |
| 95 | Bewertete Zeit + bewertete Zusatzleistung | Geldwert |
Nicht jeder Rechenpfad erzeugt jedes Systemkonto. Ein Tagesmerkmal wird häufig nur bei zutreffender Bedingung mit 1 gesetzt. -999 erzeugt nicht automatisch sämtliche fehlenden Systemkonten.
Kontenfamilien aus den Stammdaten
Eine Konten-ID wird mit 100 multipliziert und um die Unterkontonummer ergänzt. Konto 40 hat damit die Familie 4000 bis 4099. Kennzeichen-ID, Kostenstellen-ID und Konten-ID sind unterschiedliche Zuordnungen; für die Buchung zählt die jeweils hinterlegte Konten-ID.
| Unterkonto | Beispiel Konto 40 | Bedeutung |
|---|---|---|
| 00 | 4000 | Berechneter Wert; seine Einheit hängt von der Quelle ab |
| 01 | 4001 | Gegenbuchung / Auszahlung aus dem Auszahlungsprozess |
| 02 | 4002 | Basiswert, insbesondere die Zeitbasis eines Zuschlags |
| 03 | 4003 | Gewerteter Tag oder Tagesanteil, abhängig vom Rechenpfad |
| 04 | 4004 | Tag mit aktivem Arbeitszeitplan bei Ganztagesbuchung |
| 05 | 4005 | Vom laufenden Berechnungsabgleich ausgenommener Wert aus dem Auszahlungsbereich |
| 10 | 4010 | Bewerteter Geldwert der zusätzlichen Kostenstellenkontierung bei CALC_Lohn = 2 |
Die Zuordnung erzeugt nicht automatisch alle Unterkonten. Die Zeitberechnung erzeugt insbesondere keine Auszahlung auf 4001. Die genaue fachliche Bedeutung von Endung 05 richtet sich nach dem Auszahlungsprozess; die Zeitberechnung schützt diesen gespeicherten Wert.
Wie die Berechnung Konten befüllt
Arbeitszeit und Kennzeichen
In der Istberechnung wird je Zeitabschnitt dessen Dauer mit FaktorSaldo des Kennzeichens multipliziert. Der Wert fließt in das Konto des Kennzeichens. Bei KontoAusTagesArt wird stattdessen das Konto der Vertragstagesart verwendet. Auf Unterkonto 03 wird 1 gesetzt; mehrere Abschnitte desselben Kontos zählen dabei nicht mehrfach.
Für die gesamte angerechnete Zeit kann der Zuschlag zusätzlich berücksichtigt werden. ZuschlagNichtInSaldo der Tagesart verhindert diese Übernahme, nicht aber die eigentliche Zuschlagskontierung. Bei AnteilWazStattZeit wird die Istzeitberechnung übersprungen.
Ganztagesbuchungen und Tagesart
Ganztagesgutschriften stammen je nach Kennzeichen und Rechenmodell aus dem Tageswert, einer Kennzeichenpauschale oder einer individuellen Pauschale. Der Ganztagesabzug wird berücksichtigt. Die Gutschrift wird auf Unterkonto 00 des Kennzeichenkontos addiert; Unterkonto 03 wird auf 1 gesetzt. Bei aktivem Arbeitszeitplan wird zusätzlich Unterkonto 04 auf 1 gesetzt.
Im Sonderpfad SetIstNull wird auf Unterkonto 00 die zweite Sollzeit gesammelt; auf Unterkonto 03 wird der WAZ-Anteil des Kennzeichens addiert. Deshalb ist Unterkonto 03 nicht generell ein ganzzahliger Buchungszähler.
Eine Tagesartgutschrift schreibt auf das Abwesenheitskonto der Tagesart, Unterkonto 00 und 03. Der Ganztagesabzug vermindert auch dieses Wertkonto. KUG-, Nullsetzungs- und Gutschriftsteuerungen können diese Buchung verhindern oder verändern.
Korrekturen und Zusatzkorrekturen
Eine Korrekturbuchung schreibt die Korrekturmenge auf Unterkonto 00 des Kennzeichenkontos. Die angerechnete Korrekturgutschrift wird dagegen mit FaktorSaldo berechnet. Daher können Kontowert und Saldoänderung voneinander abweichen. Dieser Pfad erzeugt keinen allgemeinen Tageszähler auf Unterkonto 03.
Zusatzkorrekturen werden über die Buchungsgruppen gesammelt, der angerechneten Zeit zugeschlagen und auf Unterkonto 00 des jeweiligen Kennzeichenkontos addiert.
Zuschläge
Die Zuschlagsregel richtet sich nach Rechenmodell und Tagesart. Je Zeitabschnitt wird die Überlappung mit dem Zuschlagsfenster ermittelt. Schwellenzeit, Kennzeichen Zuschlag, Zuschlagsfreiheit und die Sondersteuerung für Samstage bestimmen, ob die Regel gebucht wird.
Für eine gebuchte Regel gilt:
- Unterkonto 00: Basiszeit × Zuschlagsfaktor; beispielsweise 8 Stunden × 25 Prozent = 2 Zuschlagsstunden.
- Unterkonto 02: Basiszeit ohne Multiplikation mit dem Zuschlagsfaktor.
- Unterkonto 03: 1 bei positiver Basiszeit, höchstens einmal je Konto und Berechnungstag.
Bei 0 Prozent bleiben Basiszeit und Tageszählung bestehen; der Zuschlagswert ist 0. Ohne positive Basiszeit entsteht durch diesen Pfad kein Zuschlagstag. Mehrere Regeln und Abschnitte mit gleichem Konto addieren die Werte und Basiszeiten, nicht die Tageszählung. Überlappende Regeln können die Basiszeit mehrfach beitragen; das Konto ist deshalb keine automatische Vereinigung aller Zuschlagsintervalle.
Das Tageskonto 6 hält die Zuschlagssumme. Kundenspezifische Zuschlags- und Planübernahmen können davon abweichende Sonderwege enthalten und erzeugen nicht automatisch dieselben Unterkonten wie die reguläre Zuschlagsregel.
Zusätzliche Kostenstellenkontierung
Bei CALC_Bereich_Art = 2 kann zusätzlich in das Konto der Kostenstelle gebucht werden. Dazu muss die Kostenstelle vorhanden sein, ein Zielkonto haben und die jeweilige Buchungsart freigeben.
| Quelle | Freigabe der Kostenstelle | Beitrag auf Unterkonto 00 |
|---|---|---|
| Arbeitszeit | Arbeitszeit | Nettozeit × Bewertungsfaktor |
| Zuschlag | Zuschlag | Zuschlagswert × Bewertungsfaktor |
| Ganztagesgutschrift | GSBuchung | Gutschrift × AnteilWaz × Bewertungsfaktor |
| Korrektur | Korrektur beziehungsweise Auszahlung | Korrektur × FaktorSaldo × Bewertungsfaktor |
Bei CALC_Lohn = 2 wird derselbe Beitrag zusätzlich mit dem Stundenlohn multipliziert auf Unterkonto 10 gebucht. Für den Buchungsstundenlohn gilt die Reihenfolge: genaue Kennzeichen-/Bereichskombination, Bereich allein, Kennzeichen allein, allgemeiner Eintrag, andernfalls Personenstundenlohn.
Die Kostenstellenbuchung ergänzt die reguläre Kontierung. Gleiche Zielkonten können deshalb Beiträge aus mehreren Quellen sammeln. Dieser Zusatzpfad erzeugt nicht selbst Basiszeit und Zuschlagstage auf Unterkonto 02/03. Zeitwerte und Geldwerte dürfen nicht als gleichartige Stunden zusammengerechnet werden.
Zeiten außerhalb von Grenzen
CALC_StundenMaxKonto, CALC_StundenAusserRahmenKonto und CALC_StundenAusserPepKonto legen Zielkonten für spezielle Tagessteuerungen fest. Ein positiver Wert bezeichnet die Konten-ID, nicht die vollständige Unterkontonummer.
Bei gesetzter zugehöriger Tagessteuerung werden Überschreitungen beziehungsweise der nach den Beschneidungsregeln ermittelte Verschnitt auf Unterkonto 00 gebucht. In diesem Kontierungszweig bleibt die ursprüngliche Arbeitszeit bestehen. Beim Höchstzeitkonto wird ein bereits vorhandener Kontowert von der noch zu buchenden Überschreitung abgezogen. Die Einstellung allein aktiviert weder Rahmen noch Höchstzeit; diese kommen aus dem Rechenmodell und der Tagessteuerung.
Exklusive Konten und WAZ-Basis
Am Ende der Berechnung wird jeder vorhandene Wert mit Endung 00 und Kontennummer ab 100 geprüft. Ist seine Kontenfamilie in den Kontenstammdaten als Exklusiv markiert, wird dieser Wert von der angerechneten Zeit abgezogen. Der Kontowert selbst bleibt erhalten. Basiswerte, Tage und Geld-Unterkonten werden dabei nicht abgezogen.
WAZ_CALC_KZ enthält vollständige Kontennummern. Ihre vorhandenen Werte werden am Ende zur WAZ-Basis addiert. Die Einstellung verwendet trotz ihres Namens keine Kennzeichen-IDs. Beide Regeln lesen die interne Ergebnisliste vor der Speicherauswahl.
Speicherung und Neuberechnung
Bei CALC_USEKONTEN = True gilt für alle Schichtmodi derselbe Abgleich je Person und Datum:
CALC_KONTENwählt Konten aus; ohne-999werden Nullwerte ausgeschlossen.- Mit
-999werden fehlende, explizit genannte Berechnungskonten zusätzlich mit 0 angelegt. Wildcards und-1erzeugen keine unbekannten Unterkonten. - Neue Werte werden eingefügt, geänderte Werte aktualisiert. Für den Änderungsvergleich werden fünf Nachkommastellen verwendet; eingefügte/aktualisierte Werte werden nicht eigens auf fünf Stellen gerundet.
- Nicht mehr ausgewählte oder nicht mehr berechnete Werte werden gelöscht, einschließlich Nullwerten ohne
-999und bei leerer Auswahl. - Auszahlungskonten ab 100 mit Endung 01 und 05 bleiben vom Abgleich ausgenommen.
Bei ausgeschalteter Kontenspeicherung bleiben vorhandene Datensätze unangetastet. Eine unveränderte Wiederholung schreibt die Konten nicht erneut. Die Speicherung läuft mit einzelnen SQL-Anweisungen; der Kontenabgleich selbst eröffnet keine eigene Transaktion.
Die Änderungen wirken erst bei der nächsten Berechnung des betreffenden Tages. Ein neues Auswahlmuster allein füllt alte Zeiträume nicht rückwirkend.
Beispiele und Fehlersuche
Bei Konto 40, 8 Stunden Basiszeit und 25 Prozent Zuschlag entstehen 4000 = 2, 4002 = 8 und 4003 = 1. Bei 0 Prozent sind es 4000 = 0, 4002 = 8 und 4003 = 1. Damit auch 4000 = 0 gespeichert wird, verwende etwa 40*;-999.
Soll 4002 auch an Tagen ohne Zuschlagsbasiszeit als Null-Datensatz vorhanden sein, nenne es explizit: 4002;-999. Mit -1;4002;-999 werden alle berechneten Konten gespeichert und 4002 zusätzlich garantiert.
Fehlt ein Konto, prüfe zuerst seine tatsächliche Berechnungsquelle, dann CALC_USEKONTEN, CALC_KONTEN, die Nullwertregel, den Programmstand und die Neuberechnung. 4001 ist eine Auszahlung, kein Tageszähler. Der Zuschlagstag liegt auf 4003. Ein Tag mit 0 Prozent Zuschlag ist nicht dasselbe wie ein Tag ohne passende Zuschlagsbasiszeit.
Quellen und Prüfumfang
Geprüft wurden cCalcAZ, cCalcData.cBerechneteZeit, cCalcIO.SaveBz, cEinstellungenZw, formKontenübersicht und Calc_GetSavedKonten im Entwicklungsprojekt. Die vollständige Auszahlungslogik und kundenspezifische SQL-Erweiterungen sind nicht Bestandteil dieser Kontenbeschreibung. Regressionstests simulieren den SQL-Zugriff; sie ersetzen keinen Test gegen eine Kundeninstallation.
Siehe Berechnung von Zeiten, Kontenparameter in Einstellungen ZW und CALC_KONTEN.