TSDBQuery - Exemples
| TSDBQuery = class (TObject) | Interface de TSDBQuery | Exemples de TSDBQuery |
// Exemple d'une requête vers un ERP pour récupérer les commandes
// des clients qui ont commandé plus de 100 unités dans les 30 derniers jours
var db := TSDBQuery.CreateFromDataSource('ERP');
// Définition de la requête paramétrée
db.SQL := #"
select C.NOM_CLIENT, L.NUM_PRODUIT, L.QUANTITE
from COMMANDES C left join LIGNES_COMMANDES L on (L.COMMANDE_ID=C.ID)
where
L.QUANTITE >= :MIN_QTY
and C.DATE_COMMANDE >= :MIN_DATE
";
// Définition des valeurs des paramètres
db.FloatParam['MIN_QTY'] := 100;
db.DateTimeParam['MIN_DATE'] := Date()-30;
// Exécution de la requête et parcours des données renvoyées
db.Open;
while db.Step do begin
var nomClient := db.StringField['NOM_CLIENT'];
var numProduit := db.IntegerField['NUM_PRODUIT'];
var qty := db.FloatField['QUANTITE'];
PrintLn(nomClient + ' a commandé ' + FloatToStr(qty)+' unités du produit n°' + IntToStr(numProduit));
end;
db.Close;