Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Datenquelle an eine Funktion übergeben (https://www.delphipraxis.net/44267-datenquelle-eine-funktion-uebergeben.html)

Berserker 16. Apr 2005 15:05


Datenquelle an eine Funktion übergeben
 
Hallo Delphi-Gemeinde.

Ich habe mir eine Funktionen programmiert, an welche ich einen Feldnamen übergebe.
Diese Funktion liest dann aus einer Datenquelle (ApolloTable, BDETable etc. den Wert des Feldes aus und Gibt mir diesen zurück.

Falls jetzt die Frage kommt wieso eine extra Funktion dafür:
Die Funktion Trim't u.a. den Rückgabewert und wandelt z.B. Kommas in Punkte um. Da ich mit dieser Funktion Daten aus einer DBase-Tabelle auslese und einen INSERT-Befehl für MySQL erzeuge.

Da ich aber Daten aus verschiedenen Quellen lesen will (ApolloTable oder ApolloQuery will ich irgendwie die Datenquelle mit an die Funktion übergeben. Da aber die Datenquelle eine ApolloTable oder Query oder auch eine MySQLTabelle sein kann muss die Tabelle Wissen, um welchen Typ es sich handelt.

Wie kann man dies bewerkstelligen?

Hier eine der Funktionen, die einen TdateTime in einen MySQL-DATETIME umwandel:
qrPOS wäre in diesem Fall eine TApolloQuery


Delphi-Quellcode:
function Tmainform.GetQrDate(feld: string): string;
begin
 try
  result := FormatDateTime('yyyy-mm-dd',qrFPOS.FieldValues[feld]);
 except
  result:='0000-00-00';
 end;
end;
Ich wäre jede Hilfe dankbar.

MfG, Ronny

mirage228 16. Apr 2005 15:15

Re: Datenquelle an eine Funktion übergeben
 
Hi,

übergib der Funktion doch einfach "qrFPOS.FieldValues[feld])" in den Feld Parameter und dann sieht die Funktion so aus:

Delphi-Quellcode:
function Tmainform.GetQrDate(Feld: TDateTime): string;
begin
  try
    result := FormatDateTime('yyyy-mm-dd', Feld);
  except
    result:='0000-00-00';
  end;
end;
mfG
mirage228

Berserker 16. Apr 2005 18:00

Re: Datenquelle an eine Funktion übergeben
 
danke für die Idee.

Habe es prompt umgesetzt und funktioniert einwandfrei.

Thx Ronny


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:54 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz