Libo 3.6 sous XP Base - Formulaires

Bonjour,
J'ai une table avec 3 champs : REF_AUTEUR (la clé primaire), NOM_AUTEUR et PRENOM_AUTEUR
Question: comment dans un formulaire, je puis mettre une liste déroulante (Zone de liste) sur le champ REF_AUTEUR de telle façon que mes champs NOM_AUTEUR et PRENOM_AUTEUR soient remplis automatiquement.
J'ai su faire mais j'ai oublié ...
D'avance merci

Bonjour

fricard Claude wrote

J'ai une table avec 3 champs : REF_AUTEUR (la clé primaire), NOM_AUTEUR
et PRENOM_AUTEUR
Question: comment dans un formulaire, je puis mettre une liste
déroulante (Zone de liste) sur le champ REF_AUTEUR de telle façon que
mes champs NOM_AUTEUR et PRENOM_AUTEUR soient remplis automatiquement.

La question manque de précision pour ce qui me concerne...

Ce formulaire dans lequel tu veux créer cette liste, sur quelle table est-il
fondé, la table "Auteurs" ou une autre table ?

Autrement dit, souhaites-tu choisir un enregistrement dans la liste
déroulante et faire que cet enregistrement devienne l'enregistrement
courant (cas 1) ou as-tu une autre table liée à la table "Auteurs", sur
laquelle tu fondes le formulaire en question et dans laquelle tu
voudrais alimenter le champ "clé externe" REF_AUTEUR via la liste ?

Voir ce fil :
http://nabble.documentfoundation.org/Base-maj-sous-formulaire-par-listbox-td4036088.html#a4036108
qui aborde la même question/

Cordialement
Pierre-Yves

Effectivement je n'ai pas été suffisamment précis.
Il y a 2 tables AUTEURS et OUVRAGES qui sont mises en relation 1 à plusieurs via la clef REF_AUTEUR (1 auteur pour plusieurs ouvrages) . Si je veux entrer un nouvel ouvrage je peux définir son auteur en faisant "tourner" les Ref_auteur qui afficheront automatiquement dans des champs Texte les noms et prénoms correspondants des auteurs.
J'ajoute que personnellement je ne me suis pas posé la question en ces termes car j'ai créé un formulaire avec sous-formulaire et je n'ai pas besoin de cette approche mais quelqu'un me pose cette question. J'ai déjà fait cela mais avec Access...
A+

Claude

Bonjour

fricard Claude wrote

Il y a 2 tables AUTEURS et OUVRAGES qui sont mises en relation 1 à
plusieurs via la clef REF_AUTEUR (1 auteur pour plusieurs ouvrages)

Tout d'abord une remarque de fond : ce modèle ne permettra pas la
saisie de plusieurs auteurs pour un ouvrage (il faudrait une table
"relation" supplémentaire).

Sinon, pour répondre à la question, tu peux fonder la liste déroulante
associée au champ REF_AUTEUR de la table Ouvrage sur un SQL du
type:

SELECT "PRENOM_AUTEUR" || ' ' || "NOM_AUTEUR", "REF_AUTEUR" FROM "Auteurs"

Autrement dit on concatène Prénom et Nom, séparés par un espace.
Les noms de champs sont entre guillemets (doubles).
L'espace est une chaîne donc entre quotes (simples).
L'opérateur de concaténation (plus simple à écrire que la fonction) est ||

Auteurs.odb <http://nabble.documentfoundation.org/file/n4044941/Auteurs.odb>

Cordialement
Pierre-Yves

Merci Pierre-Yves.
Pour le cours BDD je fais créer une base biblio et je n'utilise pas la possibilité d'afficher les Noms et prénoms des Auteurs en fonction de la Ref_auteur. De fait un auteur commet plusieurs ouvrages , mais 1 ouvrage n'a qu'un auteur ... et les relations entre tables indique bien cet état de fait. Pour affecter un ouvrage à un auteur j'ai un formulaire principal avec les différents auteurs et un sous-formaire en lequel je décris le ou les ouvrages pour cet auteur , le Titre, l'éditeur, le genre ...
Avec ma question je voulais juste répondre à une personne extérieur à mon cours, et à qui je vais conseiller de reconsidérer la construction de sa base.
Il est vrai que pour BDD comme pour le reste d'ailleurs, il faut poser le problème clairement au départ pour ne pas être conduit à demander l'impossible.
Ton exemple, ne montre pas la possibilité de faire tourner(liste déroulante) la ref-auteur pour afficher automatiquement le nom et prénom de l'auteur référencé.
Avec ACCESS (je suis désolé ...) pour une base de gestion de ma cave ... j'ai un code-origine qui est ma clé primaire à laquelle correspondent une Région et une appellation. Dans un formulaire j'ai pu mettre une liste déroulante sur ce code-origine et l'affichage des champs Région et appellation se fait automatiqement. Je renseigne ensuite les champs: Nom du cru , millèsime, nombre de bouteilles... si des personnes ont une cave à gérer je peux leur transmettre la base (rmais pas mes bouteilles ...)
Merci encore, nous allons en rester là pour cette question initiale.

