# Introduction aux bases de données avec BASE/Les formulaires

Un formulaire est un objet conteneur qui sert à afficher ou à saisir les données de la base BASE, il contient de nombreux autres objets : boutons, listes, champs de saisie, cases à cocher, images, cadres, … et même sous-formulaires

## Les différentes zones du formulaire

En-tête et pied de page sont les zones au-dessus et en-dessous de la zone détail. Au contraire de la zone détail qui affiche successivement tous les enregistrements, ces zones sont fixes d'un enregistrement à l'autre : titre du formulaire, bouton de fermeture du formulaire, etc.
* Entêtes : permettent de définir des bandeaux de haut de page pour le formulaire
* Lignes Détail : permettent de définir les lignes détail correspondant à chaque ligne retournée par la requête
* Pieds : permettent de définir bandeaux de bas de page pour le formulaire

## Créer les formulaires

Dans la fenêtre des objets BASE, sélectionner l’objet Formulaires, puis, prendre l’option création par l’assistant qui vous guide dans les opérations à effectuer :
* Choix de la table ou de la requête à afficher
* Positionnement des étiquettes et des champs à afficher
* Définition du type de saisie
* Choix des présentations et du style du formulaire
* Nommage du formulaire

## Modifier les formulaires

Ouvrir le formulaire en mode modification, ce mode vous permet :
* De rajouter ou d’ôter des champs ou des libellés
* De déplacer ou de redimensionner des champs ou des libellés
* D’insérer des champs calculés

## Un formulaire en détail
### Les principales propriétés d'un formulaire

Source ==> type de contenu, contenu et instruction SQL : table ou requête liée au formulaire Filtre ==> champs et critères de filtrage Tri ==> champs et critères de tri Ajout autorisé ==> autorisation d'insertion d'enregistrement Modification autorisée ==> autorisation de modification d'enregistrement Suppression autorisée ==> autorisation de suppression d'enregistrement … Cycle ==> permet de régler le comportement du formulaire

### Les principaux événements d'un formulaire

Lorsque vous ouvrez un formulaire, une séquence d’événements de formulaires se produit ==> Chargement, Initialisation, Ouverture, … Lorsque vous fermez un formulaire, une séquence d’événements de formulaire se produit ==> Déchargement, Fermeture, … ...

### Les contrôles de formulaires

Les contrôles sont des composants informatiques graphiques insérés dans les formulaires permettant une interaction entre l'utilisateur et la base de données.
* Formats : permet de définir la mise en forme du contrôle : format d'affichage, visible ou non, taille, alignement, couleur, format de caractères, etc.
* Données : permet de définir les contraintes concernant les données du contrôle : sa source (quel champ de quelle table), masque de saisie, valeur par défaut, donnée accessible ou non, etc.
* Événement : permet de déclencher une action sur la modification du contenu du contrôle (change) pour tester si la nouvelle saisie est valide, sur le clic d'un bouton (click) pour traiter certaines données saisies, etc.
* Autres : 3 propriétés sont très utilisées : le nom qui permet de définir le nom du contrôle pour pouvoir ensuite s'en servir en programmation (voir VB), le texte info-bulle qui permet d'ajouter un complément d'information pour l'utilisateur lorsqu’il passe la souris au-dessus du contrôle.
** Exemple : pour un bouton ==> " Ouvrir le formulaire de saisie des ressources ".
** La troisième propriété est le texte de barre d'état : permet d'ajouter un complément d'information qui s'affichera dans la barre d'état. Cette propriété est utilisée pour les champs texte : l'information est toujours visible tant qu'on est en train de saisir dans le contrôle. Exemple : "format de date jj/mm/aaaa"

#### Les principales propriétés des contrôles

Les propriétés Nom, Etiquette, Activé, … Texte d'aide, URL de l'aide sont réglables sur pratiquement tous les contrôles
* Identité : permet de nommer de manière unique et définir le contrôle pour ensuite s'en servir en programmation VB
* Format : permet de définir la mise en forme du contrôle : format d'affichage, visible ou non, taille, alignement, couleur, format de caractères, etc.
* Donnée : permet de définir les contraintes concernant les données du contrôle : sa source (quel champ de quelle table), masque de saisie, valeur par défaut, donnée accessible ou non, le texte info-bulle qui permet d'ajouter un complément d'information pour l'utilisateur lorsqu’il passe la souris au-dessus du contrôle, le texte de barre d'état qui permet d'ajouter un complément d'information qui s'affichera dans la barre d'état.

#### Les principaux événements liés aux contrôles

Événements communs à presque tous les contrôles : les événements Accepter l'action, Exécuter une action, … sont accessibles pratiquement sur tous les contrôles
La gestion de l'événement permet de déclencher une action sur :
* la rentrée du curseur dans le contrôle (focus) pour vérifier si les conditions initiales souhaitées sont atteintes
* la modification du contenu du contrôle (changement) pour tester si la nouvelle saisie est valide
* le clic sur un bouton (click) pour traiter certaines données saisies ou valider une question
| Les requêtes | Les rapports |