|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Kylian KevinInscription : juillet 2011 Messages : 7 ![]() |
Bonjour à tous,
Je suis en stage dans une Sté, et je dois ajouter des relances clients sur leur site intranet. Je ne dois en aucun cas toucher aux métadonnées car ils ont un progiciel qui fonctionne dessus. Merci pour votre aide qui me sera bien utile. NUMERO_CLIENT DATE TAUX_REMISE TAUX_ESCOMPTE FACTURE_LIGNE NUMERO NUMERO_FACTURE NUMERO_TVA QUANTITE PRIX_UNIT PRIX_TOTAL TAXE NUMERO TAUX_TVA REGLEMENT NUMERO DATE MONTANT REGLMENT_LIGNE NUMERO NUMERO_REGLEMENT NUMERO_FACTURE COUPON_REDUCTION NUMERO NUMERO_FACTURE MONTANT Je veux récupérer les clients qui n'ont pas réglé leurs factures ainsi que le montant dû. j'utilise cette requête mais j'ai quelques problèmes de doublon. je précise si un client fait plusieurs règlements. Merci pour votre aide. Code :
|
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Inscription : janvier 2010 Messages : 1 084 ![]() |
Bonjour,
Quel est votre SGBDR ? |
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() Yannick Ingénieur Etudes & Developpements Inscription : février 2006 Messages : 1 125 ![]() |
Vous groupez par nom de client ?? Pas par n° de client ??
Comment faites-vous pour des clients qui ont le même nom ?
__________________
Dans la connaissance du monde, ceux qui ne savent rien en savent toujours autant que ceux qui n'en savent pas plus qu'eux. (Pierre Dac) |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Kylian KevinInscription : juillet 2011 Messages : 7 ![]() |
Quel est votre SGBDR ?
Interbase Yanika_bzh J'ai essayé de grouper par le numéro et j'ai un message d'erreur qui me dit il faut rajouter le nom mais le reste est le même doublon Doublon si il y a plusieurs règlements sur une même facture Exp : client jojo facture 100e il fait 2 règlements 50e et 30e et doit normalement 20e alors que j'obtiens 120e de plus si il y a un coupon de réduction 10e j'obtiens 100e au lieu de 90e je me demande d'où peut bien venir se problème. Merci pour votre aide. merci à vous |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() ![]() Inscription : janvier 2010 Messages : 1 084 ![]() |
Cela vient de votre jointure et de la façon dont vous calculez les sommes.
Pour reprendre rapidement votre exemple : La Table facture contient une ligne : 100 La Table règlement contient deux lignes : 50 et 30 les deux lignes de reglement correspondent à la ligne de facture, votre jointure donne donc : facture ; reglementIci, la somme des factures est de 200 (100 + 100), la somme des reglement est de 80 (50 + 30), reste dû : 120 (200 - 80), CQFD, l'erreur est correcte Vous pouvez donc par exemple faire des jointures sur des sous requêtes effectuant déjà les agrégats (somme) en regroupant sur la condition de jointure. |
|
|
00
|
|
|
#6 |
|
Membre expérimenté
![]() Nicolas Inscription : janvier 2011 Messages : 378 ![]() |
Pour reprendre la remarque de Yanika_bzh il n'empêche qu'il faut aussi réaliser le group by par le numéro client :
Sinon il va y avoir des regroupements faux. Sinon il vaut mieux faire des sous requêtes pour les règlements que des jointures pour éviter la démultiplication des lignes. |
|
|
00
|
|
|
#7 | ||
|
Membre Expert
![]() Yannick Ingénieur Etudes & Developpements Inscription : février 2006 Messages : 1 125 ![]() |
J'avais un peu de temps devant moi, mais pas de base de données (vive le notepad)...
Donc je vous soumets ce qui pourrait ressembler à votre solution, mais je n'ai absolument pas testé cette requête. Cependant, je pense que l'idée doit être là Code :
A adapter et tester Bon courage
__________________
Dans la connaissance du monde, ceux qui ne savent rien en savent toujours autant que ceux qui n'en savent pas plus qu'eux. (Pierre Dac) |
||
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Kylian KevinInscription : juillet 2011 Messages : 7 ![]() |
merci merci merci merci merci merci yanika_bzh
je vais essayer de l'adapter |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com