Mit Plantafeln in Nuclos lassen sich grafische Oberflächen für die Planung beliebiger Ressourcen auf einer Zeitschiene konfigurieren. Es lassen sich beliebig viele Plantafeln für beliebig viele Arten von Ressourcen definieren. Ressourcen können z.B. sein: Personen, Räume, Fahrzeuge, Maschinen, Arbeitsplätze, Produktionslinien, etc. Alle Aspekte einer Plantafel sind frei konfigurierbar:
Die tägliche Nutzung einer Plantafel durch die User bietet vielfältige Funktionen:
Weiterführend lassen sich z.B. die Generierung von Buchungen (z.B. Produktionsaufträge aus Kundenaufträgen) mithilfe von Regeln (Regelwerk) leicht automatisieren. Ebenso lassen sich Regeln definieren, die beim Erstellen, Ändern, Verschieben oder Löschen von Buchungen in einer Plantafel automatisch ausgeführt werden (z.B. Konfliktprüfungen, Versand von Benachrichtigungen, etc.) |
Nachfolgend eine Erläuterung anhand eines Fallbeispieles: Reservierung von Abteilungsfahrzeugen
Die Ressource ist der Kern der Ressourcenplanung. Auf diese werden später die Zeitbuchungen durchgeführt.
Beispiel: Abteilungsfahrzeug
Um dieses Businessobjekt für die Ressourcenplanung sinnvoll verwenden zu können benötigt sie folgende Felder:
Beispiel: Fahrzeugbuchung
(Konfiguration Ressourcenplanung)
Ein Wizard führt sie durch die Einstellungen für die Ressourcenplanung.
Vergeben Sie einen internen Namen oder wählen Sie aus einer bestehenden Planung.
Tragen Sie eine Beschriftung und einen Menüpfad, unter dem die Planung später aufrufbar ist, ein.
Wählen Sie das Ressourcen-Businessobjekt mit Sortierfeld und die Buchungs-Businessobjekt mit der entsprechenden Bezeiehung zur Ressource aus. Unter Datum von, Datum bis legen sie die Datumsfelder in dem Buchungsbusinessobjekt fest, die für die Zeitplanung herangezogen werden sollen. Entsprechend dazu können Sie die Felder für die Zeitabschnitte als Uhrzeit fest, falls diese in der Buchungsbusinessobjekt vorhanden sind. In der Tabelle Zeitabschnitte können Sie die bebuchbaren Zeitskalen festlegen, also z.B. im Rythmus von 1/2 Stunde.
Im Bereich Darstellung können Sie die Anzeige der Ressource, der Buchung und eine Legende festlegen. Dabei können die Inhalte von Feldern als Variable angegeben werden:
Der Standard Betrachtungs-Zeitraum wird immer abhängig von HEUTE eingestellt. Hierfür stehen 3 Funktionen und 4 Wertangaben zur Verfügung: - Addieren mit "+" - Subtrahieren mit "-" - Zum Anfang("[") oder Ende("]") einer Wertangabe springen mit "." - "t" steht für Tag (bzw. "d" für Day) - "w" steht für Woche - "m" steht für Monat - "j" steht für Jahr (bzw. "y" für Year)
Der Ausdruck wird von links nach rechts verarbeitet.
Es folgen ein paar Beispiele zum Verständnis. Zeitraum aktueller Monat: Von = .m[ Bis = .m]
Zeitraum aktuelles Jahr: Von = .j[ Bis = .j]
Zeitraum aktueller bis Ende nächsten Monat: Von = .m[ Bis = +1m.m]
Zeitraum aktueller bis 15. des nächsten Monats: Von = .m[ Bis = +1m.m[+14t (Bis Beispiel HEUTE = 03.01.2011 Berechnung +1m = 03.02.2011 Berechnung .m[ = 01.02.2011 Berechnung +14t = 15.02.2011)
Zeitraum 15. des vorherigen Monats bis 31.12. des aktuellen Jahres: Von = -1m.m[+14t Bis = .j]
Zeitraum 15. des vorherigen Monats bis 15. des nächsten Monats: Von = -1m.m[+14t Bis = +1m.m[+14t
In diesem Bereich können optional zusätzliche Skripte (in Groovy) ausgeführt werden. Mehr dazu im Kapitel Skriptcode (s.u.).
Die Konfiguration ist abgeschlossen.
In der Ressourcenplanung können außerdem Nachfolgebeziehungen bzw. Meilensteine angezeigt werden.
Die Grundlage hierfür bildet ein Businessobjekt, die zwei Referenzfelder auf des jeweilige Buchungsbusinessobjekts enthält. Ein Beispiel wäre die Abbildung eines kritischen Pfades mit Vorgängern und Nachfolgern. Diese Referenzen werden in der Ressourcenplanung durch eine Verbindung dargestellt.
Darstellung:
Das Buchungsbusinessobjekt kann optional als Meilenstein statt als Balken angezeigt werden. Dazu benötigt man ein Booleanfeld, das im "Meilensteinfeld" ausgewählt wird. Die Anzeige erfolgt dann als Raute statt als Balken.
Die Wochenenden werden Rot dargestellt, der aktuelle Tag wird Grün dargestellt.
Sie können nun neue Zeiten eintragen. Markieren Sie eine oder mehrere Zellen (durch Klicken, gedrückt Halten und Ziehen der Maus) und wählen Sie dann aus dem Kontextmenü Hinzufügen. Die Maske des BuchungsBusinessobjekt wird geöffnet und die jeweiligen Felder sind bereits mit den Zeiten vorgefüllt.
Nach dem Bearbeiten und Speichern dieses Datensatzes wird die Buchung grafisch in der Ressourcenplanung angezeigt.
Diese Blöcke können mit Drag&Drop auf andere Ressourcen oder andere Zeitblöcke verschoben werden. Desweiteren können die Termine auch durch Vergrößern oder Verkleinern der Blöcke verändert werden.
Nachfolgend ein Dummy-Groovy-Skript. Definiert zwei Methoden:
def formatCell(clct, cell) { if (clct['meinFeld'] == 5) { cell.color = "#ff9999"; cell.toolTip = "Text"; } } def formatBg(clct, interval, bg) { if (interval.start <= new Date()) { bg.color = "#ffccff" } } ODER import java.text.SimpleDateFormat def formatCell(clct, cell) { Date currentDate = new Date(); def formatter = new SimpleDateFormat("dd/MM/yyyy"); String formatedDate = formatter.format(currentDate); if (clct['halbertag'] == true) { cell.color = "#ee8625"; cell.text = clct['intmitarbeiter']+" ("+clct['von'] +" halber Tag "+clct['uhrzeit']+")"; }else{ cell.color = "#398db7"; cell.text = clct['intmitarbeiter'] +" ("+formatedDate+" - "+clct['bis']+")"; } } |
Die Namen der Methoden/Argumente sind egal (der Methodenname muss in den Einstellungen dann referenziert werden). Die Collectables-Attribute werden via clct['xxx'] angesprochen. Farben können entweder als Color-Objekt oder als String mit der Hex-Syntax "#rrggbb" gesetzt werden.
Einige (Syntax-)Fehler werden beim Speichern des Skriptes erkannt. Aufgrund der Dynamik von Groovy können aber fehlende Properties etc. erst zur Laufzeit erkannt werden. Das Öffnen der Ressourcenplanung sollte dann den Fehler anzeigen und der betroffene Renderer wird deaktiviert.
Verfügbare Methoden des cell Elements:
Verfügbare Methoden des bg (Background) Elements:
Beispiel:
Nach der Definition der Skripte können Sie die entsprechenden Zuweisungen zum Ressourcen- bzw. Buchungsbusinessobjekt oder für den Hintergrund vornehmen.