Somme dans dbgrid par type produit [Résolu]

anil16 47 Messages postés vendredi 15 février 2008Date d'inscription 15 février 2010 Dernière intervention - 6 nov. 2009 à 21:22 - Dernière réponse : cs_Delphiprog 4580 Messages postés samedi 19 janvier 2002Date d'inscription 9 janvier 2013 Dernière intervention
- 7 nov. 2009 à 21:38
Bonsoir,
j'ai une grille bdgrid qui affiche les données suivantes:

je veux afficher ces données dans une autre dbgrid par un clique bouton de sorte que le code produit n'apparaissent qu'une seule fois et que la Qtesum Qte,et PU sum PU pour chaque produit donnée.
c-à-d que dans ma nouvelle grille dbgrid j'aurai :
code_p/Qte_T/PU_T
LB5 / 30 / 700,00 DA
LB4 / 15 / 1400,00 DA

Comment faire cette manipulation?
Merci beaucoup
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
cs_Delphiprog 4580 Messages postés samedi 19 janvier 2002Date d'inscription 9 janvier 2013 Dernière intervention - 7 nov. 2009 à 11:50
3
Merci
Bonjour,

En supposant que les champs de ta table portent le même nom que les colonnes ci-dessus et que la table s'appelle "ventes", la requête SQL suivante renverra le résultat souhaité :
SELECT distinct code_p, sum(qte_l), sum(pu_l) 
FROM ventes 
GROUP BY code_p


Il te reste à coder l'appel de la fiche sur laquelle figurera un TDbGrid relié à cette dernière requête.

Bonne continuation.
8000 Lévriers 'galgos' par an sont torturés et massacrés en Espagne
May Delphi be with you

Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.

Merci cs_Delphiprog 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de cs_Delphiprog
Meilleure réponse
anil16 47 Messages postés vendredi 15 février 2008Date d'inscription 15 février 2010 Dernière intervention - 7 nov. 2009 à 19:06
3
Merci
Salut,
En fait le problème était que je voulais afficher le résultat de cette requête sur la même dbgrid reliée à la table detail_bl
J'ai créé une autre table pour stocker le résultat de cette requête avec champs 'code_p, qte_t et pu_t' et j'ai modifié un peu le code:
select  distinct code_p, sum(qte_l) as "qte_t", sum(pu_l) as"pu_t" from detail_bl group by code_p

Merci beaucoup delphiprog pour ton aide

Merci anil16 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de anil16
anil16 47 Messages postés vendredi 15 février 2008Date d'inscription 15 février 2010 Dernière intervention - 7 nov. 2009 à 16:52
0
Merci
Bonjour,
merci Delphiprog j'ai essayé ton code sur le même composant tquery qui m'affiche la grille dbgrid que j'ai mis en image pour tester est l'erreur est qu'il ne reconnait pas sum(qte_l)!! donc il m'affiche ce message
DatabaseError with message 'ADOQuery2: field 'qte_l' not found'.....
code sur clique bouton:
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add('select distinct code_p, sum(qte_l), sum(pu_l) from detail_bl group by code_p');
ADOQuery2.Open;

j'utilise Access comme SGBD
Merci
Commenter la réponse de anil16
cs_Delphiprog 4580 Messages postés samedi 19 janvier 2002Date d'inscription 9 janvier 2013 Dernière intervention - 7 nov. 2009 à 17:16
0
Merci
Comme je l'ai écrit, j'ai supposé que les noms des champs de la table étaient les mêmes que ceux des colonnes de ton TDbGrid, faute de mieux...
Après, c'est à toi d'adapter la requête en fonction des noms réels dans la table.
La simplicité de cette requête au standard SQL ne devrait pas être un obstacle.


8000 Lévriers 'galgos' par an sont torturés et massacrés en Espagne
May Delphi be with you

Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
Commenter la réponse de cs_Delphiprog
anil16 47 Messages postés vendredi 15 février 2008Date d'inscription 15 février 2010 Dernière intervention - 7 nov. 2009 à 17:48
0
Merci
non, ce sont les mêmes champs!!
table detail_bl(num_bl, code_p, qte_l, pu_l)
Commenter la réponse de anil16
cs_Delphiprog 4580 Messages postés samedi 19 janvier 2002Date d'inscription 9 janvier 2013 Dernière intervention - 7 nov. 2009 à 21:38
0
Merci
Ok, je comprends mieux...

8000 Lévriers 'galgos' par an sont torturés et massacrés en Espagne
May Delphi be with you

Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
Commenter la réponse de cs_Delphiprog

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.