Calcul dans ACCESS
Résolu/Fermé
Gilles
-
19 janv. 2017 à 21:57
GCdeK Messages postés 2 Date d'inscription jeudi 19 janvier 2017 Statut Membre Dernière intervention 20 janvier 2017 - 20 janv. 2017 à 11:03
GCdeK Messages postés 2 Date d'inscription jeudi 19 janvier 2017 Statut Membre Dernière intervention 20 janvier 2017 - 20 janv. 2017 à 11:03
Bonjour,
J'essaie de faire une requête avec calcul sur des données venant de 2 tables : une table "achat" comportant 10 produits P1 à P10 achetés par quantité de 10 (donc 10 lignes dans la table) et une table "vente" dans laquelle seuls 3 produits P1 à P3 ont été vendus par quantité respectivement 1, 2 et 3. Je précise que cette table comporte 6 lignes correspondant aux 6 ventes effectuées.
Comment faire une requête "stock" soit différence achat - vente, qui me donne les BONS résultats ?
- Si je fais une requête directement sur les 2 tables, les produits P2 et P3 comportent une donnée quantité achetée de 20 et 30 (valeur correcte 10) correspondant au fait qu'il y a pour ces produits 2 et 3 lignes de vente !! La Q achetée est multipliée par le nombre de fois qu'apparait le produit vendu (donc 2 ou 3 dans ces cas) (je l'ai vérifié sur plein de cas). Ca n'a aucun sens et je ne comprends qu'ACCESS puisse donner de telles données aberrantes !
- Si je fais de requêtes intermédiaires (bilan achat et bilan vente) et une requête "stock" sur ces 2 requêtes, les quantités sont alors correctes, mais pour les produits qui n'ont pas encore été vendus, aucun calcul ne se fait alors que la quantité achetée devrait apparaître ! Mystère.
J'essaie de faire une requête avec calcul sur des données venant de 2 tables : une table "achat" comportant 10 produits P1 à P10 achetés par quantité de 10 (donc 10 lignes dans la table) et une table "vente" dans laquelle seuls 3 produits P1 à P3 ont été vendus par quantité respectivement 1, 2 et 3. Je précise que cette table comporte 6 lignes correspondant aux 6 ventes effectuées.
Comment faire une requête "stock" soit différence achat - vente, qui me donne les BONS résultats ?
- Si je fais une requête directement sur les 2 tables, les produits P2 et P3 comportent une donnée quantité achetée de 20 et 30 (valeur correcte 10) correspondant au fait qu'il y a pour ces produits 2 et 3 lignes de vente !! La Q achetée est multipliée par le nombre de fois qu'apparait le produit vendu (donc 2 ou 3 dans ces cas) (je l'ai vérifié sur plein de cas). Ca n'a aucun sens et je ne comprends qu'ACCESS puisse donner de telles données aberrantes !
- Si je fais de requêtes intermédiaires (bilan achat et bilan vente) et une requête "stock" sur ces 2 requêtes, les quantités sont alors correctes, mais pour les produits qui n'ont pas encore été vendus, aucun calcul ne se fait alors que la quantité achetée devrait apparaître ! Mystère.
A voir également:
- Calcul dans ACCESS
- Calcul moyenne excel - Guide
- Calcul charpente bois gratuit - Télécharger - Architecture & Déco
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
- Calcul km marche à pied gratuit - Télécharger - Sport
- Logiciel calcul surface terrain gratuit - Télécharger - Outils professionnels
3 réponses
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
217
Modifié par castours le 19/01/2017 à 22:29
Modifié par castours le 19/01/2017 à 22:29
bonjour
le stock est la somme des produits achetés moins la somme des produits vendus.
j'ai une base exemple de calcul de stock.
cela t'interresse t il
https://www.cjoint.com/c/FHmm20A51qV
un exemple dans ce lien
le stock est la somme des produits achetés moins la somme des produits vendus.
j'ai une base exemple de calcul de stock.
cela t'interresse t il
https://www.cjoint.com/c/FHmm20A51qV
un exemple dans ce lien
Utilisateur anonyme
19 janv. 2017 à 22:35
19 janv. 2017 à 22:35
Bonjour,
Ca n'a aucun sens et je ne comprends qu'ACCESS puisse donner de telles données aberrantes !
Comme on dit, le bug est entre la chaise et le clavier, Access te retourne ce que tu lui demandes :)
Il faudrait voir tes requêtes.
Mais je suis certain que la fonction NZ() devrait répondre à ton souci : https://support.microsoft.com/fr-fr/office/nz-fonction-8ef85549-cc9c-438b-860a-7fd9f4c69b6c?ui=fr-fr&rs=fr-fr&ad=fr
Si tu rencontres un souci avec son utilisation, n'hésites pas.
A+
Ca n'a aucun sens et je ne comprends qu'ACCESS puisse donner de telles données aberrantes !
Comme on dit, le bug est entre la chaise et le clavier, Access te retourne ce que tu lui demandes :)
Il faudrait voir tes requêtes.
Mais je suis certain que la fonction NZ() devrait répondre à ton souci : https://support.microsoft.com/fr-fr/office/nz-fonction-8ef85549-cc9c-438b-860a-7fd9f4c69b6c?ui=fr-fr&rs=fr-fr&ad=fr
Si tu rencontres un souci avec son utilisation, n'hésites pas.
A+
GCdeK
Messages postés
2
Date d'inscription
jeudi 19 janvier 2017
Statut
Membre
Dernière intervention
20 janvier 2017
20 janv. 2017 à 11:00
20 janv. 2017 à 11:00
Merci, ça marche !
yg_be
Messages postés
23476
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 février 2025
Ambassadeur
1 568
19 janv. 2017 à 22:55
19 janv. 2017 à 22:55
bonsoir, nous pourrions probablement t'aider si tu partageais la définition (SQL) de tes requêtes.
Toi, tu ne comprends pas qu'ACCESS puisse donner de telles données aberrantes. Access ne comprends sans doute pas que tu lui demandes d’exécuter des actions aussi aberrantes. Si tu veux progresser, apprend à te remettre en cause.
ta deuxième tentative (bilan via requêtes intermédiaires) est bonne, bien meilleure que ta première tentative aberrante. cependant, tu as apparemment négligé de faire un "outer join" dans la requête finale "stock". si tu as défini la relation entre les deux requêtes "bilan" via le gestionnaire de relations, jette un coup d’œil dans les propriétés de cette relation : tu veux avoir tous les enregistrements de "bilan achat", même ceux n'ayant pas d'enregistrement correspondant dans "bilan vente".
Toi, tu ne comprends pas qu'ACCESS puisse donner de telles données aberrantes. Access ne comprends sans doute pas que tu lui demandes d’exécuter des actions aussi aberrantes. Si tu veux progresser, apprend à te remettre en cause.
ta deuxième tentative (bilan via requêtes intermédiaires) est bonne, bien meilleure que ta première tentative aberrante. cependant, tu as apparemment négligé de faire un "outer join" dans la requête finale "stock". si tu as défini la relation entre les deux requêtes "bilan" via le gestionnaire de relations, jette un coup d’œil dans les propriétés de cette relation : tu veux avoir tous les enregistrements de "bilan achat", même ceux n'ayant pas d'enregistrement correspondant dans "bilan vente".
20 janv. 2017 à 11:03