-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Nachfolgende Beschreibung gibt eine Übersicht zur App. Die Beschreibungen sind teilweise sehr technisch. Die Detailseiten orientieren sich stärker an die Endnutzer.
Die Time Capture App ist eine Erweiterung für ERPNext/Frappe HRMS zur präzisen Erfassung von Arbeitszeiten auf Projektebene und Aufgabenbasis. Die App ermöglicht es Unternehmen, Arbeitszeiten systematisch zu erfassen, zu validieren und mit anderen ERPNext-Modulen zu verknüpfen.
- Zeiterfassung: Erfassung von Arbeitszeiten mit Check-in/Check-out für Mitarbeiter
- Projektbuchung: Zuordnung von Arbeitszeiten zu Projekten (Project) und Aufgaben (Task)
- Automatische Pausenberechnung: Berücksichtigung von gesetzlich vorgeschriebenen Pflichtpausen
- Integration mit Attendance: Automatische Erstellung und Synchronisation von Attendance-Dokumenten
- Timesheet-Erstellung: Automatische Generierung von Timesheet-Einträgen bei Submission
- Flexitime-Verwaltung: Berechnung und Verwaltung von Überstunden und Gleitzeit
- Erinnerungssystem: Optionale Erinnerungen für ungebuchte Zeiterfassungen
Die App setzt auf folgenden ERPNext/Frappe-Modulen auf:
- erpnext: Basis-Funktionalität für Projekte, Tasks und Timesheets
- hrms: Human Resource Management System für Employee, Attendance und Leave-Verwaltung
-
Time Capture: Haupt-DocType für die Zeiterfassung von Mitarbeitern
- Enthält Check-in/Check-out Zeiten
- Verwaltet Pausen (Pflichtpausen und angegebene Pausen)
- Bucht Arbeitszeiten auf Projekte und Tasks über Child Table Time Capture Log
- Ist submittable und erstellt bei Submission automatisch Attendance und Timesheet-Einträge
-
Freelancer Time Capture: Separate Zeiterfassung für Freelancer
- Ähnliche Funktionalität wie Time Capture, jedoch für Benutzer mit "Freelancer"-Rolle
- Erstellt ebenfalls Timesheet-Einträge bei Submission
-
Time Capture Log: Child Table von Time Capture
- Speichert einzelne Zeitbuchungen auf Projekte und Tasks
- Enthält Duration, Project, Task und Note
-
Time Capture Settings: Single-DocType für App-Konfiguration
- Einstellungen für Erinnerungen (Frequenz, Wochentag, etc.)
- Standard Activity Types für Timesheets
- Konfiguration von Pflichtpausen
-
Employee Expected Working Hours: Child Table von Employee
- Speichert erwartete tägliche Arbeitsstunden mit Gültigkeitsdatum (valid_from)
- Wird für Flexitime-Berechnungen verwendet
-
Flexitime Correction: Manuelle Korrekturen des Flexitime-Kontos
- Ermöglicht manuelle Anpassungen (z.B. Startsaldo bei Systemwechsel)
- Wird in Flexitime-Berechnungen berücksichtigt
-
Mandatory Break: Child Table von Time Capture Settings
- Definiert Schwellenwerte für Pflichtpausen basierend auf Arbeitsdauer
- Separate Konfiguration für Volljährige und Minderjährige
Die App erweitert folgende Standard-DocTypes mit Custom Fields:
-
Attendance:
- Expected Working Hours: Erwartete Arbeitsstunden
- Flexitime: Berechnete Überstunden/Gleitzeit
- Time Capture: Verknüpfung zur ursprünglichen Zeiterfassung
-
Employee:
- Expected Working Hours: Child Table mit erwarteten Arbeitszeiten
- Leave Policy: Verknüpfung zur Leave Policy
-
Timesheet:
- Time Capture: Verknüpfung zur ursprünglichen Zeiterfassung
- Freelancer Time Capture: Verknüpfung für Freelancer
- Freelancer User: Benutzer für Freelancer-Zeiterfassungen
-
Task:
- Is Active: Aktivitätsstatus
- Hourly Billed: Flag für abrechenbare Stunden
Employee
└── Expected Working Hours (Child Table)
└── Wird verwendet für Flexitime-Berechnung
Time Capture (täglich automatisch erstellt)
├── Time Capture Log (Child Table)
│ └── Projekt- und Task-Zuordnungen
└── Bei Submission:
├── Attendance (erstellt/aktualisiert)
│ └── Berechnet: working_hours, expected_working_hours, flexitime
└── Timesheet (pro Time Capture Log)
└── Verknüpfung zu Project, Task, Customer
-
HRMS Integration:
- Employee: Erweiterung um erwartete Arbeitszeiten und Leave Policy
- Attendance: Automatische Erstellung/Update bei Time Capture Submission
- Leave Application: Löschung von Time Captures bei Urlaub/Krankheit
-
Project Management Integration:
- Project: Zuordnung von Arbeitszeiten
- Task: Detaillierte Zeitbuchung mit Budget-Validierung
- Timesheet: Automatische Erstellung bei Submission
-
Scheduler Integration:
- Tägliche Erstellung von Time Capture-Dokumenten für aktive Mitarbeiter
- Tägliche Erstellung von "Absent"-Attendance für ungebuchte Time Captures
- Konfigurierbare Erinnerungen für ungebuchte Zeiterfassungen
Die App nutzt folgende Frappe-Hooks:
-
doc_events:
-
Attendance:
on_change,on_cancelfür Metriken-Berechnung und Time Capture-Verwaltung -
Employee:
before_validate,validatefür Expected Working Hours-Validierung
-
Attendance:
-
scheduler_events:
-
daily: Automatische Erstellung von Time Captures, Absent-Attendances und Erinnerungen
-
-
after_install: Setup von Custom Fields und Property Setters
- Employee-Rolle: Kann eigene Time Captures erstellen, bearbeiten und submitten
- System Manager / Accountant: Können Time Captures ohne Deadline-Beschränkung submitten
- Leave Approver: Kann Time Captures der zugewiesenen Mitarbeiter ohne Deadline-Beschränkung submitten
-
time_capture_controller.py: Zentrale Validierungs- und Erstellungslogik -
scripts/attendance.py: Attendance-Integration und Metriken-Berechnung -
scripts/employee.py: Employee-Validierung und Expected Working Hours-Verwaltung -
scripts/summary_utils.py: Flexitime-Berechnungen und Summary-Funktionen
-
public/js/utils.js: Summary-Dialog für Leave und Working Time -
public/js/employee.js: Employee-spezifische Frontend-Funktionen
-
templates/time_capture_reminder.html: E-Mail-Template für Erinnerungen
Die App stellt folgende Berichte zur Verfügung:
- Working Time Summary: Übersicht über Arbeitszeiten und Flexitime
- Leave and Working Time Summaries: Kombinierte Übersicht von Urlaub und Arbeitszeiten
- Project Time: Projektbezogene Zeitauswertung
- Working Time: Detaillierte Arbeitszeitanalyse
Für weitere Fragen: Kontaktieren Sie uns gerne: hallo@alyf.de