[Résolu] autoremplissage de champs

Discussions sur le module de base de données Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
Itsas
Fraîchement OOthentifié
Messages : 8
Inscription : 21 févr. 2021 13:36

[Résolu] autoremplissage de champs

Message par Itsas »

Bonjour

J'ai créé une base de données relationnelle mais je n'arrive pas à ce que les champs se remplissent automatiquement.
J'ai une table patients et lorsque j'enregistre une consultation je voudrais qu'en saisissant le nom du patient son ID s'affiche automatiquement. Je ne vois pas comment faire.

Pouvez-vous m'aider

Merci

Christophe
Pièces jointes
TEST.odb
(23.56 Kio) Téléchargé 101 fois
Libre office 7.2.7
Mac Os catalina 10.15.7
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25143
Inscription : 03 mars 2006 08:45
Localisation : 127.0.0.1
Contact :

Re: autoremplissage de champs

Message par Dude »

Salut,

Le principe du modèle relationnel est d'éviter la redondance d'informations.
Ce qui n'est pas le cas de l'ODB fourni.
Capture.PNG
Ainsi il est inutile de mettre le titre dans T_PATIENTS puisqu'il existe l'ID_NOM.
Même chose avec T_CONSULT qui contient le nom du patient ou le lieu alors qu'il y a des identifiants.
Itsas
Fraîchement OOthentifié
Messages : 8
Inscription : 21 févr. 2021 13:36

Re: autoremplissage de champs

Message par Itsas »

Merci pour votre réponse

Je ne comprends pas, si je supprime TITRE dans T_PATIENTS comment je peux entrer sa valeur lors de la création de la fiche patient?

Christophe
Libre office 7.2.7
Mac Os catalina 10.15.7
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: autoremplissage de champs

Message par jeanmimi »

Bonjour,
Itsas a écrit :Je ne comprends pas, si je supprime TITRE dans T_PATIENTS comment je peux entrer sa valeur lors de la création de la fiche patient?
J'ai regardé la Table T_CONSULT.
Lors de la création de la fiche de consultation, la Zone de liste affiche le Nom du Patient puis le stocke à nouveau, alors qu'elle devrait, dans une Base relationnelle, ne stocker que l'ID du Patient. Pour cela, il faut donc modifier l'instruction SQL :
Récupérer ID.jpg
Il en sera de même pour les autres Zones de liste qui doivent enregistrer les Types de règlements et de Lieux : là aussi, l'instruction SQL doit être modifiée pour que la Table T_CONSULT n’enregistre que les ID dans des champs de Type INTEGER.
Pièces jointes
Patients.odb
(24.63 Kio) Téléchargé 119 fois
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Itsas
Fraîchement OOthentifié
Messages : 8
Inscription : 21 févr. 2021 13:36

Re: autoremplissage de champs

Message par Itsas »

Merci,
Je viens de modifier cela mais ça ne fonctionne pas, il doit me manquer qqchose.
Christophe
Pièces jointes
TEST.odb
(23.58 Kio) Téléchargé 97 fois
Libre office 7.2.7
Mac Os catalina 10.15.7
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16955
Inscription : 03 mars 2006 17:02
Localisation : Venise verte

Re: autoremplissage de champs

Message par jeanmimi »

J'avais joint une Base Patients dans mon message pour la tester.
En soi, l’affichage de l'ID du Patient ne présente pas d'intérêt dans le Formulaire de consultation, puisqu'on pourra le retrouver dans une requête.
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Avatar de l’utilisateur
jeanmi2403
SuppOOrter
SuppOOrter
Messages : 1398
Inscription : 18 janv. 2008 10:02
Localisation : Val de Marne

Re: autoremplissage de champs

Message par jeanmi2403 »

Bonsoir,
Il ne me semble pas raisonnable de mettre une liste déroulante sur le nom, car on peut modifier la fiche d'un patient et l'attribuer à un autre ?
Bonne soirée...
Jean-Michel
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
Itsas
Fraîchement OOthentifié
Messages : 8
Inscription : 21 févr. 2021 13:36

Re: autoremplissage de champs

Message par Itsas »

Merci pour vos réponses

Jean-Michel, j’ai mis une liste déroulante sur le nom pour ne pas faire de faute dans la saisie de celui-ci lors d’une consultation. Faudrait-il que j’utilise un sous menu?
Libre office 7.2.7
Mac Os catalina 10.15.7
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25143
Inscription : 03 mars 2006 08:45
Localisation : 127.0.0.1
Contact :

Re: autoremplissage de champs

Message par Dude »

Itsas a écrit :Je viens de modifier cela mais ça ne fonctionne pas, il doit me manquer qqchose.
Il doit manquer des explications. :?
"Ne fonctionne pas" n'aide pas à comprendre car je ne vois pas ce que tu as modifié dans la structure.

PS : il serait bien d'arrêter de nommer tes documents TEST, tout le monde faisant la même chose, il est difficile pour nous de s'y retrouver.
Poser une question, c'est bien. Répondre aux autres, c'est encore mieux.
Améliorez AOO et votez pour les issues
Avatar de l’utilisateur
jeanmi2403
SuppOOrter
SuppOOrter
Messages : 1398
Inscription : 18 janv. 2008 10:02
Localisation : Val de Marne

Re: autoremplissage de champs

Message par jeanmi2403 »

Itsas a écrit : Jean-Michel, j’ai mis une liste déroulante sur le nom pour ne pas faire de faute
Bonjour,
Il faudrait déclencher une mise à jour du formulaire au changement dans la liste.
Bonne journée
Jean-Michel
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
Itsas
Fraîchement OOthentifié
Messages : 8
Inscription : 21 févr. 2021 13:36

Re: autoremplissage de champs

Message par Itsas »

"Il faudrait déclencher une mise à jour du formulaire au changement dans la liste"
Je ne comprends pas cette phrase, avez-vous des précisions?

Christophe
Libre office 7.2.7
Mac Os catalina 10.15.7
HRk2o
Membre cOOnverti
Membre cOOnverti
Messages : 344
Inscription : 29 mai 2009 10:51
Localisation : Guyane

Re: autoremplissage de champs

Message par HRk2o »

Bonjour,

dans ce nouveau fichier de projet, comparez avec le vôtre et ce qui diffèrent dans les relations, tables, formulaires...

J'ai fait une ébauche de ce qui semble correspondre au mieux à ce que vous souhaitez parvenir!

Cela va être un long chemin; il vaut peut être mieux déplacer le sujet vers la section 'Projet'
Patients2.odb
(43.64 Kio) Téléchargé 115 fois
@+
AOO 4.1.14 et LO 7.3.7.2 sous OsX 10.13.6 High Sierra ; Windows 10 sous AOO 4.1.14 et LibO 7.3.7.2
Avatar de l’utilisateur
jeanmi2403
SuppOOrter
SuppOOrter
Messages : 1398
Inscription : 18 janv. 2008 10:02
Localisation : Val de Marne

Re: autoremplissage de champs

Message par jeanmi2403 »

Bonsoir,
Itsas a écrit :"Il faudrait déclencher une mise à jour du formulaire au changement dans la liste"
Je ne comprends pas cette phrase, avez-vous des précisions?
Cela se fait avec une macro.
Bonne soirée
Jean-Michel
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
Itsas
Fraîchement OOthentifié
Messages : 8
Inscription : 21 févr. 2021 13:36

Re: autoremplissage de champs

Message par Itsas »

Merci pour vos réponses,

Je me mets au travail :)
Libre office 7.2.7
Mac Os catalina 10.15.7
Verrouillé