![]() |
Urlaubsplaner
Hallo zusammen,
wie würdet Ihr bei euch eine Tabelle für einen Urlaubsplaner aussehen und wie macht Ihr die SQL - Abfrage, wenn in den Zeilen die Monate und in den Spalten die Tage stehen sollen. Gruss Holger |
Re: Urlaubsplaner
Du stellst Fragen wie "Wie baut man ein Auto, wenn man damit fahren will?"
Präzisiere bitte deine Frage. |
Re: Urlaubsplaner
hola,
was möchtest du jetzt hören? ein feld user_id, ein feld vondatum, ein feld bisdatum? mfg Jonny |
Re: Urlaubsplaner
So könnte man ja die Spalten nennen,
USER_ID, VON, BIS und wie bekomme ich das nun mit SQL in eine vernünftige Form ? So dass die Monate in Zeilen angeordnet und die Tage in Spalten angeordnet sind. Gruss Holger P.S.: Vereinfacht nehmen wir erstmal nur einen User |
Re: Urlaubsplaner
Uh.
Datendarstellung <> Datenordung! Ich würde dringendst davon abraten, solche Schweinereien wie eine Tabelle mit Monaten als Zeilen und einzelnen Tagen als Spalten via einem berechneten SQL-Statement auszugeben. Nimm zur Darstellung am besten eine Gantt-Diagramm-Komponente (z.B. von TMS). Da brauchst Du in der Regel nur TDateTime bzw. TTimeSpan-Werte reinzuwerfen und gut ist. Diese kannst Du dann mit Startwert und Endwert auch so in die DB werfen. |
Re: Urlaubsplaner
Wo bekomme ich sowas her, oder ist das bei Delphi schon dabei ?
Gruss Holger |
Re: Urlaubsplaner
Von TMS ;-)
|
Re: Urlaubsplaner
Ist das kostenlos ?
Gruss Holger |
Re: Urlaubsplaner
Also wenn Du 75 € springen lassen kannst ist die TPlanner - Komponente von
![]() Ansonsten kann man mit dem mitgelieferten TChart im Gantt-Modus auch was machen, aber das erfordert schon ein bisschen Eigenarbeit, wenn man dann Zeiträume auch verschieben will etc. Aber ich würde sagen, da die Komponente mit Support und Source kommt: Bevor man selber drei, vier Manntage investiert um sich sowas selber hinzubasteln und man damit letzten Endes teurer ist als die 75 €, lohnt es sich schon das zu kaufen. Zumindest rentiert es sich, die Sample applications mal anzugucken. |
Re: Urlaubsplaner
|
Re: Urlaubsplaner
ich denke du würdest für deine zwecke auch gut mit dem stringgrid und canvas fahren.
links in der fixedCol die monate, in der fixedRow die tage. dann kannst du die datenmenge quasi selber steuern in dem du in einer doppelten schleife über das grid läufst. mfg Jonny |
Re: Urlaubsplaner
Ich denke das mit dem Stringgrid gefällt mir am besten.
Könntest Du mir ansatzweise zeigen, wie Du die schleife bauen würdest ? Würdest Du auch, in der Datenbank nur die Spalten VON und BIS nehmen ? Gruss Holger |
Re: Urlaubsplaner
die schleife sieht so aus
Delphi-Quellcode:
ich gehe mal davon aus, dass der urlaubsplaner für mehr als einen user gedacht ist. ich habe bei meinem planer einen
for aRow := 0 to sgPlaner.RowCount - 1 do
begin for aCol := 0 to sgPlaner.ColCount - 1 do begin // end; end; datensatz pro tag genommen, wobei der key sich aus user_id und datum zusammensetzt. mfg Jonny |
Re: Urlaubsplaner
Und dann machst Du also jedesmal eine Datenbank - Abfrage an der Stelle die Du auskommentiert hast ?
Gruss Holger |
Re: Urlaubsplaner
nein, ich hole mir einmal die datenmenge und speichere diese dann in objekten die ich dann in der schleife den einzelnen zellen des stringgrids zuweise. so werden die datenbankzugriffe minimiert.
mfg Jonny |
Re: Urlaubsplaner
Hallo Holger,
zusätzlich würde ich vllt. nachfolgendes (konzeptionell zumindestens) mit in die Planung einfließen lassen: Umschalten auf eine Gruppenübersicht.... Spalten jeweils nach Monaten gruppiert (eine Spalte=1 Tag) und in den Zeilen dann die einzelnen Mitarbeiter. Diese jeweils meintwegen nach Abteilung gruppierbar und sortiert nach Namen... Dann sieht man auf einen Blick, wer abwesend ist und die Entscheidung für geplanten Urlaub o.ä. fällt wesentlch leichter... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz