Capture_Formulaire.PNG
Capture_Navigateur.PNG
Bonjour,
J’ai développé un formulaire de saisie dans une base de données de gestion des adhérents.
Le formulaire principal est composé de quelques champs :
- ID adhérent,
- Nom,
- Prénom,
- …
Pas de difficulté particulière sur cette partie, y compris avec deux macros de contrôle.
J’ai ensuite un sous formulaire, sous forme de tableau car je veux saisir une liste de “hobbies”.
(voir copie d’écran N°1)
Le seul contrôle du sous formulaire est le contrôle “SubForm_Grid” qui représente mon tableau de saisie des Hobbies.
(voir copie d’écran N°2)
Dans la macro que j’ai écrite j’accède à ce contrôle. Je voudrais contrôler que l’on ne saisit pas deux fois la même valeur du champ “ID-HOB”. Or j’ arrive à obtenir les 2 libellés des entêtes de colonnes. Mais impossible d’accéder aux valeurs de la table !!!
Est ce quelqu’un peux m’aider pour trouver la bonne façon de procéder ?
Merci beaucoup pour votre aide,
Cordialement,
Yves
PS : un extrait du début de la macro :
’ obtention de la valeur des champs nécessaires
’ chargement de l’ ID modifié
’
oDoc = thisComponent
oDrawpage = oDoc.drawpage
oForm = oDrawpage.forms.getByName(“MainForm”)
oSubForm = oForm.getByName(“SubForm”)
oFieldID_ADH = oForm.getByName(“fmtID_ADHERENT”)
loID_ADH = oFieldID_ADH.GetCurrentValue()
msgBox "Valeur ID Adhérent : " + loID_ADH
oFieldID_HOB = oSubForm.getByName(“SubForm_Grid”)
loID_HOB = oFieldID_HOB.GetCount()
msgBox "NB de colonnes de la table : " + loID_HOB
…
Bonjour Michel,
Suite à votre retour, je voulais vous joindre un extrait de la base avec la macro en question.
Il se trouve que, dans la manip, j’ai perdu la macro en question.
Si je résume ma question :
- J’ai un formulaire principal et un sous-formulaire,
- Je sais obtenir les valeurs de mon formulaire principal (méthode GetCurrentValue),
- par contre, dans mon sous-formulaire “SubForm” je n’ai qu’un seul contrôle “subFormGrid”,
- dans ce sous-formulaire, je ne sais pas quelle méthode employer pour obtenir les valeurs contenues dans cette grille.
- L’extrait de la macro mis dans la question devrait suffire à la compréhension.
Merci pour votre aide,
Bien Cordialement,
Yves Gravot