Zum Inhalt springen

Import der Arbeitszeiten

import { Tabs, TabItem } from ‘@astrojs/starlight/components’;

Dieser Import ermöglicht das Einspielen von Arbeitszeit-Einträgen sowie die optionale Erstellung von Produktivitätsdaten.

FeldDatentypNicht NULLBemerkung
wkt_external_idVARCHAR(32)Externe ID: Eindeutiger Schlüssel für den Zeiteintrag
usr_external_idVARCHAR(32)Externe ID des Benutzers
tcl_external_idVARCHAR(32)Externe ID der Zeitklasse (z.B. ‘auto’)
ord_external_idVARCHAR(32)Externe ID des Auftrags (für Produktivität)
worktime_dateDATEDatum der Arbeitszeit
worktime_startINTEGERStartzeit (Minuten seit Mitternacht)
worktime_pauseINTEGERPause in Minuten
worktime_endINTEGEREndzeit (Minuten seit Mitternacht)
worktime_durationINTEGERDauer in Minuten
worktime_textVARCHAR(255)Text für den Arbeitszeit-Eintrag
productivity_textVARCHAR(255)Text für den Produktivitäts-Eintrag
stornoBOOLEANWenn true, wird dieser Eintrag als Storno behandelt
  1. Arbeitszeit-Import: Sätze werden in die Tabelle t_worktime importiert, sofern:
    • storno auf false steht.
    • Die wkt_external_id noch nicht im System vorhanden ist (keine Updates möglich).
    • Der Zeitraum für den Benutzer noch nicht final verbucht/abgerechnet ist.
  2. Produktivität: Wenn eine ord_external_id geliefert wird, wird zusätzlich ein Eintrag in t_productivity erzeugt.
  3. Fehlerprotokollierung: Sätze, die nicht importiert werden konnten (z.B. wegen Storno, fehlender ID oder bereits erfolgter Verbuchung), werden in der Tabelle i_worktime_not_imported zur Analyse gespeichert.
  • Inkrementeller Import (Delta): Bestehende Einträge mit der gleichen wkt_external_id werden nicht überschrieben. Änderungen müssen im Quellsystem vorgenommen werden oder durch Stornierung und Neuanlage erfolgen.
  • Storno-Logik: Sätze mit storno = true werden vom eigentlichen Import ausgeschlossen und nur protokolliert.
  • Dauer vs. Start/Ende: Das System nutzt vorrangig die gelieferte worktime_duration.