Bonjour tout le monde,
Nouveau inscrit sur le site (car pas la première fois que je viens faire un tour dessus) et novice en connaissance Access (d'où mes différents aller-retour sur ce même site), j'espère pouvoir trouver une solution à mon problème grâce à vous... si solution existe.
CONTEXTE:
Actuellement en stage dans une entreprise, il m'est demandé de créer une base de données comprenant les "exigences client" d'un projet et, par la suite, de créer un outil de "reporting" qui permettra le suivi et la gestion de ces exigences.
Pour ce faire, j'utilise les logiciels Access 2013 (pour la partie BD et exploitation/synthétisation des données) et Power B.I. Desktop (pour la partie affichage graphique des données).
1ERE ÉTAPE:
Pour commencer, j'ai créé une base de données structurée tel que suite (je vous donne une version [très] simplifiée):
ORIGINE |
IDENTIFIANT |
SYSTEME |
SOUS-SYSTEME N-1 |
FONCTION TRANSVERSALE 1 |
ABC |
001 |
1 |
1 |
X |
ABC |
002 |
1 |
1 |
X |
ABC |
003 |
1 |
1 |
Y |
ABC |
004 |
1 |
2 |
X |
ABC |
005 |
1 |
2 |
Y |
ABC |
006 |
2 |
1 |
X |
ABC |
007 |
2 |
1 |
X |
Sachant que le(s) critère(s):
- Fonction Transversale 1 peut avoir comme solution un des choix suivant: X ou Y ou Z (choix à effectuer dans une liste déroulante);
- Système & Sous-Système N-1 composent l’arborescence de l'exigence.
2EME ÉTAPE:
Ensuite, j'utilise une requête (Tableau croisé dynamique - utilisation de l'Assistant Requête) afin de comptabiliser le nombre de X, Y ou Z en fonction de l'arborescence. Et ce dans le but d'avoir une synthétisation des données tel que suit:
SYSTEME |
SOUS-SYSTEME N-1 |
NBR DE X |
NBR DE Y |
1 |
1 |
2 |
1 |
1 |
2 |
1 |
1 |
2 |
1 |
2 |
0 |
Jusque-là, pas de problème.
3EME ÉTAPE:
J'ai créé une seconde requête "Création de table" qui va chercher les données se trouvant dans la feuille de données de la 1ère requête (expliquée précédemment) afin de les faire figurer dans une nouvelle table.
Le pourquoi de la chose? Car à partir de Power B.I. Desktop, il est uniquement possible de charger les données se trouvant dans un format table dans Access. Sinon, cela aurait été trop facile.
PROBLÉMATIQUE:
Comme expliqué plus haut, le critère Fonction Transversale 1 a plusieurs choix possibles (X, Y ou Z).
Hors, à ce stade du projet, nous n'avons pas encore la nécessité de rentrer le choix Z.
Du coup, si dans ma deuxième requête, je l'utilise comme champ de référence, le message d'erreur suivant s'affiche:
"Le moteur de la base de données Microsoft ne reconnait pas "...." en tant que nom de champ ou expression correcte.".
Je sais que cela est normal car la 1ère requête n'a identifié aucun Z dans la base de données.
Ma question est donc la suivante:
Existe-t-il une solution [ou une autre - je ne suis pas jaloux] afin de remonter, pour Z, la valeur 0 dans le tableau de synthétisation?
Si oui, cela se fait-il dès la 1ère requête?
Le but de cette manœuvre serait d'éviter de venir changer les paramètres de mes différentes requêtes dans le futur lorsque le choix Z sera enfin rentré dans la base de données.
Car, comme expliqué plus haut, chaque exigence a d'autres critères que celui de Fonction Transversale 1, et le même problème aura lieu pour plusieurs d'entre eux.
En espérant avoir été assez clair.
Sinon, n'hésitez pas à demander amples informations que je me ferai une joie de vous fournir dans les plus bref délais.
Je remercie toute personne qui pourra m'aider, et aussi car il sera allé jusqu'au bout de mon texte.
Vous souhaitant une bonne journée/soirée.
Sébastien
Partager