IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IHM Discussion :

Problème liaisons formulaire un à plusieurs sous formulaire du précédent [AC-2016]


Sujet :

IHM

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2013
    Messages : 69
    Points : 93
    Points
    93
    Par défaut Problème liaisons formulaire un à plusieurs sous formulaire du précédent
    Bonjour
    J’essaye d’informatiser avec ACCESS le suivi des demandes de financements de clients dans un organisme de crédit.

    Le cahier des charges : Un client peut faire une ou plusieurs demandes de financements Au moment où un client fait sa demande je regarde sa situation financière du moment et notamment sa notation et j’indique à quel moment sa demande va être examinée (niveau de délégation) et différentes infos. C’est l’objet de la tables T_INSTANCES.

    Le client pour une même instance peut faire une ou plusieurs demandes. J’ai créé la table T_DEMANDES qui recense les différentes demandes (exemple un prêt et un découvert)
    Chaque demande est ensuite examinée. Soit elle est refusée soit il peut y avoir une ou plusieurs propositions commerciales c’est l’objet de la table T_DECISIONS car le montant le taux la durée l’objet de financement peuvent être différents de la demande.

    Par exemple un client demande un prêt de 50k€ et on lui propose 40K€. Voir deux prêts avec des taux différents fixe ou variable.

    Enfin pour chaque proposition commerciale il peut y avoir une ou plusieurs conditions non suspensives que j’écris dans la table (T_CONDITIONS) et c’est là que se situe mon problème.
    Je bloque au niveau des champs pères fils dans le formulaire central F_INSTANCES, pour les 2 premiers sous formulaires la relation père et fils via le champ id_instance se passe bien car directement relié à la table T_INSTANCES.

    Par contre la relation père fils entre le formulaire F_DECISIONS et F_CONDITIONS via le champ N°DECISION et id_decision se passe mal. Chaque décision peut avoir aucune ou plusieurs conditions. Or le lien ne se fait pas correctement d’une part il faut que je rentre manuellement le numéro de la décisions et même dans ce cas ces conditions se raccrochent à toutes les décisions. Elles ne sont pas liées à un N°de Décision précis. J’espère être clair.

    On voit encore mieux le problème sur le formulaire « F_INSTANCES UNION F_DEMANDES UNION SF_DECISIONS ET CONDITIONS » où j’ai essayé de passer par un sous formulaire F_DECISIONS UNION CONDITIONS et l’on voit très bien qu’une décision qui n’a pas encore de conditions se voit affubler des conditions qui ne la concernent pas.

    Peut-être que mon MCD est bancale ou mal pensé. en attache le mcd et le base de données.

    Merci pour l’aide que vous pourrez m’apporter.
    Images attachées Images attachées  

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    À priori ton modèle est correctement pensé.

    Je te suggère de faire cela :

    • Crée le formulaire pour les conditions (sfrmConditions, basé sur T_CONDITIONS)
    • Crée le formulaire pour les décisions (sfrmDecisions, basé sur T_DECISIONS)
    • Ajoute à ce formulaire le sous-formulaire des condifions (sfrmConditions).
      Vérifie les propriétés Champ Père, Champs Fils.
      L'assistant fait généralement un bon travail mais parfois il rate la liaison.
    • Valide que tu vois bien seulement les conditions associées à une de tes décisions.


    Attention, si tu planifies d'utiliser cette application avec d'autres utilisateurs, Access est un peu limité.
    La chiffre magique semble être 5 utilisateurs qui écrivent en même temps dans la BD.
    Le nombre d'utilisateurs qui peuvent lire ne semble pas avoir d'impact majeur tant que tu restes en dessous de 20.

    Si tu veux plus, (j'ai eu un contcat qui utilisait une BD access avec 200 utilisateurs en temps quasi réel), il faut penser soigneusement tes inter-actions et passer par ADO plutôt que les mécanismes internes habituels comme les formulaires liés. C'est une assez grosse contrainte de conception de l'interface.

    Aussi au niveau des noms il est recommandé
    • d'adopter une convention de nommage et de s'y tenir.
      Là tu as des tables dont le nom commence par T_ et d'autre où ce n'est pas le cas.
      Tu as aussi des Id quelque chose et de No quelque chose, vérifie si tu ne devrais pas harmoniser.
    • De se limiter aux lettres majuscules et minuscules non accentués et non "décorées" (pas de "ç"), aux chiffres et au souligné (_).
      Pas d'espace ( ), de tiret (-), d'apostrophe (') ou autres caractères non alphabétiques.
      Cela peut être source de bug vicieux et sournois et de problème pour transférer tes données vers d'autre système.
    • De ne pas nommer quelque chose "No".
      Access peut le confondre avec Non en anglais ... avec des conséquences désagréables.
    • De ne pas nommer quelque choes "Date".
      Access peut le confondre avec la fonction Date() ... avec des conséquences désagréables.
      Personnellement je les nomme quelque chose comme DateCommande ou DateFacture ou DateHeure.


    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2013
    Messages : 69
    Points : 93
    Points
    93
    Par défaut
    Bonjour
    Merci pour les précieux conseils: J’ai renommé tous les champs pour adopter une règle de nommage identique.

    Ensuite j’ai créé le sfrmConditions et le sfrmDecisions. J’ai ensuite fait glissé le sfrmConditions dans le sfrmDecisions le champ père et fils étant id_Decision. Ca fonctionne.

    Mais lorsque je fais glisser ce frmDecisions sur la deuxième page d’onglet du frmInstances, les champs ne sont pas synchronisés si je change d'enregistrement dans la T_Instance. J’ai mis en jaune les anomalies. On voit que si id_Instance=2 dans le formulaire principal alors dans le sfrmDécisions on voit que id_Instance=1 et du coup j’ai les décisions de id_Instance=1.

    Merci pour toute aide.

    ci-joints le nouveau MCD et la base et les copies écrans du formulaire qui pose probleme
    Images attachées Images attachées   

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Oui quand on le fait par glisser déplacer parfois Access ne voit pas la liaison.

    1. Ouvre ton formulaire en mode conception.
    2. Supprime le sous-formulaire créé automatiquement par Access lors du glisser/déplacer.
    3. Ajoute un contrôle sous-formulaire depuis la boite à outil de création de formulaire et suit l'assistant.


    Tu peux aussi regarder les propriétés champs père, champs fils du contrôle de sous-formulaire que Access a crée pour toi mais personnellement je préfère passer par l'assistant.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2013
    Messages : 69
    Points : 93
    Points
    93
    Par défaut merci merci
    Bonjour

    Un grand merci pour la peine que tu as prise et la clarté des explications et conseils en cas de partage réseau,règle de nommage etc.

    J'ai suivi tes conseils: j'ai donc effacé le sous formulaire puis ajouté un contrôle de sous-formulaire depuis la boite à outil de création de formulaire et suivi l'assistant en choisissant le sous formulaire sfrmDecisions et laissé Access me suggérer le père et le fils de la relation.

    Merci encore car jamais je n'aurai trouvé seul.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 15/09/2014, 14h35
  2. Réponses: 7
    Dernier message: 07/01/2010, 20h48
  3. Réponses: 5
    Dernier message: 21/10/2009, 15h24
  4. Réponses: 3
    Dernier message: 14/06/2006, 11h04
  5. Lien sous-formulaire à un autre sous-formulaire
    Par jehhej dans le forum Access
    Réponses: 4
    Dernier message: 25/01/2006, 08h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo