Einzelnen Beitrag anzeigen

Benutzerbild von MPirnstill
MPirnstill

Registriert seit: 19. Jul 2004
Ort: Burgdorf
197 Beiträge
 
Delphi XE8 Enterprise
 
#1

Wie definiere ich ein Lookup-Feld für eine TQuery?

  Alt 9. Jan 2006, 12:22
Datenbank: MS-SQL-Server • Version: 2000 • Zugriff über: Delphi 2.0 - BDE
Hi Leute!

Ich versuche mein Problem mal neue zu beschreiben, da es bei meinem letzten Thread leider nicht zum Erfolg geführt hat.

Problem:
Ich versuche ein Lookup-Feld für eine TQuery (wird auch zur Laufzeit erzeugt) während der Laufzeit zu erzeugen.

Query ist zu diesem Zeitpunkt bereits erzeugt, dann

Delphi-Quellcode:
with FQry do
begin
  if State <> dsInactive then
    close;
  RequestLive := True;
  ParamByName('Verfahren').asInteger := FVerfahren;
  ParamByName('Pruef_ID').asString := FPruef_ID;
  Open;
  .
  .
Jetzt weise ich noch ein DisplayFormat zu. So weit, so gut. Und dann möchte ich ein Lookup-Feld zu erzeugen

Delphi-Quellcode:
  TBooleanField(FieldByName('Vorsitz')).DisplayValues := 'V.; ';
  FieldDefs.Add('myLookupFeld', ftString, 50, False);
  .
  .
Bis hier scheint es auch zu funktionieren. Ich konnte mir beim debuggen, den Eintrag in FieldDefs anzeigen lassen.

  TStringField(FieldByName('myLookupFeld')).OnGetText := myLookupFeldGetText; Wenn ich jetzt versuche, mit vorstehender Anweisung die Daten bereit zu stellen (bei onGetText Zugriff auf andere Query), kennt Delphi 'myLookupFeld' nicht.

Was mache ich hier falsch? Oder besser wie kann ich es richtig machen?
Ich möchte keinen JOIN in meiner SQL-Anweisung verwenden, da ich die Query update-fähig haben möchte.

Gruß
Micha
Ich habe fertig!

DP - hier werden Sie geholfen!
  Mit Zitat antworten Zitat