Hallo
Also, vom Prinzip her stelle ich mir folgendes Datenbankformat vor
Wir haben 3 Tabellen, einmal Helfer-Zeit, Aufgaben und Zuweisung
Die Helfer-Zeit Tabelle kennt folgende Felder
Name (text): Name des Helfers der in personen eingetragen ist
Start (timestamp): Zeitpunkt ab wann der Helfer Zeit hat
Ende (timestamp): Zeitpunkt bis wann der Helfer Zeit hat
Commt (text): Möglichkeit ein Kommentar zu äusern, also z. B. so etwas
wie "Ist noch nicht sicher ob ich heute schon ankomme oder
morgen, deswegen bitte nur mit wem zusammen einteilen, der
die Arbeit zur Not falls was dazwischenkommt auch alleine
machen kann"
Die Aufgaben-Tabelle sieht vom Prinzip genauso aus
Id (serial): Eine ID, die diese Aufgabe beschreibt
Aufgabe (text): Text der die Aufgabe vom Prinzip her beschreibt
Anzahlmin (int4):
Anzahlmax (int4): Anzahl der Personen die für die Aufgabe gebraucht
werden (Minimum und Maximum)
Ort (text): Wo die Aufgabe stattfindet
Start (timestamp): Zeitpunkt ab wann es losgeht
Ende (timestamp): Zeitpunkt bis wann es dauert
Bemerkung (text): Zusatzinformationen, also z. B. wie "Mindestens eine
Person sollte mit Videokamera umgehen können"
Priorität (int4): Priorität der Aufgabe (Optional)
Beim CCC wurde es z. B. immer so gehandhabt, dass erst die Leute für
Sicherheitsengel eingeteilt wurden. Erst wenn da alle Posten besetzt
waren, die man brauchte wurden die anderen Schichten eingeteilt.
Die Zuweisungtabelle sieht wie folgt aus:
Id (int4): Referenz auf die Aufgabentabelle
Helfer (text): Name des Helfers der eingeteilt wurde
Start (timestamp): Zeitpunkt ab wann der Helfer die Aufgabe übernimmt
Ende (timestamp): Zeitpunkt bis wann der Helfer die Aufgabe übernimmt
Beispiel:
Es geht darum, dass eine Kasse besetzt werden soll. Es werden mindestens
immer 2 Leute gebraucht, da die Kasse immer besetzt sein soll, und einer
mal kurzeitig aufs Klo gehen können muss. Ab 12:00 Uhr Mittags bis 15:00
ist immer stärkerer Andrang, also braucht man da 3 Leute an der Kasse.
Dann könnte man die Aufgabentabelle wie folgt füllen:
Id: 1
Aufgabe: Kassendienst Frühschicht
Anzahlmin: 2
Anzahlmax: 3
Ort: Kasse
Start: 6.5.2002 8:00 Uhr
Ende: 6.5.2002 12:00 Uhr
Bemerkung:
Priorität: 1 (1 bedeutet hoch)
Id: 2
Aufgabe: Kassendienst Mittag
Anzahlmin: 3
Anzahlmax: 5
Ort: Kasse
Start: 6.5.2002 12:00 Uhr
Ende: 6.5.2002 15:00 Uhr
Bemerkung:
Priorität: 1
Id: 3
Aufgabe: Kassendienst Spätschicht
Anzahlmin: 2
Anzahlmax: 3
Ort: Kasse
Start: 6.5.2002 15:00 Uhr
Ende: 6.5.2002 20:00 Uhr
Bemerkung: Ende kann sich je nach Situation noch etwas herauszögern
Priorität: 1
Nun gehen wir von folgendem Szenario aus:
Helfer Erik ist den ganzen Tag lang an der Kasse
Helfer Joey kann ab 9:00 Uhr bis 14:00 Uhr
Helfer Peter kann den ganzen Tag, möchte aber wenn es geht viel
Freitzeit haben.
Helfer Klaus ist ab 12:00 Uhr da, und hat bis Abends Zeit
Man würde also die Zuweisungstabelle so ausfüllen:
Id: 1
Helfer: Erik
Start: 8:00 Uhr
Ende: 12:00 Uhr
Id: 2
Helfer: Erik
Start: 12:00 Uhr
Ende: 15:00 Uhr
Id: 3
Helfer: Erik
Start: 15:00 Uhr
Ende: 20:00 Uhr
Id: 1
Helfer: Joey
Start: 9:00 Uhr
Ende: 12:00 Uhr
Id: 2
Helfer: Joey
Start: 12:00 Uhr
Ende: 14:00 Uhr
Id: 2
Helfer: Klaus
Start: 14:00 Uhr
Ende: 15:00 Uhr
Id: 3
Helfer: Klaus
Start: 15:00 Uhr
Ende: 20:00 Uhr
Id: 1
Helfer: Peter
Start: 8:00 Uhr
Ende: 9:00 Uhr
So in etwa könnte dann die Zuweisung aussehen. Ich denke damit sollte
man in der Lage sein, alle Möglichen konstellationen zu berücksichtigen.
Alternativ könnte ich das noch so ausweiten, dass man Zweitbesetzungen
einteilen kann, wenn die Erstbesetzung ausfällt. Sag mir mal deine
Meinung dazu.
This archive was generated by hypermail 2.1.3 : Sun May 05 2002 - 13:09:31 CEST