Bonjour,
Je suis en OOo 3.3.0 mais je suppose que sur Lib ce serait pareil...mais plus de personnes sur ce forum...
Pour une base Gestion de Bibliothèque, j'ai un sous-formulaire et sur une colonne je place une zone modifiable basée sur une table (les EDITEURS) je voudrais soit prendre une valeur de cette table pour ce nouvel enregistrement (un nouveau titre pour un AUTEUR donné) soit en ajouter une nouvelle et que cette valeur soit mise dans la table pour une utilisation ultérieure éventuelle. Actuellement si je peux donner une nouvelle valeur celle-ci n'est pas dans la table . J'ai su faire mais ...tout s'envole !
Claude
Bonjour,
Je suis en OOo 3.3.0 mais je suppose que sur Lib ce serait pareil...mais plus de personnes sur ce forum...
Pour une base Gestion de Bibliothèque, j'ai un sous-formulaire et sur une colonne je place une zone modifiable basée sur une table (les EDITEURS) je voudrais soit prendre une valeur de cette table pour ce nouvel enregistrement (un nouveau titre pour un AUTEUR donné) soit en ajouter une nouvelle et que cette valeur soit mise dans la table pour une utilisation ultérieure éventuelle. Actuellement si je peux donner
une nouvelle valeur celle-ci n'est pas dans la table . J'ai su faire mais ...tout s'envole !
Claude
Bonjour,
Si j'ai bien compris, ce que tu appelles "zone modifiable" devrait être une Zone de liste alimentée par une requête SQL de la table des éditeurs.
Pour plus d'éclaircissements, il faudrait avoir ta base.
J.M
Bonsoir à tous,
Bonjour,
Je suis en OOo 3.3.0 mais je suppose que sur Lib ce serait
pareil...mais plus de personnes sur ce forum...
Pour une base Gestion de Bibliothèque, j'ai un sous-formulaire et sur
une colonne je place une zone modifiable basée sur une table (les
EDITEURS) je voudrais soit prendre une valeur de cette table pour ce
nouvel enregistrement (un nouveau titre pour un AUTEUR donné) soit en
ajouter une nouvelle et que cette valeur soit mise dans la table pour
une utilisation ultérieure éventuelle. Actuellement si je peux donner
une nouvelle valeur celle-ci n'est pas dans la table . J'ai su faire
mais ...tout s'envole !
ClaudeBonjour,
Si j'ai bien compris, ce que tu appelles "zone modifiable" devrait
être une Zone de liste alimentée par une requête SQL de la table des
éditeurs.
Pour plus d'éclaircissements, il faudrait avoir ta base.
Oui, mais il voudrait, si j'ai bien compris, pouvoir ajouter directement
une nouvelle valeur à la liste et que celle-ci soit écrite dans la table
à partir de laquelle on a établi la liste des valeurs. Je ne me rappelle
plus si ce problème, assez courant au demeurant, nécessite toujours de
passer par un macro ou non. De mémoire, il faut que le champ en question
fasse partie d'un sous-formulaire basé sur la table servant à fournir
les données de la liste, même s'il apparaît dans le formulaire
principal. L'assistant de création de sous-formulaire devrait pouvoir
servir à faire cela.
Des pistes pour expliquer les différences entre les différents types de
liste dans un formulaire :
http://user.services.openoffice.org/fr/forum/viewtopic.php?f=17&t=23198
Alex
Bonjour,
Merci à Jean-Michel et Alex d'avoir pris en compte ma question.
Pour les besoins d'un cours en association j'apprends les rudiments pour développer une base simple avec OpenOffice Base (ou LibreOffice). A titre d'exemple nous créons une base de gestion d'une bibliothèque personnelle.
Je vous ai mis cette base en dépôt de fichiers, le lien ci-après vers ce fichier pour le téléchargement.
Je suis dans l'environnement Win XP (nul n'est parfait ...)
Si vous ouvrez le formulaire: F_AUTEURS_ET_OUVRAGES j'ai inséré dans le sous-formulaire : OUVRAGES une colonne que j'ai appelée: *EDITEUR essai* qui est une Zone Combinée pour essayer d'entrer un texte (un éditeur) non présent dans ma table, je puis le faire certes mais la valeur n'est pas introduite dans la table EDITEURS pour une utilisation ultérieure...donc la question comment faire ? je crois que j'y étais arrivé et cela _sans macro_ mais je ne me rappelle plus comment...Par avance merci et excusez-moi si un de vous a déjà répondu à cette question.
Claude
Bonjour,
Merci à Jean-Michel et Alex d'avoir pris en compte ma question.
Pour les besoins d'un cours en association j'apprends les rudiments pour développer une base simple avec OpenOffice Base (ou LibreOffice). A titre d'exemple nous créons une base de gestion d'une bibliothèque personnelle.
Je vous ai mis cette base en dépôt de fichiers, le lien ci-après vers ce fichier pour le téléchargement.
Je suis dans l'environnement Win XP (nul n'est parfait ...)
Si vous ouvrez le formulaire: F_AUTEURS_ET_OUVRAGES j'ai inséré dans le sous-formulaire : OUVRAGES une colonne que j'ai appelée: *EDITEUR essai* qui est une Zone Combinée pour essayer d'entrer un texte (un éditeur)
non présent dans ma table, je puis le faire certes mais la valeur n'est
pas introduite dans la table EDITEURS pour une utilisation ultérieure...donc la question comment faire ? je crois que j'y étais arrivé et cela _sans macro_ mais je ne me rappelle plus comment...Par avance merci et excusez-moi si un de vous a déjà répondu à cette question.Claude
Sans Macro, à part cliquer sur un bouton qui va t'ouvrir un formulaire pour saisir le nouveau nom de l'Éditeur, je ne vois pas trop.
J.M
Bonsoir Jean-Michel, bonsoir Claude,
Sans Macro, à part cliquer sur un bouton qui va t'ouvrir un formulaire pour saisir le nouveau nom de l'Éditeur, je ne vois pas trop.
J.M
C'est comme ça que je fais (le bouton), n'ayant pas trouvé d'autre solution. Et les macros, c'est pas mon truc 
saisir le nouveau nom de l'Éditeur
sans oublier de rafraichir le contrôle après l'ajout pour que la nouvelle valeur apparaisse dans la liste.
Bernard
Bonjour,
N'ayant pu trouver une solution par Zone modifiable pour ajouter un élément à une table de liste de choix, j'ai mis dans le formulaire F_AUTEURS_ET_OUVRAGES un bouton qui lance une macro d'ouverture de formulaire : formulaire F_EDITEURS en l'occurrence. Mon formulaire est ouvert en lecture seule (???) mais j'y ajoute une valeur (un nouvel éditeur). Celui-ci n'est pas disponible pour le proposer dans un nouvel enregistrement du sous-formulaire OUVRAGES.
J'ai donc ajouté un bouton pour rafraîchir la table (des EDITEURS) et là, la nouvelle entrée est disponible.
OK ça fonctionne mais, macro incontournable (pas évident pour l'utilisateur moyen...mais soit) et :pourquoi lorsque j'ouvre le formulaire via la macro, la table n'est-elle pas mise à jour automatiquement? alors qu'elle l'est si on ouvre le formulaire "directement" . Des questions mineures surement vous ne perdrez pas votre triple A pour autant 
Mercid'avance pour vos réponses
PS: j'envoie sur les 2 listes car chez LibOffice je suppose que c'est la même chose..is'nt it ?
Claude
Bonjour,
Bonjour Claude,
OK ça fonctionne mais, macro incontournable (pas évident pour l'utilisateur moyen...mais soit) et :pourquoi lorsque j'ouvre le formulaire via la macro, la table n'est-elle pas mise à jour automatiquement? alors qu'elle l'est si on ouvre le formulaire "directement"
De mémoire, pour que la mise à jour se fasse automatiquement, il est impératif d'y faire figurer (afficher) le champ ID de la table (ou des tables concernées). Peux-tu faire un test ?
. Des questions mineures surement vous ne perdrez pas votre triple A pour autant
Mercid'avance pour vos réponses
PS: j'envoie sur les 2 listes car chez LibOffice je suppose que c'est la même chose..is'nt it ?
Je ne m'y risque plus 
Bonne journée
Bonjour à tous,
Ta question Philippe
/De mémoire, pour que la mise à jour se fasse automatiquement, il est impératif d'y faire figurer (afficher) le champ ID de la table (ou des tables concernées). Peux-tu faire un test ? /
Mon bouton appelle la macro d'ouverture du formulaire F_EDITEURS , ce formulaire comporte bien le champ EDITEUR mais également la clé ID , faute de quoi je ne pourrais pas ajouter un enregistrement.
C'est la même chose avec la version LibO 3.3.0 , il faut rafraîchir le formulaire (et par voie de conséquence la Table) pour pouvoir disposer de la nouvelle entrée
A+
Claude
Il me semblait que ton problème illustrait le bug qui avait été corrigé dans la version 3.3.0 justement,
concernant les *formulaires/sous-formulaires fondés à partir d'une requête*. Là encore je fais référence à un fil concernant l'excellent tuto sur le module Base de Pierre-Yves, et que tout utilisateur de BD devrait avoir sous la main ! je le cite : " /Apport de la version 3.3 Cette version a vu la résolution de l'Issue http://openoffice.org/bugzilla/show_bug.cgi?id=53377 permettant désormais les mises à jour de données aux requêtes reliant plusieurs tables./"
Le tutoriel est disponible en ligne ici :
http://user.services.openoffice.org/fr/forum/viewtopic.php?f=29&t=6460.
L'apport de la version 3.3 figure en bas de page.
Cordialement, Philippe