|
Iniciado por , 13,ene. 2004 12:49 - 3 respuestas |
| |
| | | |
|
| |
Publicado el 13,enero 2004 - 12:49 |
Salut ! J'ai une table avec des enregistrements dont un des champs est un statut ( numérique qui indique si un article est en stock, s'il est vendu, etc. ...), un des champs est le PA et un des champs est le prix de vente. J'ai fait une requête qui me permet de savoir ce qui est en stock et une requête qui me permet de savoir ce qui est vendu, mais je coince quand je tente de joindre mes deux requêtes pour pouvoir afficher les stock ET les ventes dans un même tableau
Requête Stock StReq = "select Produit, count(produit) as qtestock, sum(prach) as valach from articles where statut=1 order by produit group by produit"
Requete Vente StReq = "select Produit, count(produit) as qtevente, sum(prvente) as valvente from articles where statut=2 order by produit group by produit"
J'obtiens dans ces deux cas ce que je veux. Stock Articles/QteStock/ValeurAchat Vente Articles/QteVente,ValeurVente
Je voudrais obtenir Articles/QteStock/ValeurAchat/QteVente/ValeurVente
Avec une seule ligne pour tous les articles qu'ils soient en stock, en stock et vendus, rien que vendus. Et je ne m'en sors pas. Toutes mes requètes me donnent des erreurs. Si un spécialiste pouvait m'aider, je lui en serais très reconnaissant !
-- Marcel Berman c/o Managing Business SPRL Allée du Petit Paris, 11 B - 1410 - Waterloo Tel : +32 2 351.60.64 Fax : +32 2 351.45.78 Gsm : +32 475.799.477 |
| |
| |
| | | |
|
| | |
| |
Publicado el 13,enero 2004 - 14:00 |
Marcel.berman@managingbusiness.be wrote:
Salut ! J'ai une table avec des enregistrements dont un des champs est un statut
(
numérique qui indique si un article est en stock, s'il est vendu, etc. ...), un des champs est le PA et un des champs est le prix de vente. J'ai fait une requête qui me permet de savoir ce qui est en stock et une requête qui me permet de savoir ce qui est vendu, mais je coince quand je tente de joindre mes deux requêtes pour pouvoir afficher les stock ET les ventes dans un même tableau
Requête Stock StReq = "select Produit, count(produit) as qtestock, sum(prach) as valach from articles where statut=1 order by produit group by produit"
Requete Vente StReq = "select Produit, count(produit) as qtevente, sum(prvente) as valvente from articles where statut=2 order by produit group by produit"
J'obtiens dans ces deux cas ce que je veux. Stock Articles/QteStock/ValeurAchat Vente Articles/QteVente,ValeurVente
Je voudrais obtenir Articles/QteStock/ValeurAchat/QteVente/ValeurVente
Avec une seule ligne pour tous les articles qu'ils soient en stock, en stock et vendus, rien que vendus. Et je ne m'en sors pas. Toutes mes requètes me donnent des erreurs. Si un spécialiste pouvait m'aider, je lui en serais très reconnaissant !
-- Marcel Berman c/o Managing Business SPRL Allée du Petit Paris, 11 B - 1410 - Waterloo Tel : +32 2 351.60.64 Fax : +32 2 351.45.78 Gsm : +32 475.799.477
2 solutions me viennent à l'esprit : 1. un full outer join entre tes deux requêtes, avec comme condition de jointure le code du produit. Tu ne précises pas si tu utilises HF ou une autre base, car dans le dernier cas une solution de facilité est de créer deux vues, une pour chaque requête, puis de faire une jointure entre les deux vues. 2. Deux requêtes séparées, et un bout de code pour remettre tout à plat dans un fichier temporaire, ou une table mémoire.
Juste pour la petite histoire : tel que tu présentes tes tables, un produit ne peut qu'être en stock OU vendu, mais pas les deux en même temps, ou alors produit n'est pas la clé primaire de Article. Mais dans ce cas ton analyse me semble un peu bizarre. Pourquoi ne pas utiliser une table Stat_Produit, qui contient les quantités en stock, et les quantités vendues ? Frédéric. |
| |
| |
| | | |
|
| | |
| |
Publicado el 13,enero 2004 - 16:26 |
Salut !
On 13-Jan-2004, "Frédéric DEMILLY" <f.demilly@pacificpeche.Fr> wrote:
Juste pour la petite histoire : tel que tu présentes tes tables, un produit ne peut qu'être en stock OU vendu, mais pas les deux en même temps, ou alors produit n'est pas la clé primaire de Article. Mais dans ce cas ton analyse me semble un peu bizarre. Pourquoi ne pas utiliser une table Stat_Produit, qui contient les quantités en stock, et les quantités vendues ? Frédéric.
Tu as raison ... Cette table contient l'inventaire des produits. Il s'agit d'une gestion FIFO et la description de la requète ainsi que de la table a été simplifiée au maximum pour exposer mon problème. Il y a un enregistrement pour chaque article acheté, et de fait, Produit n'est pas la clef unique de ce fichier, par contre c'est une clef avec doublon. La clef unique est liée au document d'achat ... Le statut permet de savoir si l'article est en stock, vendu, s'il est en commande, en réparation, etc ...
Je vais examiner ta proposition ainsi que d'autres recçues en privé ...
-- Marcel Berman c/o Managing Business SPRL Allée du Petit Paris, 11 B - 1410 - Waterloo Tel : +32 2 351.60.64 Fax : +32 2 351.45.78 Gsm : +32 475.799.477 |
| |
| |
| | | |
|
| | |
| |
Publicado el 15,enero 2004 - 10:55 |
bonjour, essaye de faire une requete UNION avec les 2 requetes, ainsi il y aura une ligne par produit avec les colonnes distinctes. bon courage.
"Frédéric DEMILLY" <f.demilly@pacificpeche.Fr> wrote:
Marcel.berman@managingbusiness.be wrote: Salut ! J'ai une table avec des enregistrements dont un des champs est un statut (
numérique qui indique si un article est en stock, s'il est vendu, etc. ...),
un des champs est le PA et un des champs est le prix de vente. J'ai fait une requête qui me permet de savoir ce qui est en stock et une requête qui me permet de savoir ce qui est vendu, mais je coince quand je
tente de joindre mes deux requêtes pour pouvoir afficher les stock ET les ventes dans un même tableau
Requête Stock StReq = "select Produit, count(produit) as qtestock, sum(prach) as valach from articles where statut=1 order by produit group by produit"
Requete Vente StReq = "select Produit, count(produit) as qtevente, sum(prvente) as valvente from articles where statut=2 order by produit group by produit"
J'obtiens dans ces deux cas ce que je veux. Stock Articles/QteStock/ValeurAchat Vente Articles/QteVente,ValeurVente
Je voudrais obtenir Articles/QteStock/ValeurAchat/QteVente/ValeurVente
Avec une seule ligne pour tous les articles qu'ils soient en stock, en stock
et vendus, rien que vendus. Et je ne m'en sors pas. Toutes mes requètes me donnent des erreurs. Si un spécialiste pouvait m'aider, je lui en serais très reconnaissant !
-- Marcel Berman c/o Managing Business SPRL Allée du Petit Paris, 11 B - 1410 - Waterloo Tel : +32 2 351.60.64 Fax : +32 2 351.45.78 Gsm : +32 475.799.477
2 solutions me viennent à l'esprit :
1. un full outer join entre tes deux requêtes, avec comme condition de jointure le code du produit. Tu ne précises pas si tu utilises HF ou une autre base, car dans le dernier cas une solution de facilité est de créer deux vues, une pour chaque requête, puis de faire une jointure entre les deux vues. 2. Deux requêtes séparées, et un bout de code pour remettre tout à plat dans
un fichier temporaire, ou une table mémoire.
Juste pour la petite histoire : tel que tu présentes tes tables, un produit ne peut qu'être en stock OU vendu, mais pas les deux en même temps, ou alors produit n'est pas la clé primaire de Article. Mais dans ce cas ton analyse me semble un peu bizarre. Pourquoi ne pas utiliser une table Stat_Produit, qui contient les quantités en stock, et les quantités vendues ? Frédéric.
|
| |
| |
| | | |
|
| | | | |
| | |
|