Autor Beitrag
Dee-M-Cee
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: So 15.01.06 14:19 
Hallo.
Ich schreibe an einem Trainingstagebuch, dass die Eingabe von verschiedenen Daten (Dauer, Datum,...) erlaubt.
Die eingegebenen Daten sollen eigentlich in einer typisierten Datei gespeichert werden und dann in einem StringGrid ausgegeben werden. Ich hätte es gerne mit einer MySQL Datenbank gemacht, aber das geht natürlich nicht, wenn man das Programm auf verschiedenen Rechnern einfach benutzen will...

Das StringGrid will ich jeweils für einen Monat machen, dh für jeden Tag eine Zelle und diese wie in einem Kalender nach Wochentagen sortiert anordnen.

Ich bin mir jedoch noch nicht so sicher, wie ich das Speichern und Auslesen der Daten realisieren soll.
Am Besten wäre es denke ich, wenn ich für jedes Datum wie in einer Datenbank suchen könnte:
also zb wenn es einen Eintrag mit dem Datum 15.01.2006 gibt in die Zelle schreiben; ansonsten weitermachen mit 16.01.1006....

Da dies aber (soweit ich weiß) mit typisierten Dateien nicht geht wäre ich für Tips dankbar.

Im Normalfall werden ja die Daten nacheinander eingegeben, dh sie werden in der typisierten Datei schon nach Datum sortiert gespeichert. Das Problem wäre denke ich jedoch, wenn ein Eintrag gespeichert wird, der ein vergangenes Datum enthält. Ich wüsst nicht, wie ich den dann wieder anzeigen lassen sollte.


Danke für die Anregungen...

Markus
Dee-M-Cee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: So 15.01.06 20:16 
Hab ich einfach blöd erklärt oder kann mir da niemand helfen ? :?!?:
DarkHunter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 477

Win XP
D3 Prof, D2005 PE
BeitragVerfasst: So 15.01.06 20:26 
Für ein typisierte Datei bräuchtest du ersteinmal ein Record
Das könnte so aussehen:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
type
  RMonat = record
  Tage = Array[1..31] of String[255];
end;

Problem hierbei, ist dann aber, das du nur einen Termin pro Tag einfügen könntest.

Vom dem Record könntest du dann ein Array machen und dann diese Array mit file of speichern.

_________________
I believe that every human has a finite number of heart-beats. I don't intend to waste any of mine running around doing exercises.
- Neil Armstrong
Dee-M-Cee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: So 15.01.06 20:35 
Soweit weiß ich das alles, das ist kein Problem.

Doch wie gebe ich dieses unsortierte Array am Besten im StringGrid aus?

Ich denke ich habe da zwei Möglichkeiten:
Entweder ich kann das Array nach Datum sortieren (hierfür finde ich jedoch nichts, wie ich das schnell (also ohne lange Rechenzeiten) machen könnte oder ich muss irgendwie im Array schnell suchen können um für jeden Tag des Monats die gefundenen Einträge anzuzeigen.
DarkHunter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 477

Win XP
D3 Prof, D2005 PE
BeitragVerfasst: So 15.01.06 20:44 
Ich dachte eigentlich an folgendes:
Tage[1] = Erster Tag im Monat
Tage[2] = Zweiter Tag im Monat
Tage[31] = 31ter Tag im Monat
dann musst du das nur in das Stringgrid einsetzten, je nachdem welcher Tag dran ist.

_________________
I believe that every human has a finite number of heart-beats. I don't intend to waste any of mine running around doing exercises.
- Neil Armstrong
Dee-M-Cee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: So 15.01.06 21:06 
Und wie bekomme ich aus der gespeicherten Datei die Einträge vom jeweiligen Monat in das Array.

Die Datei enthält ja dann viele (ich denke mal so bis 1000) Einträge mit verschiedenen Daten, die unsortiert sind.

Wie soll ich da denn genau für den einen Monat die verschiedenen Einträge für die Daten rausfiltern?