Hallo,
ich habe ein Master-Detail-Formular bei dem ich die Inhalte des DBGrids über eine
Query und deren Datasource abfrage. Da die Daten mit der Datasource eingeschränkt sind ich aber auch alle Datensätze ohne Master-Detail-Verknüpfung brauche, würde ich gern die Property "Datasource" meiner
Query zur Laufzeit entfernen. Meine Idee war es die Daten auf zwei Formularen anzuzeigen. Beim OnClose-, bzw, OnShow-Event habe ich dann folgende Zuweisungen:
Delphi-Quellcode:
procedure TForm.FormShow(Sender: TObject);
begin
DMKundenForm.QueryHafenplatz.DataSource:= Nil;
end;
procedure TForm.FormHide(Sender: TObject);
begin
DMKundenForm.QueryHafenplatz.DataSource:= DMKundenForm.DataSourceKunde;
end;
Wird Formular 'normal' angezeigt, werden die Master-Detail-Daten nicht angezeigt. Wird das Formular geschlossen werden die Master-Detail-Daten aus der
Query gelesen.
Das ist die Theorie. Leider funktioniert es nicht. Es werden immer die Master-Detail-Daten angezeigt. Weder ein Close-Open noch ein Refresh tun ihr übriges...
Wo ist der Denkfehler? Wie kann ich zur Laufzeit zwischen Master-Detail-und normalen Daten wechseln?
Gruß,
Barnti