Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Erstellen einer Anwesendheitsliste (https://www.delphipraxis.net/158972-erstellen-einer-anwesendheitsliste.html)

Capa 9. Mär 2011 20:41

Erstellen einer Anwesendheitsliste
 
Hi,

ich muss eine Liste erstellen mit Namen und dann danaben die Monate(oder auch nur je einen monat) mit den
einzelnen tagen wo ich dann mit hilfe einer Farbe und einem kleinen Text (K/U/1/0,5) den Status der jeweiligen Person angeben kann. Status im Sinne von Krank, Urlaub, Urlaub geplant, usw.(die liste sollte
man erweitern können)

Ich hab hier schon so einiges ausprobiert aber irgendwie ist nix dabei was mir da wirklich gefällt.
Im moment haben wir eine Excelliste wo wir das eingeben aber das kann ich bei einer Netzwerk-DB-Variante
ja nun nicht mehr nutzen.
Allerdings wäre es zur einfachen Nutzung für meinen Chef einfacher wenn es nicht sehr viel anderst ist
als die bisherige Excelliste.

Habs mal mit Stringgrid versucht aber irgendwie kann ich nur Text oder nur Farbe einer Zelle übergeben.

Hat da einer von euch zufällig eine idee wie man das realisieren könnte?

Komponenten, Tips, etc

Mfg Capa

P.S.: Sorry wenn das Topic nicht so ganz aussagekräftig ist aber mir ist nicht wirklich was besseres
eingefallen :/

WM_CLOSE 9. Mär 2011 20:49

AW: Erstellen einer Anwesendheitsliste
 
Wie wäre es mit einem DBControlGrid?

Capa 9. Mär 2011 21:00

AW: Erstellen einer Anwesendheitsliste
 
mhh sollte vielleicht noch dazu sagen das ich mit mysqldirect oder wie auch immer der name
war arbeite, da wäre eine DB Komponente ein wenig umständlich einzubinden.

alfold 9. Mär 2011 21:16

AW: Erstellen einer Anwesendheitsliste
 
Und was ist MySQL ? Vermute eine Datenbank!
Wie Zeigt man Daten an?
Je nach dem wie mann es brauch als Tabellenform in ein Grid alla Excel oder in Delphi in ein DBGrid oder auch anders wenn man was selber schreibt!

Gruss alfold

-187- 10. Mär 2011 05:38

AW: Erstellen einer Anwesendheitsliste
 
Zitat:

Ich hab hier schon so einiges ausprobiert aber irgendwie ist nix dabei was mir da wirklich gefällt.
Im moment haben wir eine Excelliste wo wir das eingeben aber das kann ich bei einer Netzwerk-DB-Variante
ja nun nicht mehr nutzen.
Warum kannst du mit einer Excelliste nicht im Netzwerk arbeiten ?

Wenn du wirklich ein eigeneständiges Tool dafür basteln möchtest dann sollte es aufjedenfall eine DB Anwendung werden. StringGrid + Text File = Schlechte Idee...
Als Datenbank Engine würde ich die Embedded Firebird DB Engine empfehlen. Ich arbeite selber damit und bin auch echt zufrieden.

PS: Bleib bei Excel bzw. beschreib erstmal warum Excel für euch nicht mehr in Frage kommt ?

Oder beschreib ausführlicher was du überhaupt machen willst, schließlich hast du absolut nichts zur Netzwerkkommunikation angegeben :)

Sir Rufo 10. Mär 2011 06:20

AW: Erstellen einer Anwesendheitsliste
 
Excel kann nicht von mehreren gleichzeitig benutzt werden (gleiches Problem wie mit StringList und TextFile)

Firebird Embedded und gleichzeitiger Zugriff von mehreren Personen - geht auch nicht

Also einen zentralen DB-Server oder eine Web-Anwendung
(und anscheinend läuft da ja auch schon ein MySQL Server)

mkinzler 10. Mär 2011 07:05

AW: Erstellen einer Anwesendheitsliste
 
