Filtrer une table suivant la différence entre les valeurs de champs
Exemple :
Champs : TotalReçu & TotalLivré
La Filtre (ou requête SQL) Affichera les enregistrements ou
TotalReçu <> TotalLivré
Comment on procède ?
Merci
Filtrer une table suivant la différence entre les valeurs de champs
Exemple :
Champs : TotalReçu & TotalLivré
La Filtre (ou requête SQL) Affichera les enregistrements ou
TotalReçu <> TotalLivré
Comment on procède ?
Merci
var b,i : integer;
s : string ;
begin
s := '';
i := 0 ;
ADOTable1.First;
for b := 1 to (adotable1.RecordCount ) do
begin
if adotable1NbrPieceexport.AsString <> '' then // on ne teste les enregistrements Vide
begin
if ADOTable1total.AsInteger <> adotable1NbrPieceexport.AsInteger then
begin
i := i + 1; //
if i = 1 then
s := 'modele = ' +quotedstr(adotable1modele.AsString)+' ';// si on a un seul model on ajoute pas de "or"
if i <> 1 then //si plusieurs enregistrement
s := s + ' or modele = '+ quotedstr(adotable1modele.AsString) + ' ';
end;
end;
ADOTable1.Next; // et on avance d'un enregiqtrement
end;
//showmessage(s) ;
ADOTable1.Filtered := False;
ADOTable1.Filter := s ;
ADOTable1.Filtered := true ;
end;
Cette solution semble pre-historique je pense que ça causera un problème si on a des milliers d'enregistrement
une question: pourquoi ne pas utiliser directement le composant TADOQuery ?
sinon si tu filtre la table avec l'expression
ca ne marche pas ?Envoyé par helmis
Ne marche comme requete de filtre ca declanche une exeption
Code : Sélectionner tout - Visualiser dans une fenêtre à part TotalReçu <> TotalLivré
est avec la query on donne quoi comme requete (le probleme est different).
quelle exception ? soit plus précis.Envoyé par helmis
tu donnes la requête devant retourner les enregistrements dont tu as besoinEnvoyé par helmis
exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('select * from MaTable where TotalRecu <> TotalLivré'); ADOQuery1.Open;
Ben je m'exuse le probleme venait de mon moteur de base de donné
sur d'autre poste ca marche normalement
Merci
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager