![]() |
Funktion mit eventgesteuerter Prozedur verbinden
Guten Morgen !
Anhand der vorgerückten Stunde zu erkennen, hänge ich an einem Problem. Ich habe das Problem, das ich eine SQL Abfrage in einer Funktion losschicke das Ergebnis aber in einer Funktion rauskommt die durch ein Event aufgerufen werden muss praktisch sieht das so aus: Das ist die Funktion, in der der Aufruf kommt:
Delphi-Quellcode:
Die SQLDataSet Komponente schickt nun die Funktion los, und das Ergebnis kommt in so einer Funktion zurück, die durch ein Ereignis ausgeführt wird.
function GetQueryResult(QCmd:string):String;
begin SQLDataSet.CommandText:=QCmd; //Abfrage zuweisen SQLDataSet.ExecSQL(); //Losschicken end; Sieht ca. so aus:
Delphi-Quellcode:
Ist es möglich, das die Funktion wartet, bis das Event eingetreten ist,und dass ich dann aus dieser procedure den die geparsten daten als strung ausgeben kann ?
procedure TFrmMain.SQLDataSetAfterOpen(DataSet: TDataSet);
begin //Das DataSet auslesen und in String ausgeben end; Danke schonmal |
Re: Funktion mit eventgesteuerter Prozedur verbinden
Sie wartet schon, du kannst aber nicht auf das Ergebnis zugreifen.
|
Re: Funktion mit eventgesteuerter Prozedur verbinden
Hallo
Delphi-Quellcode:
Bleibt die Ausführung der Applikation nicht solange innerhalb der ExecSQL Funktion, bis diese fertig ist ? Also könnte dann nicht in der "nächsten Zeile mit dem Auslesen des Datasets begonnen werden ?
SQLDataSet.ExecSQL();
|
Re: Funktion mit eventgesteuerter Prozedur verbinden
zudem solltest du vielleicht .ExecSQL durch .Open ersetzen und dann die Wandlung in einen String dort durchführen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz