[Résolu] affichage contrôle de table Formulaire

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.
El_Brouno
Membre hOOnoraire
Membre hOOnoraire
Messages : 175
Inscription : 28 sept. 2018 09:14

[Résolu] affichage contrôle de table Formulaire

Message par El_Brouno »


La modération vous a écrit: Nous avons supprimé le terme bogue du titre de votre question.
Un bogue est un défaut de conception d'un programme informatique à l'origine d'un dysfonctionnement, ce qui n'est pas le cas.

Bonjour,

Dans mon formulaire FormMvtBONSVOLANTS, l'affichage de mes entrées Famille, Catégorie et Designation se comporte de manière étrange; je m'explique.

Lorsque je sélectionne des données grâce aux listes déroulantes, j'ai bien les termes selctionnés qui s'affiche, ils sont même enregistrés comme il faut dans la table TMaterielMouvementsSorties.

Par contre, lorsque je ferme le formulaire et que je le ré-ouvre, la plupart des cases de ces 3 colonnes sont vides.
En revanche, les enregistrements de TMaterielMouvementsSorties sont toujours intacts.

Pour retrouver mes sélections, il me faut à nouveau cliquer dans la case FAMILLE pour y voir apparaitre la sélection, cliquer sur CATEGORIE pour y voir apparaitre la sélection et cliquer sur désignation pour y voir apparaitre le produit sélectionné.

Auriez vous une idée de ce qu'il se passe ?

Base exemple en pièce jointe.
D'avance merci
Bruno
Pièces jointes
Bug affichage control de table Form.odb
(264.9 Kio) Téléchargé 122 fois
Dernière modification par El_Brouno le 21 mars 2021 21:43, modifié 1 fois.
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
Avatar de l’utilisateur
jeanmi2403
SuppOOrter
SuppOOrter
Messages : 1398
Inscription : 18 janv. 2008 10:02
Localisation : Val de Marne

Re: bogue affichage contrôle de table Formulaire

Message par jeanmi2403 »

Bonjour,
C'est logique, car la liste déroulante est la même pour toute la colonne.
De plus, il y a une source d'erreurs possible, car un choix d'une catégorie dépend du choix de la famille choisie précédemment, et non pas de celle qui se trouve sur la même ligne !
A mon avis, il faudrait plutôt créer un formulaire classique, dans lequel un sous-formulaire contiendrait le tableau récapitulatif. C'est le même principe pour les listes déroulantes.
Tu as un exemple dans le fichier Exemple_Cherche_et_Filtre.odb de la Base de données d'exemples du Guide Base
Cordialement,
Jean-Michel
LibO 7.5.9 et AoO 4.1.15 sur Windows 11 & Ubuntu 22.04
LibO 7.6 sur OpenSuse & Linux MX
El_Brouno
Membre hOOnoraire
Membre hOOnoraire
Messages : 175
Inscription : 28 sept. 2018 09:14

Re: affichage contrôle de table Formulaire

Message par El_Brouno »

Ok,je te remercie.
Je creuse un peu ça et je reviens.
Bonne journée.Bruno
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
El_Brouno
Membre hOOnoraire
Membre hOOnoraire
Messages : 175
Inscription : 28 sept. 2018 09:14

Re: affichage contrôle de table Formulaire

Message par El_Brouno »

Bonjour à tous,

j'ai potassé le lien très fourni. et je vous remerci pour toutes ces ressources.

Mais c'est pour moi une nouvelle montagne à gravir et je ne vais pas pouvoir m'en charger tout de suite.

En attendant, j'ai farfouillé un peu dans ma base et j'ai trouvé un comportement plutôt étrange mais qui pourrait me dépatouiller pour l'instant à condition de le comprendre. :D

Je joint une base exemple ici : https://cjoint.com/c/KCvhps8rTQe

Lorsque l'on ouvre les formulaires FormMvtTJLBGS ou FormMvtTJLBPS ou FormMvtTJLBGS, aucun problème d'affichage.

Par contre, il y a des soucis d'affichages dans le formulaire FormMvtBONSVOLANTS.

Pourtant, c'est la même source de données : la table TMaterielMouvementsSorties.
Mais je demande à mon contrôle de table de filtrer idLieuDestination en fonction de mes besoins. Ici 9, qui va chercher dans la table TMaterielDestinations la valeur PRÊTS

Après, c'est vrai que dans le formulaire dont l'affichage a des soucis, j'ai ajouté des champs supplémentaires mais ils sont tous contenus dans cette même table TMaterielMouvementsSorties.

Est ce que vous voyez autre chose qui pourrait gêner l'affichage des données dans ce formulaire en particulier ?

D'avance merci !
Bruno
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
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: affichage contrôle de table Formulaire

Message par jeanmimi »

Bonjour,
El_Brouno a écrit :Par contre, il y a des soucis d'affichages dans le formulaire FormMvtBONSVOLANTS.
Pourtant, c'est la même source de données : la table TMaterielMouvementsSorties.
Je ne sais pas quel est le problème d'affichage, je constate seulement que la Macro pour le Bouton Bon personnalisé cherche à ouvrir un Formulaire qui n'existe pas :

