Bonjour les delphistes
Après m'être pris la tête avec les aggrégats du ClientDataSet, j'ai enfin compris le fonctionnement. Ouf !
Sauf une chose ! bien évidemment ce que j'aurais le plus besoin...
Voilà: mon ClientDataSet contient 4 champs de type data et 1 champ aggregat.
Champ1: Ref (string)
Champ2: Design (string)
Champ3: Qte (integer)
Champ4: QteScan (integer)
Champ5: QteMissed; un TAggregateField qui a pour expression sum(Qte)-sum(QteScan)
La table est remplie de manière 'manuelle' avec des .Insert - .Post
L'index en place est basé sur Ref;Design et le GroupLevel à 2
Ce que je veux affiché dans mon DBGrid: Ref, Design et QteMissed
A l'exécution l'aggrégat se calcule bien mais une ligne s'affiche à chaque fois qu'il existe un couple Ref;Design dans la table
Une bonne requete SQL avec un group by ne m'aurait pas affiché ces doublons.
Voilà un exemple pour ceux qui comprennent pas bien
Contenu inseré dans le table :
Ref ; Design ; Qte ; QteScan
R1 ; Truc1 ; 1 ; 0
R2 ; Truc2 ; 4 ; 1
R1 ; Truc1 ; 2 ; 1
Ce qui s'affiche :
Ref ; Design ; QteMissed
R1 ; Truc1 ; 2
R1 ; Truc1 ; 2
R2 ; Truc2 ; 3
Ce que je veux voir :
Ref ; Design ; QteMissed
R1 ; Truc1 ; 2
R2 ; Truc2 ; 3
Si qqun a un bon tuyau, j'en veux bien un bout![]()
Peck777








Répondre avec citation


Partager