WorkSchedule (Werkrooster)
De WorkSchedule-entiteit definieert werkroosters die bepalen op welke dagen en tijden er gewerkt wordt. Werkroosters worden gebruikt bij het plannen van werkorders, het berekenen van doorlooptijden en de SLA-bewaking.
Entiteitsnaam: WorkSchedule
Databasetabel: WorkSchedule
Primaire sleutel: WSID (nvarchar 8)
Belangrijkste propertiesbewerken
| Property | Type | Kolom | Omschrijving |
|---|---|---|---|
| Id | UltimoString(8) | WSID | Werkrooster-ID |
| Description | UltimoString(512) | WSDESCR | Omschrijving |
| BaseWorkSchedule | WorkSchedule | WSPARTOFWSID | Basisrooster (overerving) |
| Parts | List[WorkSchedulePart] | WSPWSID | Uitzonderingsdagen |
| PartDays | List[WorkSchedulePartDay] | WSPDWSID | Werkdagen (ma-zo) |
| PartWeeks | List[WorkSchedulePartWeek] | WSPWWSID | Uitzonderingsweken |
WorkSchedulePartDay (Werkdag)bewerken
Definieert de standaard werktijden per weekdag.
Primaire sleutel: WSPDWSID + WSPDDAY (composiet: rooster + dag)
| Property | Type | Kolom | Omschrijving |
|---|---|---|---|
| Day | Day | WSPDDAY | Weekdag |
| WorkKind | WorkKindEntry | WSPDWORKKIND | Werksoort: Niet-werkend (0) of Afwijkend werk (1) |
| NonDefFrom1..5 | Time? | WSPDNONDEFFROM1..5 | Starttijden werkblokken |
| NonDefTill1..5 | Time? | WSPDNONDEFTILL1..5 | Eindtijden werkblokken |
Per dag kunnen tot 5 werkblokken worden gedefinieerd (bijv. ochtend + middag).
WorkSchedulePart (Uitzonderingsdag)bewerken
Definieert afwijkende dagen (bijv. feestdagen, extra werkdagen).
Primaire sleutel: WSPWSID + WSPLINEID (composiet)
| Property | Type | Kolom | Omschrijving |
|---|---|---|---|
| Start | Date | WSPSTART | Datum |
| WorkKind | WorkKindEntry | WSPWORKKIND | Niet-werkend (0) of Afwijkend werk (1) |
| NonDefFrom1..5 | Time? | WSPNONDEFFROM1..5 | Starttijden werkblokken |
| NonDefTill1..5 | Time? | WSPNONDEFTILL1..5 | Eindtijden werkblokken |
WorkSchedulePartWeek (Uitzonderingsweek)bewerken
Definieert afwijkende weken (bijv. stopweken, vakanties).
Primaire sleutel: WSPWWSID + WSPWWEEK (composiet: rooster + weeknummer)
| Property | Type | Kolom | Omschrijving |
|---|---|---|---|
| Week | Int16 | WSPWWEEK | Weeknummer |
| WorkKind | WorkKindEntry | WSPWWORKKIND | Niet-werkend (0) of Afwijkend werk (1) |
| NonDefFrom1..5 | Time? | WSPWNONDEFFROM1..5 | Starttijden werkblokken |
| NonDefTill1..5 | Time? | WSPWNONDEFTILL1..5 | Eindtijden werkblokken |
Hoe werkt het rooster?bewerken
Het werkrooster wordt in lagen opgebouwd:
- WorkSchedulePartDay: De standaard werktijden per weekdag (basis).
- WorkSchedulePartWeek: Afwijkingen per week (overschrijft de weekdaginstelling).
- WorkSchedulePart: Afwijkingen per specifieke datum (overschrijft alles).
- BaseWorkSchedule: Een rooster kan een basisrooster overerven, met alleen de afwijkingen gedefinieerd.
Relaties met andere entiteitenbewerken
| Verwijst naar | Omschrijving |
|---|---|
| employee | Medewerkerrooster (via EmployeeWorkSchedule) |
| department | Afdelingsrooster |
| job | Doorlooptijdberekening |
| pm-job | PO-planning met roostercheck |
| contract | SLA-bewaking werktijden |
Tips voor consultantsbewerken
- SLA-bewaking: Het werkrooster bepaalt wanneer de SLA-klok loopt. Buiten werktijden telt de klok niet mee.
- Feestdagen: Gebruik WorkSchedulePart met
WorkKind = 0(Niet-werkend) voor feestdagen. Of gebruik de FeastDay-entiteit als bron. - BaseWorkSchedule: Maak een basisrooster (bijv. "Standaard 8-17") en leid specifieke roosters af met alleen de afwijkingen.
- 5 werkblokken: Per dag zijn tot 5 werkblokken mogelijk, bijv. voor ploegendienst of onderbroken werkdag (ochtend + middag).
- PmJob-planning: Met
UseWorkScheduleForPlanning = trueop pm-job wordt het werkrooster meegenomen bij het berekenen van de jobduur.
Zie ookbewerken
- employee - Medewerkers
- department - Afdelingen
- job - Werkorders
- contract - SLA-bewaking