Autor Beitrag
Lui
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 84

Win XP, Win 2000, Linux
D7
BeitragVerfasst: Mo 19.05.03 20:21 
Hallo,

hab schonmal gefragt...aber SQL ist mir noch zu fremd...

Will mir mit dem MonthCalendar und der BDE einen Terminkalendar basteln. Nur wie können die Daten bezogen auf das angeklickte Datum im MonthCalendar geschrieben und gelesen werden?

SQL mag ja die beste Lösung sein. Hab aber absolut keinen Plan welche Komponenten ich dafür einsetzten muß, geschweige dann wie...

Also bleib ich ©Borland treu und benutzte, auch wenn jetzt auf mich herabgeschaut wird, die BDE.

Ich hab also einen Datasource mit einem table verbunden. In dem Table die Werte 'Datum', 'Was', und 'Wo' angelegt. Alles auch kein Problem.

Nur jetzt kommts: Wie kann ich denn zur Laufzeit, Daten in das table schreiben, bezogen auf das Datum (MonthCalendar1.date). Ich hab schon einiges versucht über Table1.AddItem usw. In meinem Fall:
ausblenden Quelltext
1:
Table1.AddItem(DateToStr(MonthCalendar1.date),DBEdit1.text,x?Uni...);					

Die Indexoptionen (x?Uni..) fallen mir leider gerade nicht ein, hab sie aber .

Meine Elemente auf der Form zur Vollständigkeit:
- Datasource
- Table
- DBEdit
- MonthCalendar

Dabei wird dann aber eine exception ausgelöst. Entweder ist die DB von mir gesperrt (wieso? Hab auch mal mit insert und post versucht...) oder es wird gesagt das der Datensatz (z.B. 30.05.2003) nicht vorhanden ist.

Die Verbindungen zwischen den DB Elementen müßte eigentlich richtig sein, ich brauch halt nur die Syntax wie man, bezogen auf (MonthCalendar1.date), Datensätze bei dem entsprechenden Datum hinzufügen bzw. auslesen kann.

Wer kann mir da helfen. Ich brauch nur ne code-Schnippsel um die Daten zur Laufzeit zu schreiben und zu lesen.
Und wieso sollte die DB durch mich gesperrt sein?

Wäre sehr dankbar wenn mir da mal jemand hilft.

MfG

Lui

_________________
Während der C Progga sich fragt wie er es machen soll, fragt der Delphi Progga sich was soll ich machen...
MrSpock
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Di 20.05.03 19:14 
Hallo Lui,

es wäre schon interessant zu wissen, mit welchem Feld du das DBEdit Feld verbunden hast. Grundsätzlich ist die Syntax zum Hinzufügen eines neuen Datensatzes:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
myTable.Append;
myTableDatum.AsDateTime := MonthCalendar1.Date;
myTableWas.AsString := 'Blabla';
myTableWo.AsString := 'hier';
myTable.Post;


Dabei gehe ich davon aus, dass du die Felder über den Feldeditor der Anwendung hinzugefügt hast.

Die Datenbank kann durch dich gesperrt sein, weil du sie z.B. in der IDE bereits exclusiv geöffnet hast!?

_________________
Live long and prosper
MrSpock \\//
Lui Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 84

Win XP, Win 2000, Linux
D7
BeitragVerfasst: Mi 21.05.03 20:52 
Titel: Schreiben ins Table über Kalendar erfolgreich
Vielen Dank erstmal für deine Antwort MrSpock!

Ich hab mir deine Hilfe angeschaut und das ganze ein wenig abgeändert.
Hier jetzt meine "schreibfähige" Lösung:
ausblenden Quelltext
1:
2:
3:
4:
5:
  Table1.Append;
  Table1.FieldByName('Datum').AsDateTime := MonthCalendar1.Date;
  Table1.FieldByName('Was').AsString := DBEdit1.Text;
  Table1.FieldByName('Wo').AsString := DBEdit2.Text;
  Table1.Post;


Somit werden die Datensätze mit dem aktiven Datum ins Table geschrieben. Optimal, funktioniert, vielen Dank.

Jetzt muß ich die Daten nur auch wieder ausgelesen bekommen, d.h. es wird Zeit für einen neuen Thread...

MfG

Lui

_________________
Während der C Progga sich fragt wie er es machen soll, fragt der Delphi Progga sich was soll ich machen...
MrSpock
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Do 22.05.03 07:18 
Hallo Lui,

es wundert mich, dass du die Werte für "Wo" und "Was" aus DBEdit Feldern holst. Gehören diese DBEdit Felder zu einer anderen Tabelle?

_________________
Live long and prosper
MrSpock \\//
Lui Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 84

Win XP, Win 2000, Linux
D7
BeitragVerfasst: Do 22.05.03 17:01 
Titel: Ein und das selbe Table
Hi Spock,

nein ich habe nur ein 'table' und benutzt die DBEdit, 2 an der Zahl, zum schreiben und nachträglich zum lesen aus der db.
Ich habe noch ein DBText der immer das aktuelle Datum anzeigt.

Daraus resultiert dann der text von DBEdit1 und DBEdit2.

Alles in einem table unterteilt in 'Datum' 'Was' und 'Wo'.

Wenn es das ist was Du meintest... *g*

MfG

Lui

_________________
Während der C Progga sich fragt wie er es machen soll, fragt der Delphi Progga sich was soll ich machen...
MrSpock
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Sa 24.05.03 11:46 
Hallo Lui,

in diesem Fall kannst du werden aber die Inhalte von DBEdit1 und DFBEdit2 automatisch den zugeordneten Feldern zugeordnet. Du müsstest also nur noch z.B. bei OnNewRecord das Datum automatisch eintragen.

_________________
Live long and prosper
MrSpock \\//