OVH Cloud OVH Cloud

Requête

4 réponses
Avatar
Jean-Luc A
Bonjour,

Ce serait sympa si quelqu'un pouvait m'aider. Voici mon problème. J'ai une
table article, une table commande avec des quantités et une table retour avec
des quantités en retour. Je n'arrive pas à faire une requête qui me donne
l'état de mon stock c'est-à-dire les quantités moins les quantités retour.

J'obtiens ceci :

Article Qtés Qtés retour Stock
1 20 10 10
2 10
3 5 4 1
4 2

Il faudrait que je puisse obtenir ceci :

Article Stock
1 10
2 10
3 1
4 -2

Voici le code de ma requête :

SELECT Articles.Désignation, Commandes.Qtés, Retour.[Qtés retour],
[Qtés]-[Qtés retour] AS Stock
FROM (Articles INNER JOIN Commandes ON Articles.N° = Commandes.Article)
INNER JOIN Retour ON Articles.N° = Retour.Article
GROUP BY Articles.Désignation, Commandes.Qtés, Retour.[Qtés retour];

D'avance merci
--
JLA

4 réponses

Avatar
3stone
Salut,

"Jean-Luc A"
| Ce serait sympa si quelqu'un pouvait m'aider. Voici mon problème. J'ai une
| table article, une table commande avec des quantités et une table retour avec
| des quantités en retour. Je n'arrive pas à faire une requête qui me donne
| l'état de mon stock c'est-à-dire les quantités moins les quantités retour.
|
| J'obtiens ceci :
|
| Article Qtés Qtés retour Stock
| 1 20 10 10
| 2 10
| 3 5 4 1
| 4 2
|
| Il faudrait que je puisse obtenir ceci :
|
| Article Stock
| 1 10
| 2 10
| 3 1
| 4 -2
|
| Voici le code de ma requête :
|
| SELECT Articles.Désignation, Commandes.Qtés, Retour.[Qtés retour],
| [Qtés]-[Qtés retour] AS Stock
| FROM (Articles INNER JOIN Commandes ON Articles.N° = Commandes.Article)
| INNER JOIN Retour ON Articles.N° = Retour.Article
| GROUP BY Articles.Désignation, Commandes.Qtés, Retour.[Qtés retour];


Essaies:

SELECT Articles.Désignation, Nz([Qtés])-Nz([Qtés retour]) AS Stock
FROM (Articles INNER JOIN Commandes ON Articles.N° = Commandes.Article)
INNER JOIN Retour ON Articles.N° = Retour.Article
GROUP BY Articles.Désignation, Commandes.Qtés, Retour.[Qtés retour];


Mais, tu ne devrait avoir qu'une table des mouvements...
Entrées et Sorties dans la même table, les retours étant des entrées
avec simplement une origine différente...


--
A+
Pierre (3stone) Access MVP
Perso: http://users.skynet.be/accesshome/
Conseils MPFA: http://users.skynet.be/mpfa/
Email : http://www.cerbermail.com/?Xfg61Z3IQw
Avatar
Jean-Luc A
Meci Pierre,

J'ai essayé le code suivant mais si les enregistrements ne sont pas existant
dans les deux tables ils sont ignorés dans le stock.

SELECT Articles.Désignation, Commandes.Qtés, Retour.[Qtés retour],
Nz([Qtés])-Nz([Qtés retour]) AS Stock
FROM (Articles INNER JOIN Commandes ON Articles.N° = Commandes.Article)
INNER JOIN Retour ON Articles.N° = Retour.Article
GROUP BY Articles.Désignation, Commandes.Qtés, Retour.[Qtés retour];

Merci d'avance à celui qui peut m'aider...
--
JLA
Avatar
3stone
re,

"Jean-Luc A"
| J'ai essayé le code suivant mais si les enregistrements ne sont pas existant
| dans les deux tables ils sont ignorés dans le stock.
|
| SELECT Articles.Désignation, Commandes.Qtés, Retour.[Qtés retour],
| Nz([Qtés])-Nz([Qtés retour]) AS Stock
| FROM (Articles INNER JOIN Commandes ON Articles.N° = Commandes.Article)
| INNER JOIN Retour ON Articles.N° = Retour.Article
| GROUP BY Articles.Désignation, Commandes.Qtés, Retour.[Qtés retour];


Tu remplace tes "Inner join" par de "left join"


--
A+
Pierre (3stone) Access MVP
Perso: http://users.skynet.be/accesshome/
Conseils MPFA: http://users.skynet.be/mpfa/
Email : http://www.cerbermail.com/?Xfg61Z3IQw
Avatar
Jean-Luc A
Merci Pierre c'est super ça marche !
--
JLA



re,

"Jean-Luc A"
| J'ai essayé le code suivant mais si les enregistrements ne sont pas existant
| dans les deux tables ils sont ignorés dans le stock.
|
| SELECT Articles.Désignation, Commandes.Qtés, Retour.[Qtés retour],
| Nz([Qtés])-Nz([Qtés retour]) AS Stock
| FROM (Articles INNER JOIN Commandes ON Articles.N° = Commandes.Article)
| INNER JOIN Retour ON Articles.N° = Retour.Article
| GROUP BY Articles.Désignation, Commandes.Qtés, Retour.[Qtés retour];


Tu remplace tes "Inner join" par de "left join"


--
A+
Pierre (3stone) Access MVP
Perso: http://users.skynet.be/accesshome/
Conseils MPFA: http://users.skynet.be/mpfa/
Email : http://www.cerbermail.com/?Xfg61Z3IQw