|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 3 ![]() |
Bonjour à tous,
Il s'agit de mon premier post sur le forum, donc tout d'abord un grand merci à toute l'équipe car c'est une vraie mine d'informations. je réalise actuellement une base de traçabilité. Pour l'instant, j'ai réussi à me dépatouiller pour sortir un outil fonctionnel mais je suis actuellement confronté à un problème... Je m'explique... Je suis bloqué sur une mise à jour d'un module de recherche multicritères avec la fonction "Like" permettant de rechercher par modèle de produit (ou numéro de série), compte client, ville et pays... Ce module fonctionne à la perfection mais je suis bloqué via les comptes clients car ma table clients est une extraction "passerelle" avec un logiciel ERP utilisé par ma société et certains clients finaux n'existent pas dans ce logiciel. Dans ma table produit, j'ai le numéro de compte affecté par produit (S/N) et dans le cas où ce client n'existe pas dans l'ERP, j'ai donné la possibilité de renseigner un client final dans un module en remplaçant le compte client à 6 digits par le mot "SPECIAL" et renseigne directement le NOM + VILLE + PAYS sur l'enregistrement dudit produit. De plus, j'ai créé une seconde table CLIENTS_LIVR avec une duplication du compte client si l'adresse du client de l'ERP n'est pas la bonne adresse de livraison. Pour conclure, lors de ma recherche d'affectation sur un produit, j'ai trois possibilités: - Adresse émanant de la table CLIENTS_LIVR - Adresse spéciale directement sur l'enregistrement du produit dans la table PRODUITS - Adresse de la table CLIENTS extraite de l'ERP. Dans un premier temps pour une recherche, je veux que la requête multicritère sélectionne le clients spécial si le compte client est "SPECIAL". Si le compte n'est pas "SPECIAL", alors je veux vérifier si ce compte existe dans la table CLIENTS_LIVR... Et s'il n'existe pas, je veux sélectionner l'adresse par défaut de l'ERP... Du coup, j'ai créé une requête "REQ1" avec les multicritère Like (modèle ou S/N, COMPTE, NOM, VILLE et PAYS) qui me génère une liste de produits selon la recherche avec, sur chaque enregistrement, les champs ci-dessous: - Compte = compte client affecté au produit de la table PRODUITS - toutes les infos du produit de la table PRODUITS - nom_erp, ville_erp et pays_erp de la table CLIENTS "passerelle" - nom_spe, ville_spe et pays_spe "SPECIAL" de la table PRODUITS - nom_livr, ville_livr et pays_livr de la table CLIENTS_LIVR Pour sélectionner les bonnes infos, j'ai créé une deuxième requête "REQ2" appelant la première et utilisé la fonction Iif. Par exemple, pour le nom du client, j'ai créé une expression "NOM_FINAL" non rattachée à une table ou requête et indiqué le critère ci-dessous: Iif(REQ2.Compte = "SPECIAL";REQ2.nom_spe;Iif(REQ2.nom_livr="";REQ2.nom_erp;REQ2.nom_livr)) Quand je lance la deuxième requète, ça bloque "La synthaxe de l'expression NOM_FINAL " " n'est pas correcte" ou un truc du genre... Avez-vous une idée? Est-ce que ma logique est bonne pour résoudre ce problème? Je ne suis pas contre utiliser du VB pour régler ce problème mais je ne vois vraiment pas comment m'y prendre... Merci d'avance, koubiac. |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 178 ![]() |
Bonjour Koubiac,
Un peu touffu... Sur un plan "1er niveau" : Code sql :
Iif(REQ2.Compte = "SPECIAL" ; REQ2.nom_spe ; Iif(REQ2.nom_livr="" ; REQ2.nom_erp;REQ2.nom_livr)) Code sql :
Iif(REQ2.Compte = "SPECIAL" , REQ2.nom_spe , Iif(REQ2.nom_livr="" , REQ2.nom_erp , REQ2.nom_livr)) Sur un plan "2ème niveau" : Il me semble que tu montes une usine à gaz pour palier à un manque d'information dans l'ERP, application "métier" que je suppose fondamentale dans ta boîte. A mon sens, il faudrait utiliser Access pour extraire les anomalies, et non pas pour développer un "ERP bis"... qui t'emmènera dans des chemins forcément périlleux. Par exemple, il me semble très grave que tous les clients réels n'existent pas dans l'ERP. Donc, pas de compte comptable, pas de facture, pas de commande... ce n'est qu'un exemple. Si l'application Access devient un "ERP bis", alors je suppose que les services comptable, logistique et autre administration des ventes vont exprimer d'autres "besoins bis" déjà pourvus dans l'ERP. En final, tu vas "glisser" doucement vers une double application contenant des doublons de données... A plus ou moins long terme, il faudra prévoir des intégrations de données de l'application Access vers l'ERP, car les utilisateurs en auront assez de synchroniser les deux bases manuellement. Mais ce n'est que mon humble avis...
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 3 ![]() |
Bonjour Richard et merci pour ta réponse...
Je bug toujours sur cette fameuse requète avec une erreur 3125 " " n'est pas un nom valide. Je ne comprends pas car le nom de l'expression est NOMF, donc simple. Ci-dessous la requète en SQL modifiée: Code :
En ce qui concerne tes interrogations justifiées pour le second plan, je ne cherche pas à recréer un ERP. Effectivement, le progiciel actuel répond parfaitement aux demandes des utilisateurs (compta, commercial, etc). Seul bémol, aucuns modules adaptés à la traçabilité produits. En ce qui concerne les comptes clients non renseignés, cela concerne surtout l'export car nous travaillons avec des distributeurs ou ensemblier et non avec les clients finaux où sont affectés les produits. Merci d'avance, koubiac. |
||
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 178 ![]() |
Code sql :
[.../... SEARCH_CLIENTS]![CLIENT_DT.Nom<>Null .../... Code sql :
[.../... SEARCH_CLIENTS]![CLIENT_DT.Nom] Is Not Null .../...
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 3 ![]() |
Merci Richard, ça fonctionne à la perfection.
Une erreur bien bête qui m'a fait perdre 4h de boulot. Encore merci. |
|
|
00
|
|
|
#6 | |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 178 ![]() |
Citation:
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com