Saisie de données dans plusieurs tables Lors de l arrivée d un nouvel adhérent, il va falloir saisir plusieurs types d informations réparties dans des tables différentes, mais regroupées dans un même formulaire. Les données seront structurées à l aide d onglets. La saisie du Nom de l Adhérent est obligatoire, la profession pourra ne pas être renseignée (option par défaut) ou devra être choisie dans la liste de référence. L entreprise est une valeur facultative (non renseigné par défaut), pourra être choisie dans la liste des entreprises répertoriées, mais devra pouvoir être saisie si elle ne figure pas dans la liste proposée. Comment affecter des contrôles à une page d onglet? La boite à outils propose un «Contrôle Onglet» pour tracer le contour de l Entité Il n est possible d ajouter un contrôle à une page d onglet que si cette page est sélectionnée (en cliquant sur l étiquette d onglet correspondant). Le fond de la page sélectionnée apparaît alors sur fond noir. Le contrôle Onglet sélectionné, un clic droit, permet d ajouter ou de supprimer une page. Remarque : Si vous ne sélectionnez pas de page avant d y glisser ou d y coller un contrôle, le contrôle sera visible quel que soit l onglet que l utilisateur choisira. Jacques Chambon 1/7
Actualisation d une liste déroulante après saisie d un nouvel élément Le bouton «Nouvelle Entreprise» ouvrira un formulaire de saisie qui une fois fermé, devra actualiser le contrôle «Entreprise :» SELECT ENTREPRISE.[ENT_CODE#], ENTREPRISE.ENT_RAISOC, ENTREPRISE.ENT VILLE FROM ENTREPRISE ORDER BY ENTREPRISE.ENT_RAISOC; On fait afficher la Raison Sociale et la Ville de l Entreprise, mais on enregistre le Code (Colonne liée = 1). La macro «nouvelle» ouvre le formulaire «ENTREPRISE Saisie» en mode Ajout. Ce mode place automatiquement le pointeur d enregistrement sur un nouvel enregistrement, le formulaire est donc vierge de données et prêt pour la saisie. Le mode «Boite de Dialogue» fait superposer le formulaire au formulaire Adhérent. Il ne peut pas être affiché en plein écran. Jacques Chambon 2/7
En ouvrant le formulaire, on déclenche la macro «position 1» Elle a pour but de positionner le pointeur sur le contrôle Raison Sociale. Sans cette action, le pointeur se positionne sur le premier champ du formulaire, soit le Code Entreprise. La macro précédente permet de faire passer la valeur du code de la nouvelle entreprise du formulaire «ENTREPRISE Saisie» vers le contrôle «Entreprise» du Formulaire «ADHERENT Saisie Onglet» ENT_CODE# Entreprise Jacques Chambon 3/7
Valeur par défaut Si des valeurs par défaut ont été définies lors de la création des champs d un table, elles apparaîtront automatiquement lors de la saisie des données. On peut alors se demander s il est nécessaire de les afficher. Oui, car elles ne sont qu une proposition et l utilisateur doit pouvoir éventuellement les modifier. SELECT ADHERENT.[ADH_CODE#], [ADH_NOM] & " " & [ADH_PRENOM] & " " & [ADH_DATENAIS] AS Expr1 FROM ADHERENT ORDER BY [ADH_NOM] & " " & [ADH_PRENOM] & " " & [ADH_DATENAIS]; L année de Première Adhésion est générée automatiquement par la Valeur par Défaut associée au champ ADH_COTIS_ANNEE1, dans la table ADHERENT SELECT SECTION.SEC_CODE, SECTION.SEC_LIBELLE FROM SECTION ORDER BY SECTION.SEC_LIBELLE; Incorporation d un sous formulaire de saisie Nous allons avoir besoin de cette possibilité pour pouvoir saisir d éventuelles prises de responsabilité des Adhérents, dans l association. Dans l exemple suivant Jean DUMERCQ adhère à l association et a été recruté pour être entraîneur des véliplanchistes. La partie haute de l écran de saisie sera mémorisée dans la table ADHERENT Les données propres à la qualité de Dirigeant, seront quant à elles stockées dans la table RESPONSABILITE. La table TITRE n est sollicitée que pour alimenter la liste déroulante. Le code Adhérent généré automatiquement dans la table ADHERENT devra être recopié dans la table RESPONSABILITE. Jacques Chambon 4/7
L interface de saisie des responsabilités des Dirigeants est assurée par le sous formulaire SF_RESPONSABILITE_Saisie. La liaison entre le formulaire principal et le sous formulaire est assurée par le code Adhérent. Structure du sous formulaire Il est basé sur la Table RESPONSABILITE, ne sera affichable qu en mode formulaire et ne présente aucune possibilité de déplacement dans les enregistrements pour l utilisateur. A l ouverture de ce formulaire, il faudra déclencher l opération de récupération du code Adhérent dans le formulaire principal, pour que l utilisateur n ait pas à le saisir. C est l objectif de la macro «Recup code ADH» qui placera ensuite le curseur sur le contrôle de TITRE. Calcul du montant de la cotisation Dans l onglet «Cotisations» l utilisateur pourra sélectionner, dans un sous formulaire en mode continu, la liste des Adhérents pour qui il paie la cotisation. En cliquant sur le bouton «calcul cotisation», le contrôle «montant dû» devra être mis à jour, mais l utilisateur aura toujours le loisir de modifier cette valeur. La date de paiement, si elle indiquée permettra de savoir si l adhérent a effectivement payé la cotisation. Le bouton «Date jour», remplit automatiquement le contrôle «date de paiement» qu il est éventuellement possible de modifier. Jacques Chambon 5/7
Saisie des Bénéficiaires de la cotisation Les bénéficiaires de Cotisation sont enregistrés dans une table liée à la Table ADHERENT. Il faut donc saisir les données correspondantes dans un sous-formulaire. Le sous-formulaire est simple, il ne contient qu une liste déroulante, donnant la liste des Adhérents vivants L affichage se fait en mode continu, pour pouvoir saisir plusieurs personnes. Comme pour le sous formulaire précédent, il faut récupérer le code ADHERENT du formulaire principal. Calcul de la cotisation Nous avons, il y a quelques temps créé une requête affichant le montant des cotisations dues pour chaque ADHERENT Payeur. C est le moment d exploiter le résultat de cette requête dans un nouveau sous-formulaire. Jacques Chambon 6/7
Le résultat de la requête fournit le code de l adhérent payeur, son nom et le montant du. Le bouton «Calcul cotisation»a pour but de transférer l information du SF_Cotisation_dûe vers le contrôle ADH_COTISATION du formulaire principal. Reste maintenant à renseigner la date de paiement. La saisie est facultative, mais si l adhérent paie immédiatement, il suffira de cliquer sur le bouton «Date du jour». Jacques Chambon 7/7