Code : Tout sélectionner

Sub OuvrirBonBONSVOLANTSTous
'Ouvre le formulaire nommé
	ThisDatabaseDocument.ReportDocuments.getByName( "RSuiviMatos_BONSVOLANTSTous" ).open
End Sub
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
El_Brouno
Membre hOOnoraire
Membre hOOnoraire
Messages : 175
Inscription : 28 sept. 2018 09:14

Re: affichage contrôle de table Formulaire

Message par El_Brouno »

Bonjour jeanmimi,

Oui c'est normal que ce bouton ne donne rien car il sert à générer un rapport dont la requête utilise le champ EMPLACEMENT qui est actuellement vide.

En pièce jointe, voici 2 screenshot qui décrivent mon pb.

La capture2.png montre le formulaire FormMVTTJLBGS qui lui affiche bien TOUTES les entrées dès son ouverture.

La capture.png montre le formulaire FormMVTBONSVOLANTS qui lui n'affiche qu'une seule partie des entrées.
Pourtant il y a des choses de selectionnés dans les 3 listes déroulantes, FAMILLE, CATEGORIE et DESIGNATION.
On peut les retrouver en reprenant le filtrage depuis FAMILLE vers DESIGNATION.

Or à l'ouverture du formulaire, certains des champs sont montrés comme vide.

Le formulaire FormMVTTJLBGS est basé sur la même requête, construit à partir d'un copié collé en ne changeant que le filtrage mais lui ne bug pas à l'affichage des entrées du contrôle de table.

Une idée ?
Merci
Bruno
Pièces jointes
Capture.PNG
Capture2.PNG
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
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: affichage contrôle de table Formulaire

Message par jeanmimi »

El_Brouno a écrit :La capture.png montre le formulaire FormMVTBONSVOLANTS qui lui n'affiche qu'une seule partie des entrées.
Pourtant il y a des choses de selectionnés dans les 3 listes déroulantes, FAMILLE, CATEGORIE et DESIGNATION.
Regardes ton formulaire, tu verras qu'il faut utiliser l'ascenseur horizontal (nom bizarre, mais je n'en trouve pas d'autres) pour afficher les enregistrements des champs de la Grille qui sont plus à droite.
Quant à la liste des enregistrements affichés, elle varie en fonction de la valeur du filtre.
Pièces jointes
Affichage dans le formulaire.jpg
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
El_Brouno
Membre hOOnoraire
Membre hOOnoraire
Messages : 175
Inscription : 28 sept. 2018 09:14

Re: affichage contrôle de table Formulaire

Message par El_Brouno »

Désolé, je ne comprends pas l'histoire de l'ascenseur horizontal.

En effet les champs sont tributaires du filtre. Pourtant si tu prends le formulaire FormMVTTJLBGS, qui est conçu de la même façon que FormMVTBONSVOLANTS, les champs sont toujours tributaires du filtres, pourtant à l'ouverture, tous les champs des enregistrements existants sont remplis.

Sais tu pourquoi ce pb d'affichage ne se produit que sur FormMVTBONSVOLANTS ? C'est la vraie question de mon sujet.

En passant, j'ai volontairement laissé dans ma base d'exemple 2 autres formulaires conçus de la même façon mais filtrant deux autres lieux et là non plus pas de soucis. Le pb se produit uniquement sur FormMVTBONSVOLANTS.

Pour info, il peut arriver que ce pb d'affichage apparaisse sur les autres de temps en temps, il suffit alors de fermer et reouvir le dit formulaire pour voir réapparaître les champs qui avaient disparus.
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
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: affichage contrôle de table Formulaire

Message par jeanmimi »

Les deux autres formulaires ont pour valeurs de filtre 1 et 8, celui qui te pose problème est filtré sur la valeur 9
Si tu remplaces la valeur du filtre par 9 dans le formulaire FormMVTTJLBGS qui fonctionne selon tes souhaits, tu retrouves l’affichage du Formulaire FormMVTBONSVOLANTS
Donc, pour moi, c'est une question de valeur de filtre.
LibreOffice : Version : 24.2.1 (x64)(14 mars 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
El_Brouno
Membre hOOnoraire
Membre hOOnoraire
Messages : 175
Inscription : 28 sept. 2018 09:14

Re: affichage contrôle de table Formulaire

Message par El_Brouno »

Bonsoir Jean mimi,

Suivant tes conseils, j'ai décider de créer une copie du formulaire FormMVTTJLBGS que j'ai appelé FormMVTBONSVOLANTS, j'ai ensuite modifier mon tri pour que ce dernier ne m'affiche que l'iDlieuxdestinations numero 9 et surprise, je n'ai plus le soucis d'affichage à l'ouverture du formulaire. Il apparaît quelques fois lorsque j'ajoute un nouvel enregistrement (normal puisque j'utilise les filtres des listes deroulantes) mais si je ferme et recouvre le formulaire, toutes les données réapparaissent.

Je pense que le filtrage était le souci.
Merci de m'avoir aiguillé vers la réponse !

Bonne soirée et à très bientôt.
Bruno
:lol:
Libre Office 7.1.7.2 sous Windows 10
Java JDK 15
Verrouillé