Thema: Delphi ADO und FastReport

Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#3

AW: ADO und FastReport

  Alt 26. Aug 2010, 18:14
Kurz gesagt mit TADOTable kannst du deine Aufgabe nicht erfüllen; du brauchst dazu unbedingt TADOQuery (oder TAdoDataset).
Ausserdem solltest du Grundkenntnisse in SQL haben und wissen wie man mit Parametern in SQL-Abfragen arbeitet.

Wenn du nur eine einzige Rechnung haben möchtest, dann brauchst du dafür eine SQL-Abfrage:
Delphi-Quellcode:
ADOQueryRechnung.close;
ADOQueryRechnung.SQL.Text := 'SELECT * FROM Rechnungen WHERE IdRechnung=:IdRechnung';
ADOQueryRechnung.Parameters.ParamValues['IdRechnung'] := '4711'; // die gewünschte Rechnungsnummer
ADOQueryRechnung.Open;
// jetzt enthält die Abfrage genau einen Datensatz (oder keinen, falls Rechnungsnr nicht vorh.)
Zu der Rechnung gibt es jetzt genau einen Kunden:
Delphi-Quellcode:
ADOQueryKunde.close;
ADOQueryKunde.SQL.Text := 'SELECT * FROM Kunden WHERE IdKunde=:IdKunde';
ADOQueryKunde.Parameters.ParamValues['IdKunde'] := ADOQueryRechnung['Kundennummer'];
ADOQueryKunde.Open;
// jetzt enthält die Abfrage 'ADOQueryKunde' genau einen Datensatz
Die Verknüpfung zwischen Rechnung und Kunde habe ich hier manuell im Code hergestellt.
Man kann das aber auch automatisch über das Property DataSource in der Komponente TAdoQuery veranlassen.
Andreas
  Mit Zitat antworten Zitat