Einzelnen Beitrag anzeigen

ioster

Registriert seit: 15. Aug 2008
84 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: FireDAC: Verhalten von Params

  Alt 29. Jan 2021, 13:03
Delphi-Quellcode:
  with Druckmodul.QrMaschine Do
    begin
      Close;
      SQL.Clear;
      SQL.Add('SELECT * FROM MASCHINEN M');
      SQL.Add('WHERE (M.MaschinenNr = :Maschinennr)');
      Parambyname('Maschinennr').AsString := ParamRef;
      Prepare;
      Open;
    end;
vielleicht hilft ein Prepare.

Grüße
Klaus
Danke für Deine Rückantwort. Ich meine, den Auslöser für das merkwürdige Verhalten gefunden zu haben. In der Sequenz, die aus den Stammdaten aufgerufen wird, bekommt die Abfrage die Datasource des Stammsatzes als Referenz zugewiesen. Diese Referenz ist noch so lange aktiv bis die Tabelle geschlossen oder das Fenster eliminiert wird. CLOSE und CLEAR schließen und löschen zwar die Abfrage, aber die neue Abfrage versucht dann trotzdem als erstes mit der Datasource nach Referenzwerten zu suchen. Parambyname geht so ins Leere. Kann ich sogar verstehen, dass die Datasource Priorität hat, wenn sie den Feldnamen enthält.

Wenn man mit dem Problem konfrontiert wird, versteht man aber die Welt irgendwie nicht.

Viele Grüße
Ingo
  Mit Zitat antworten Zitat