-
Notifications
You must be signed in to change notification settings - Fork 0
Dienstplan
Der Dienstplan ist die zentrale Ansicht von OpenSchichtplaner5. Hier werden Schichten geplant, Abwesenheiten eingetragen und der Überblick über die Personalplanung behalten.

Der Dienstplan zeigt eine Matrix: Mitarbeiter in den Zeilen, Tage des Monats in den Spalten.
| Element | Darstellung |
|---|---|
| Wochenende (Sa/So) | 🟦 Hellblau hinterlegt |
| Heutiger Tag | 🔵 Blau hervorgehoben |
| Feiertage | ★ Farbmarkierung + Tooltip |
| Schicht/Abwesenheit | Farbige Badges mit Kürzel |
| Zyklusdienst | ↻-Kennzeichnung (generiert aus dem Schichtmodell) |
| Tooltips | Hover auf Badge → Schichtname, Zeiten, Abwesenheitsgrund |
Eine Zelle (Mitarbeiter × Tag) kann mehrere Einträge enthalten — z. B. einen Dienst und eine (Teiltags-)Abwesenheit am selben Tag. Die Einträge werden in der Zelle gestapelt dargestellt; das Kontextmenü bietet Aktionen (Bearbeiten, Löschen …) je Eintrag an.
Beim Eintragen (per Klick oder Drag & Drop) in ein bereits belegtes Feld erscheint der Konfliktdialog „Feld bereits belegt" mit drei Optionen:
| Option | Wirkung |
|---|---|
| Zusätzlich eintragen | Der neue Eintrag wird ergänzt (nicht möglich, wenn bereits ein Dienst vorhanden ist und ein zweiter Dienst eingetragen werden soll) |
| Vorhandene ersetzen | Bestehende Einträge werden durch den neuen ersetzt |
| Abbrechen | Keine Änderung |
Mit dem Häkchen „immer so" lässt sich die gewählte Strategie merken — der Dialog erscheint dann nicht mehr. Die gemerkte Strategie kann auf der Seite Einstellungen wieder auf „immer fragen" zurückgesetzt werden.
Ist ein Personalbedarf definiert, zeigt die Kopfzeile des Dienstplans für jeden Tag eine bedarfsbasierte Ampel:
| Status | Farbe | Bedeutung |
|---|---|---|
under |
🔴 Rot | Unterbesetzt — weniger Mitarbeiter eingeteilt als Mindestbedarf |
ok |
🟢 Grün | Soll erfüllt — Besetzung im Min/Max-Rahmen |
over |
🟠 Orange | Überbesetzt — mehr Mitarbeiter als Maximum |
none |
(keine Ampel) | Für diesen Tag ist kein Bedarf definiert |
Der Tooltip der Ampel zeigt die Details (z. B. „3/4 Mitarbeiter besetzt"). Grundlage sind der wöchentliche und der datumsspezifische Personalbedarf je Gruppe und Schichtart.
- Zeigt die Auslastung jedes Mitarbeiters als Fortschrittsbalken
- Auslastungsgrad basiert auf Soll-/Ist-Stunden
- Aktivierbar über Checkbox „Auslastung" in der Filterleiste
- Alphabetische Buchstabenleiste unterhalb der Filterzeile
- Ein Klick auf einen Buchstaben filtert Mitarbeiter nach Anfangsbuchstaben
- Zwei Mitarbeiter können Schichten tauschen
- Dialog zeigt beide Schichten zur Bestätigung
- Gesamte Woche für einen Mitarbeiter kopieren
- Zielwoche(n) auswählen und übertragen
- Empfehlungen für freie Slots
- Berücksichtigt Qualifikationen, Arbeitszeit-Limits und Fairness
- Legende am unteren Rand des Dienstplans: Heute, Wochenende, ★ Feiertag, ↻ Zyklusdienst, Besetzungsampel
- Alle aktiven Schichtarten mit Farbe und Kürzel
| Aktion | Beschreibung |
|---|---|
| ◀ / ▶ Pfeile | Monat vor/zurück wechseln |
| Heute | Sprung zum aktuellen Monat |
| Strg+G | Datumssprung — direkt zu einem beliebigen Datum |
| Monat-/Jahr-Dropdown | Direkt zum gewünschten Monat/Jahr springen |
| Gruppen-Filter | Nur Mitarbeiter einer bestimmten Gruppe anzeigen |
| 🔍 Suche (Strg+F) | Mitarbeiter-Suche nach Name |
| A–Z Filter | Schnellfilter nach Anfangsbuchstabe |
| Sortierung | Name A-Z / Z-A / Nummer ↑↓ |
- Klicke auf eine leere Zelle (Mitarbeiter × Tag)
- Der Schicht-Dialog öffnet sich
- Wähle die Schichtart aus der Dropdown-Liste
- Optional: Arbeitsplatz zuweisen, Notiz hinzufügen
- Klicke Speichern
Rechtsklick auf eine Zelle öffnet das Kontextmenü:
📋 Schicht eintragen
🚫 Abwesenheit eintragen
✏️ Bearbeiten
🗑️ Löschen
🔄 Schicht tauschen
📋 Kopieren / Einfügen
Bei Zellen mit mehreren Einträgen werden die Aktionen je Eintrag angeboten.
- Badge auf andere Zelle ziehen → Schicht verschieben
- Mit gedrückter
Alt-Taste → Schicht kopieren - Beim Ziehen auf ein belegtes Feld erscheint der Konfliktdialog
↻ Zyklusdienste (aus Schichtmodellen generiert) sind gekennzeichnet und können nicht direkt verschoben oder gelöscht werden — sie lassen sich nur durch einen manuellen Eintrag überschreiben.
- Rechtsklick auf die Zelle → „Abwesenheit eintragen"
- Abwesenheitsart wählen (Urlaub, Krank, Sonder-UZ …)
- Tageszeit wählen: ganztägig, vormittags, nachmittags oder stundenweise (mit Zeitfenster) — siehe Urlaubsverwaltung
- Optional: Mehrtägiger Datumsbereich
- Speichern
Welche Aktionen ein Benutzer im Dienstplan ausführen darf, hängt neben der Rolle (Admin/Planer/Leser) von den granularen Benutzerrechten ab — z. B. „Dienste schreiben", „Abwesenheiten schreiben" oder „Änderungen in der Vergangenheit". Gesperrte Zellen zeigen einen erklärenden Tooltip. Details: Benutzerverwaltung
Drucken-Button oben rechts:
- Sidebar und Buttons ausgeblendet
- Tabelle für A4-Querformat optimiert

Der Einsatzplan zeigt einen einzelnen Tag als Zeitleiste mit Beginn-/Endzeiten als Balken. Auch hier sind Zyklusdienste gekennzeichnet.
Die Jahresuebersicht zeigt das gesamte Jahr eines Mitarbeiters als Tagesraster (12 Monate × 31 Tage) mit den Dienstplan-Farben — ein Klick auf eine Zelle öffnet den Monat im Dienstplan. Alternativ steht der Modus „Zusammenfassung" zur Verfügung.
| Kürzel | Aktion |
|---|---|
← / →
|
Monat wechseln |
Strg+F |
Mitarbeiter-Suche |
Strg+G |
Datumssprung |
Strg+Z / Strg+Y
|
Rückgängig / Wiederherstellen |
Esc |
Dialog/Suche schließen |
Enter |
Eintrag speichern |
Del |
Markierten Eintrag löschen |
Weiter: Mitarbeiter — Mitarbeiterverwaltung im Detail
Home — Startseite
- Installation — Installation & Setup
- Erste-Schritte — Quick Start Guide
- Onboarding-Wizard — 🧭 Ersteinrichtung
- Onboarding-Checkliste — ✅ Setup-Fortschritt
- Dashboard — Charts, Widgets & Performance
- Dienstplan — Dienstplan, Einsatzplan
- Kalender-Ansicht — 🗓️ Monatskalender
- Drag-and-Drop — 🖱️ Drag & Drop im Kalender
- Recurring-Shifts — 🔁 Wiederkehrende Schichten
- Schichtplan-Kommentare — 📝 Tagesnotizen
- Dienstplan-Vorlagen — 📋 Templates
- Undo-Redo — ↩️ Rückgängig/Wiederherstellen
- Jahresuebersicht — Jahresübersicht (Tagesraster)
- Personaltabelle — 📋 Kennzahlen-Auswertung
- Personalbedarf — 📌 Min/Max & Besetzungsampel
- Schichtwunsch-Kalender — 💬 Persönlicher Schichtkalender
- Schichtwuensche — Schichtwünsche & Sperrtage
- Verfuegbarkeit — 📅 Mitarbeiter-Verfügbarkeit
- Tauschboerse — 🔄 Schicht-Tauschbörse
- Urlaubsverwaltung — Urlaub & Abwesenheiten
- Jahresabschluss — 🎯 Überträge & Resturlaub-Verfall
- Ueberstunden — Überstunden-Dashboard & Tracking
- Arbeitszeit-Regelwerk — ⚖️ Arbeitszeitregeln
- Team-Kalender — 🗓️ Team-Kalender
- Team-Uebersicht — 👥 Team-Übersicht
- Berichte — Alle Berichte (20+)
- Scheduled-Reports — 📤 Automatische Berichte
-
Konflikt-Report —
⚠️ Konflikterkennung - Abwesenheits-Statistiken — 📊 Abwesenheitsauswertung
- Mitarbeiter-Timeline — 📅 Zeitachse
- Fairness-Score — 📐 Fairness-Score
- Mitarbeiter-Vergleich — ⚖️ Mitarbeiter-Vergleich
- Analytics-Charts — 📈 Analytics & Charts
- Jahresrueckblick — 🗓️ Jahresrückblick
- Import-Export — CSV/XLSX Import & Export
- Bulk-Import — 📦 Massenimport (Drag&Drop)
- Export-Scheduler — 📅 Automatischer Berichtsversand
- iCal-Export — 📅 iCal & Kalender-Abo
- Drucken — Drucken & PDF-Export
- Druckvorschau — Interaktive Print-Vorschau
- Mitarbeiter — Personal & Gruppen
- Foto-Upload — 📸 Mitarbeiter-Profilfotos
- Stammdaten — Schichten, Modelle, Zuschläge
- Feiertage — 🎉 Feiertage & Österreich-Import
- Kompetenz-Matrix — 📊 Qualifikations-Matrix
- API-Versionierung — 🔀 Versionierte API-Routes
- Webhook-System — 🔗 Webhooks
- Echtzeit-Updates — 📡 SSE Live-Updates
- Notification-Settings — 🔔 E-Mail-Einstellungen
- Multi-Tenant — 🏢 Mandantenverwaltung
- Benutzerverwaltung — Benutzer & Rechte
- Zwei-Faktor-Authentifizierung — 🔐 2FA (TOTP)
- Administration — Backup & Wartung
- Datenbank-Backup — 💾 Backup & Restore
- Rate-Limit-Dashboard — 🚦 Rate-Limit Monitoring
- Protokoll — Aktivitätsprotokoll
- Keyboard-Shortcuts — ⌨️ Tastaturkürzel
- Keyboard-Navigation — ⌨️ Vollständige Tastatur-Bedienbarkeit
- Security — 🔒 Sicherheit, CSP, CORS
- Health-Check — 🏥 Systemmetriken
- Konfiguration — ⚙️ ENV-Variablen
- PostgreSQL-Support — 🐘 PostgreSQL-Datenbank
- Auto-Migration — 🔄 Auto-Schema-Migration
- Datenbankformat — Technisches: DBF & SQLite
- ORM-Spiegel — 🪞 ORM-Spiegel (Admin)
- Error-Monitoring — 🔍 Logging & Monitoring
- Self-Service-Portal — 👤 Mitarbeiter Self-Service
- Dark-Mode — 🌙 Dark Mode (System-Preference)
- Command-Palette — 🔍 Schnellsuche (Ctrl+K)
- In-App-Changelog — 🔔 Changelog
- PWA — 📲 Progressive Web App
- Sprachumschalter — 🌍 DE/EN i18n
- Library (lib) — Datenbankformat & CLI
- REST-API — Endpunkt-Referenz