Claude

Suite...

Je ne comprends pas ceci:

fricard Claude wrote

De fait un auteur commet plusieurs ouvrages , mais 1 ouvrage
n'a qu'un auteur

Ni ceci:

fricard Claude wrote

Ton exemple, ne montre pas la possibilité de faire tourner(liste
déroulante) la ref-auteur pour afficher automatiquement le nom et prénom
de l'auteur référencé.

fricard Claude wrote

Avec ACCESS (je suis désolé ...)

Pas de quoi être désolé, c'est un bon produit dans sa catégorie

Cela dit, pas grave que je ne comprenne pas puisque:

fricard Claude wrote

Merci encore, nous allons en rester là pour cette question initiale.

Pierre-Yves

Pierre-Yves:
De fait un auteur commet plusieurs ouvrages , mais 1 ouvrage
n'a qu'un auteur

Exemple V. Hugo a écrit plusieurs ouvrages: La légende des siècles , les misérables , Adèle H etc ..
mais l'ouvrage "les misérables" n'a qu'un seul auteur - n'est-il point ?

Nous nous sommes mal compris, ce que je souhaitais dans un formulaire avec seulement les Auteurs était de pouvoir faire tourner avec une liste déroulante les ref_auteurs et afficher automatiquement les infos: nom auteur et prénom.
A+

Claude

Ceci est exact pour Les Misérables et un certain nombre d'autres ouvrages.

Mais imaginons que tu veuilles entrer dans ta base de données un ouvrage paru il y a déjà un an et intitulé "De OpenOffice.org à LibreOffice 3.5" chez Eyrolles ; tu te renseignes sur l'auteur et, manque de pot, tu découvres qu'ils s'y sont mis à quatre pour l'écrire (Gilles Bignebat, Sophie Gautier, Christian Hardy et Michel Pinquier) ; je suppose que c'est dans ce sens là que Pierre-Yves te disait qu'il ne comprenait pas ton affirmation selon laquelle "un ouvrage n'a qu'un auteur".

Dans la réalité, nous savons que c'est inexact et qu'un ouvrage peut avoir plusieurs auteurs, mais je suppose que ton affirmation ne visait pas "la réalité" et était uniquement destinée à exprimer les règles de fonctionnement de ta base qui faisaient qu'un ouvrage donné n'acceptait qu'un auteur unique.

A+

Bonjour

fricard Claude wrote

Exemple V. Hugo a écrit plusieurs ouvrages: La légende des siècles , les
misérables , Adèle H etc ..
mais l'ouvrage "les misérables" n'a qu'un seul auteur - n'est-il point ?

Je ne suis certes pas V. Hugo : mes ouvrages publiés ont toujours
été écrits à deux ou trois :slight_smile:

Cela dit, Docgranville m'a donné la clé pour comprendre ton message:
tu décris la base en question.

fricard Claude wrote

Nous nous sommes mal compris, ce que je souhaitais dans un formulaire
avec seulement les Auteurs était de pouvoir faire tourner avec une
liste déroulante les ref_auteurs et afficher automatiquement les infos:
nom auteur et prénom.

En effet, j'indiquais déjà dans ma réponse précédente ne pas comprendre.
Las ! Tu utilises exactement la même explication...

La liste de la base exemple permet d'afficher (en liste déroulante donc)
les informations nom auteur et prénom. L'utilisateur choisit et le
champ ref_auteur de la table Ouvrage est automatiquement alimenté
avec la valeur du champ ref_auteur correspondant de la table Auteur.

Si ce n'est pas cela que tu appelles "faire tourner", pourrais-tu expliquer,
voire joindre une copie d'écran ?

Enfin... si tu le souhaites uniquement (puisque tu voulais clore le fil).
Je cherche juste à comprendre et essayer d'aider :slight_smile:

Cordialement
Pierre-Yves

Merci "Doc" de cette intervention dans notre discussion.
Bien évidemment mon idée quant à cette organisation visait ainsi que tu le dis à définir une règle. Néanmoins si j'ai plusieurs auteurs qui auraient commis le même ouvrage, afin de ne frustrer personne je mettrai un nom d'auteur du genre "Gautier-Bignebat-Hardy-Pinquier" et ce sera une référence unique pour ce nom, maintenant si Sophie Gautier publie un livre seule ce sera une autre référence.
S'agissant de ma question sur la possibilité de mettre une liste déroulante (Zone de liste) sur mon champ Ref_auteur et pouvoir automatiquement affiché les Noms et prénom inhérents de l'auteur, je redis qu'ayant organisé ma base de gestion Bibliothèque autrement je ne me suis pas poser la question en ces termes.J'ai un formulaire principal avec les Auteurs et un sous-formulaire avec les ouvrages de ces auteurs. La question m'a été posée par une personne qui développe une base et qu'ayant fait un tutoriel sur la création d'une base simple dans le cadre de notre association RIO a récupéré mes coordonnées ...
Il reste que Pierre-Yves a bien voulu me proposer une solution qui fonctionne pour répondre à cette question.
Merci à vous

Claude