Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Modification / ajout d'enregistrement dans des formulaires imbriqués

SkyCorp

XLDnaute Junior
Bonjour à tous,

Je passe depuis peu d'Excel vers Access pour l'un de mes projets. Je précise, je débute en Access mais j'ai tout de même lu plusieurs tutoriaux.

J'ai tout d'abord créé une simple base pouvant gérer des contacts, chaque contact pouvant avoir 1 ou plusieurs noms, et 1 ou plusieurs prénoms.
Ma base comporte donc plusieurs tables, dont des tables de jonction pour des relations plusieurs vers plusieurs.
J'ai également créé des requêtes et sous-requêtes pour pouvoir gérer les informations à traiter ensemble.
Et pour finir, j'ai créé un sous-formulaire regroupant les informations sur l'identité de chaque personne, et un formulaire central comportant entre autre ce sous-formulaire et une liste pour sélectionner les personnes.
(cf. fichier joint)

Problème, je n'arrive pas à entrer de nouveaux enregistrements ou modifier des enregistrements via le formulaire ou le sous-formulaire. Je n'ai pourtant pas verrouiller mes zones de texte.

C'est sans doute trivial, mais que puis-je faire ?

Merci d'avance pour votre aide
 

Pièces jointes

  • BDD contact - en cours 2.zip
    102.7 KB · Affichages: 70

chris

XLDnaute Barbatruc
Re : Modification / ajout d'enregistrement dans des formulaires imbriqués

Bonjour

Cela ressemble à une usine à gaz !

Sauf si tu gères des acteurs jouant des rôles et portant une identité pour chaque rôle, il n'y a aucun intérêt à découper l'identité des personnes ainsi.

Si vraiment tu veux découper, tu peux mettre dans la table des personnes, le nom patronymique dans la fiche (enregistrement) de la personne, pas de prénom et créer

  • une table des noms avec l'ID de la personne, un champ nom et un champ type (marital, usage). Si la personne n'a que son nom patronymique alors pas d'enregistrement dans cette table sinon on y mets celui ou ceux qui s'ajoutent au patronymique
  • une table des prénoms avec l'ID de la personne, un champ prénom, un champ ordre (dans l'état civil) et un champ usage oui/non. Il y aura donc 1 enregistrement par prénom pour cette personne.
Tu auras donc toute latitude pour remplir/modifier un formulaire avec 2 sous formulaires noms, prénoms, la table personnes étant en relation 1 à n avec chacune des 2 autres.

Variante : mettre le 1er prénom à l'état civil dans le table des personnes et utiliser l'autre table pour compléter, si nécessaire...
 
Dernière édition:

SkyCorp

XLDnaute Junior
Re : Modification / ajout d'enregistrement dans des formulaires imbriqués

Déjà, merci pour ton retour.

Je ne m'attendait pas à ce que ce soit les prémices d'une usine à gaz !
J'espère ne pas être parti sur une idée trop ambitieuse.

Mon objectif pour l'instant :
  • afficher en titre et/ou une zone de liste déroulante le nom et le prénom d'usage, et éventuellement le surnom s'il y en a un,
  • dans l'identité, les différents noms (nom d'usage, nom de jeune fille), les différents prénoms (le prénom usuel, les autres prénoms, éventuellement un surnom).

L'idée par la suite, c'est que l'utilisateur écrive ses infos sur des champs différents (1 champ par prénom, 1 champ par nom, ...) apparaissant de manière dynamique.
Et comme je ne connais pas à l'avance le nombre de noms (à priori 2 max, mais je peux me tromper) et prénoms, j'ai préféré dissocier les données. Je suis donc parti sur des relations plusieurs à plusieurs.

Pourquoi privilégies-tu l'écriture du nom dans la table personnes, et non dans la table noms ?
Est-ce la présence de relations n à n qui bloque l'écriture ?
 

chris

XLDnaute Barbatruc
Re : Modification / ajout d'enregistrement dans des formulaires imbriqués

Re

Une personne peut avoir plusieurs noms, donc 1 à n
Une personne peut avoir plusieurs prénoms donc 1 à n

Tu ne gères pas l’étymologie des noms de familles donc une table de tous les noms de la planète n'est pas utile et même dans ce cas on aurait un nom peut correspondre à 1 ou n personnes et une personne a 1 ou n noms.

Pourquoi le nom dans la table des personnes ? Parce qu'à l'état civil seul compte le nom patronymique : une base de données s'appuie aussi sur la législation...

Pour ma part, je suivrais pour la logique la norme française : nom patronymique + 1er prénom dans la fiche de la personne, et les éventuels compléments dans les deux autres tables.

Mais dans la pratique, dans une table de personnes :
3 champs : nom patronymique + nom marital + usage (indiquant soit le patronymique, soit le marital),
+ 2 champs : 1er avec tous les prénoms tel qu'à l'état civil + 2ème champ avec prénom d'usage,
suffisent dans la plupart des situations pour la partie noms... et les autres tables ne servent donc pas...

Que l'on prenne l'une ou l'autre solution, on peut faire ce que tu souhaites tant en affichage qu'en saisie/MAJ.
 

SkyCorp

XLDnaute Junior
Re : Modification / ajout d'enregistrement dans des formulaires imbriqués

J'ai un problème de compréhension de mon côté.
1 personne peut avoir un ou plusieurs noms/prénoms, et plusieurs personnes peuvent avoir le même nom ou le même prénom. Il me semblait dans ce cas qu'il s'agissait d'une relation n à n, et qu'il faut obligatoirement passer par une table de jonction dans ce cas.
Pourtant tu parles de relations 1 à n.
Il s'agit des bases, mais je ne comprends plus quand et comment appliquer ces relations .

D'autant que je vais avoir le même genre de soucis lorsque je mettrai en relation cette table personne à une table société (1 société comprend plusieurs employés, et une personne peut travailler dans plusieurs sociétés)
 

chris

XLDnaute Barbatruc
Re : Modification / ajout d'enregistrement dans des formulaires imbriqués

Re

Oui il y a un problème de compréhension. Les noms et les prénoms n'existent que parce que tu as des personnes, pas intrinsèquement car tu n'es pas en train de faire une cartographie de la distribution des noms sur la planète.

Le fait que plusieurs personnes aient un même nom ou une même prénom, n'a aucune importance et n'a pas à être géré dans ce type de base.

Pour les sociétés c'est différent. Elles existent indépendamment des personnes et si des personnes travaillent dans n sociétés il faut effectivement gérer les contrats qui feront la liaison, a minima id personne, Id société, mais sans doute aussi début collaboration, fin collaboration, poste occupé...(il peut d'ailleurs exister plusieurs enregistrements contrats pour ce couple d'ID (postes successifs si on garde l'historique, ou salarié multi postes)).
 

SkyCorp

XLDnaute Junior
Re : Modification / ajout d'enregistrement dans des formulaires imbriqués

OK, je comprends mieux. Je reviendrai sans doute sur ce point quand j'intègrerai les sociétés.

Je vais déjà finir la partie sur les noms et prénoms
 

Discussions similaires

Réponses
1
Affichages
375
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…