Zitat:

Firebird Embedded und gleichzeitiger Zugriff von mehreren Personen - geht auch nicht
Ab FireBird 2.5 schon, da die embedded nun auf der SuperClassic basiert

-187- 10. Mär 2011 07:07

AW: Erstellen einer Anwesendheitsliste
 
Hmm ich habs selber noch nicht gemacht aber ich war auch der Meinung das mehrere Benutzer auf die DB zugreifen können :D

Sir Rufo 10. Mär 2011 07:18

AW: Erstellen einer Anwesendheitsliste
 
Zitat:

Zitat von -187- (Beitrag 1087186)
Hmm ich habs selber noch nicht gemacht aber ich war auch der Meinung das mehrere Benutzer auf die DB zugreifen können :D

ok, geb mich da geschlagen ... aber warum ein weiteres DBMS einführen, wenn schon eines vorhanden ist (MySQL)?

-187- 10. Mär 2011 07:35

AW: Erstellen einer Anwesendheitsliste
 
Naja ich konnte seinen Aussagen nicht entnehmen was er mit MYSQL bereits macht ?! Man kann hier nur raten... Firebird war meine Empfehlung weil ich damit bisher gute Erfahrungen gemacht habe.

Mal was anderes: Warum müssen mehrere Benutzer gleichzeitig die Anwesendheitsliste bearbeiten. Vielleicht gibt es ja eine sinnvollere Lösung. "Schreiben" kann sowieso immer nur einer... das sollte klar sein.

Sir Rufo 10. Mär 2011 08:49

AW: Erstellen einer Anwesendheitsliste
 
Zitat:

Zitat von Capa (Beitrag 1087148)
mhh sollte vielleicht noch dazu sagen das ich mit mysqldirect oder wie auch immer der name
war arbeite, da wäre eine DB Komponente ein wenig umständlich einzubinden.

Es würde keinen Sinn machen mit "mysqldirect" zu arbeiten, wenn man kein MySQL hat ;)

Zitat:

Zitat von -187- (Beitrag 1087193)
Mal was anderes: Warum müssen mehrere Benutzer gleichzeitig die Anwesendheitsliste bearbeiten. Vielleicht gibt es ja eine sinnvollere Lösung. "Schreiben" kann sowieso immer nur einer... das sollte klar sein.

Ei jo ... aber bei Excel muss ich immer so lange warten, bis der erste die Datei wieder freigibt (der wollte nur ansehen), bevor ich überhaupt schreiben könnte.

Bei einem DB-Zugriff können trotzdem alle "gleichzeitig" die Sätze bearbeiten. Gut wird von allen der gleiche Satz bearbeitet, dann gewinnt der letzte, es sei denn man baut sich eine Satzsperre ein, die den Satz sperrt, wenn man an dem arbeitet (das sehe ich hier aber nicht).

Capa 10. Mär 2011 19:49

AW: Erstellen einer Anwesendheitsliste
 
Also wie Sir Rufo bereits erwähnt hat nutze ich mysqldirect und der sinn warum ich das mit ner db mache
und nicht mit excel ist der das das alles über mein Programm laufen soll und nicht wie bisher über excel
listen die dann wieder 50x kopiert werden und in irgendwelchen ordnerabgründen verschwinden und irgendwann
mal auftauchen und keiner weiß was nun aktuell ist, daher eine DB und auch das zugriffsproblem was bereits
erwähnt wurde ist hier einer der gründe.

vielleicht muss ich mir doch nochmal die Stringgrid Komponente anschauen. Vielleicht
hab ich doch keine andere wahl, allerdings wäre mir eine schönere Lösung lieber, also
grafisch schöner, finde Stringgrid so eintönig :/

Mfg Capa


