Habe mich nun schon seit Tagen damit abgemüht eine usereingabe in einem TDBGrid im OnKeyUp abzufangen und den Aktuellen String des ausgewählten fields auszulesen um dann eine Suche zu starten, ich bekomme jedoch den aktuellen wert nicht geliefert, es fehlt mir immer ein Zeichen des aktuell angezeigten strings auf dem bildschirm.
Hier mein code:
Code: Alles auswählen
procedure TFrmFibu.DBGFIBUKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
tempquery : TZQuery ;
begin
LBSuchresultate.Items.Clear;
tempquery := TZQuery.create(nil);
tempquery.connection := dbdatamod.zcdb;
tempquery.sql.clear;
if DBGFIBU.SelectedField.FieldName = 'IKONTONRSOLLID' then begin
tempquery.sql.add('Select * from BU_FIBU_KONTODATEN where SKONTONR LIKE ''%'+DBGFIBU.SelectedField.Text+'%''');
tempquery.open;
tempquery.First;
while not tempquery.EOF do begin
LBSuchresultate.Items.Add(tempquery.FieldByName('SKONTONR').AsString+', '+tempquery.FieldByName('SKONTOBEZEICHNUNG').AsString);
tempquery.Next;
end;
tempquery.close;
end;
tempquery.free;
end;
DBGFIBU.SelectedField.Text gibt mir nicht den aktuellen wert zurück sowie, displaytext, oder wenn ich das ganze über die Table die dahinter steckt auslese. Weis jemand eine lösung?
Danke
gruss