|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : juillet 2006 Messages : 25 ![]() |
Bonjour,
Je suis novice en création d'univers et de requete sous BO XI et j'ai un problême simple a résoudre. J'ai une table de ventes. Pour chaque enregistrement, on a : IdClient-IdProduit-Quantité-Montant Mon objectif, analyser les valeurs distincte d'un même produit : Pour chaque vente, je veux afficher : Valeur du produit vendu (=Mnt/Qté) Moyenne des valo du produit (=moy(Mnt/Qté) pour chaque IdProduit) Ecart en % entre les deux valos. J'ai bien sur réussi à faire le calcul des deux indicateurs indépendamment mais je n'arrive pas avoir le résultat de la jointure dans une même tableau. J'ai un peu de mal à bien comprendre la différence entre dimension, indicateur et information en fait.. mon pb vient peut-être de là.. Avez-vous des conseils à me donner? Merci d'avance. |
|
|
00
|
|
|
#2 |
|
Membre émérite
![]() Inscription : septembre 2006 Messages : 815 ![]() |
une dimension..est une valeur alphanumérique sur laquelle on ne peut pas appliquer de calcul
une information est une sous catégorie de dimension, elle permet de donner une précision sur une dimension un indicateur est une donnée numérique sur laquelle on peut faire des calculs ...grosso modo.. dans ton cas, montant et quantité sont des indicateurs id_produit et id_client des dimensions créer un variable valeur =(montant/quantité), une variable moy = (moyenne (montant/quantité)) et une variable pourcentage(valeur - moy) tu y vera déjà plus clair... |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : juillet 2006 Messages : 25 ![]() |
Merci pour tes infos rapides! C'est sympa!
Le problême c'est que la variable valeur est calculée pour chaque ligne (pour chaque vente). Ca ok! Mais la moyenne est une propriété du produit. Il faut que ca donne une requete du style : Select ... montant, qté, montant/qté , m.MOY From Ventes v, (select idProduit, moy(mnt/qté) AS MOY from Ventes group by IdProduit) m WHERE m.idProduit = v.produit Là, j'ai créé des variables mais j'ai a chaque le même résultat : Client Pdt Qté Mnt valeur moyenne 1 A 10 100 10 10 2 A 20 100 5 5 |
|
|
00
|
|
|
#4 |
|
Membre émérite
![]() Inscription : septembre 2006 Messages : 815 ![]() |
Ne t'occupe pas de ton SQL, recupère le résultat brut de ta table, et fait tes calculs à l'interieur de ton rapport.
...pour tes calculs de moyenne tu peux ajouter dans ta formul PourChaque<client> ou PourChaque<produit> si tu veux que le calcul soit sur la ligne uniquement ou PourTout<client> ou PourTout<produit> si tu veux que le calcul soit sur l'ensemble des lignes de ta requete ainsi tu peux avoir une colonne avec la différence, moy(pourtout)-moy(pourchaque) ...ou quelquechose dans le genre... |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : juillet 2006 Messages : 25 ![]() |
Oh yeah!
Merci beaucoup j'ai réussi avec "Dans" (car avec "PoutTout" et "PourChaque" ca ne fonctionnait pas comme je voulais...). C'est vrai que c'est pas évident évidant ces fonctions là.. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com