P.S.: Mein momentanes Problem is die Komunikation innerhalb, im büro sitzen alle in einem nicht sehr großen raum,
aber die kommunikation untereinander is echt das letzte, wie oben schon erwähnt da werden 50 kopien von einem
ordner gemacht und irgendwo auf allen rechnern versteckt(trotz Netzwerklaufwerk trotzdem noch ne kopie :/)
und das will ich mit dem Programm abschaffen den das k***t mich an dauern gerufen zu werden weil die einfach zu
d*** sind um mit nem PC umzugehen.

alfold 10. Mär 2011 20:36

AW: Erstellen einer Anwesendheitsliste
 
Wenn du es richtig machen willst, mach es doch gleich mit mysql und DBGrid als Anzeige.
1. die Daten sind somit immer verfügbar für jeden.
2. die Daten liegen immer am selben ort und müssen nicht ständig hinund her geschaufelt werden .
3. Werd die Daten nur zur Ansicht benötigt, bekommt halt ebend nur die diese Rechte

Die Vorlagen hast Du ja schon durch Excel und die Formeln in Excel sind in Delphi auch nicht anders!

Also warum mit Stringgrid rumschlagen wenn ja alles schon da ist!

Ps: Wenn Dir ebend DBGrid nicht gefällt, so kannst du Dir auch was eigenes erstellen was die Ansicht betrifft. Wichtig ist die anbindung an die DB.

Grussalfold

-187- 10. Mär 2011 20:40

AW: Erstellen einer Anwesendheitsliste
 
Naja also das Problem was du beschreibst hat erstmal grundsätzlich nichts mit Delphi zu tun. Das sind organisatorische Probleme. Oftmals fehlt es da an Verständnis. Man kann nicht davon ausgehen das zum Beispiel in einem Verkaufsbüro für Tiernahrungsmittel jeder weiss was ein Netzwerk ist - So krass sich das anhört :)

Abhilfe schafft eine oftmals schon eine Einweisung.

Naja back to Topic:

Du könntest eine Art Login basteln. Bei jedem Login wird überprüft ob jemand die Datenbank bearbeitet, wenn ja werden nur Lese Rechte vergeben.

Capa 11. Mär 2011 11:13

AW: Erstellen einer Anwesendheitsliste
 
Auch wenn sich das jetzt komisch anhört aber das war nicht meine frage,
das programm schreibe ich ja bereits, mitarbeiterverwaltung ist schon fertig
mir gehts auch nicht darum ob ich das in eine db schreibe oder in eine file,
den fest steht das ich mit einer db arbeite weil ich das dateigewusel abschaffen will.

eine unterweisung ist für die katz die müsst ich dann jeden morgen halten
weils bis dahin schon wieder jeder vergessen hat.

was den login angeht den hab ich schon und die rechte werden quasi so eingerichtet wie
der user zugriff haben soll.
mysqldirect oder directmysql wie auch immer das nun hieß war in erster betrachtung für mich
einfacher zu programmieren als die komponentenvielfalt die da delphi vorgibt.
Den da hab ich nicht wirklich durchgeblickt da ja für jedes bisschen ne andere komponente
zuständig zu sein scheint. Aber egal.

das mit den nur lesen rechten find ich nicht so toll das soll schon so bleiben wenn die halt
gleichzeitig die selbe aktion ausführen ham se pech. gewinnt der langsamere ^^
das büro ist echt nicht so groß das man sowas machen müsste, die sollen lieber lernen zu
kommunizieren ;)

[QUOTE=alfold;1087507]
Wenn du es richtig machen willst, mach es doch gleich mit mysql und DBGrid als Anzeige.
1. die Daten sind somit immer verfügbar für jeden.
2. die Daten liegen immer am selben ort und müssen nicht ständig hinund her geschaufelt werden .
3. Werd die Daten nur zur Ansicht benötigt, bekommt halt ebend nur die diese Rechte
[QUOTE]

zu 1.) sind sie jetzt auch schon
zu 2.) sag ich ja deswegen mach ich ja die db geschichte
zu 3.) so ists geplant (immo gibts nur einen user weil ich ja noch im programmierstadium bin


Mfg Capa


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz