Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Débuter avec les états Access
Après les nombreuses mises en pratique des
macros Access pour articuler l'application en cours de construction, ce nouvel exercice est destiné à présenter les
états et leur intérêt. Les
états permettent d'offrir une vue figée des éléments demandés à l'instant T. On les utilise pour émettre des rapports mais pas seulement. Ils peuvent être paramétrés et fournir l'édition d'éléments spécifiques correspondant à la demande. C'est ainsi, lorsque que nous serons aguerris, que nous pourrons produire la
facture du client venant de passer
commande.
Source et présentation
Ces rapports s'inscrivent dans la suite logique de la construction de notre
application de gestion des clients et des stocks. Pour la poursuivre, il est donc tout d'abord nécessaire de réceptionner les travaux au dernier indice.
- Télécharger le fichier clients-et-commandes-rapports-etats.rar en cliquant sur ce lien,
- Puis, le décompresser dans le dossier de votre choix,
- Ensuite double cliquer sur le fichier résultant pour l'ouvrir dans Access,
- Taper le mot de passe d'accès que nous avions configuré : abc,
- Cliquer sur le bouton Activer le contenu du bandeau de sécurité,
- Du fait de la régénération, saisir de nouveau le mot de passe et le valider,
C'est donc le
formulaire de navigation principal qui se propose par défaut. Il offre d'atteindre les différents outils par les onglets respectifs. Nous y reviendrons bientôt. Dans l'optique de la découverte des
états, nous proposons de produire des rapports indépendants. L'objectif est de comprendre la mise en oeuvre et le mécanisme.
Le
volet de navigation, sur la gauche de l'écran, est désormais chargé de nombreux objets. Pour y voir clair, nous proposons de replier certaines rubriques.
- Cliquer sur les catégories Requêtes et Formulaires pour les replier,
Ainsi, nous aurons tout le loisir de contempler la présence des
états, au fur et à mesure de nos créations.
Editer la liste des clients
Pour débuter simplement, nous proposons de fournir une vue de tous les clients de l'entreprise. A l'instar d'un
formulaire, un
état se nourrit de données. Il se crée donc sur la base d'une
table ou d'une
requête. Donc si les données source évoluent, la vue retranscrite par l'état s'accorde. L'intérêt d'une requête est qu'elle peut réaliser des opérations intermédiaires avant d'offrir son rendu.
- Dans le volet de navigation, cliquer sur la table Clients pour la sélectionner,
- Cliquer ensuite sur l'onglet Créer, en haut de la fenêtre Access, pour activer son ruban,
- A droite du ruban, dans la section Etats, cliquer sur le bouton Etat,
Le
rapport apparaît immédiatement en
mode Page.
Tout comme pour les
formulaires,
Access propose donc un mode de création instantanée sur une table présélectionnée. Cette technique est intéressante pour gagner du temps. Mais elle ne permet aucun paramétrage en amont, pour organiser l'information par exemple. Bien sûr, la mise en page et la disposition peuvent ensuite être adaptées en mode création. Mais l'intérêt d'un
état est de fournir une vue claire, si possible synthétisée des données à exploiter.
Nous proposons donc d'utiliser une autre méthode, celle de l'assistant.
- Fermer l'état en cliquant sur la croix de son onglet, sans l'enregistrer,
- Cliquer de nouveau sur l'onglet Créer, en haut de la fenêtre Access,
- A droite du ruban, dans la section Etats, cliquer sur le bouton Assistant état,
Une boîte de dialogue surgit immédiatement. La vocation de l'assistant est de guider l'utilisateur dans les réglages consistant à construire la vue souhaitée. Une liste déroulante propose de choisir l'objet source de la construction parmi les
tables et les
requêtes existantes.
- Conserver le choix par défaut, réglé sur la table Clients,
- Dans la liste de gauche, en sélectionnant les champs tour à tour et en cliquant sur le bouton de la flèche orientée à droite, ajouter tous les champs, sauf le champ Client_id,
Ce dernier correspond à l'identifiant de la
clé primaire. Il n'offre donc aucun intérêt pour une édition.
Il est aussi possible de cliquer sur la double flèche pour inclure tous les champs. Ensuite, il suffit d'exclure le champ Client_id. Cette seconde méthode est plus rapide.
- Cliquer sur le bouton Suivant de l'assistant pour suivre le guide,
- Sélectionner le champ Client_civilite et cliquer sur le bouton de la flèche à droite,
Cette première étape permet en effet de définir un
niveau de regroupement. En désignant le
champ Client_civilite, nous demandons de réunir toutes les personnes du même sexe, par groupes. En d'autres termes, nous devrions disposer d'une vue regroupant d'abord les femmes et ensuite les hommes. Comme nous le disions, l'assistant offre donc la possibilité d'organiser l'information en amont. Ce type de disposition est intéressant pour des études statistiques ou encore commerciales ciblées. Cela va de soi, pour réaliser un regroupement, faut-il encore que le champ en question propose des redondances. Le
champ Client_civilite est particulièrement dédié. Il ne propose que deux valeurs : Madame ou Monsieur.
- Cliquer sur le bouton Suivant en bas de l'assistant,
- Avec la première liste déroulante, choisir le champ Client_dep,
- Avec la deuxième liste déroulante, désigner le champ Client_nom,
Cette étape de l'assistant permet d'organiser jusqu'à quatre tris hiérarchisés. En ordonnant prioritairement un
tri croissant sur les codes postaux (Client_dep), nous réalisons d'une certaine manière, un autre
regroupement à l'intérieur de celui des civilités. Nous organisons les clients par départements, dans l'ordre alphabétique.
- Cliquer de nouveau sur le bouton Suivant pour continuer avec le guide,
- Dans cette nouvelle étape, cocher les cases Bloc et Paysage,
Vous l'avez compris, il s'agit de réglages de
mise en page. L'
orientation Paysage est destinée à bénéficier de plus de place sur la largeur de la page. Nous aurons ainsi tout le loisir de disposer les informations à notre guise, tout en aérant la présentation. Le choix de la disposition dépend des données à présenter. Si plusieurs niveaux de regroupements sont définis, il est intéressant de choisir l'
option Echelonné. Les informations y apparaissent indentées, comme en programmation. Il s'agit d'un décalage par rapport à la verticale, montrant le niveau de hiérarchie et l'appartenance de chacune. Dans notre cas, la densité des données n'étant pas conséquente, nous choisissons de les regrouper par l'
option Bloc. Notez qu'un aperçu est offert à chaque fois que vous cochez l'une de ces cases.
- Cliquer une dernière fois sur le bouton Suivant pour accéder à la dernière étape,
- Nommer l'état : E_Clients et cliquer sur le bouton Terminer,
Le rendu est aussitôt livré sous forme d'aperçu avant impression. Vous notez l'inscription du nouvel objet, dans la
rubrique Etats du volet de navigation.
Les clients sont bien regroupés par civilité, d'abord les Dames et ensuite les Messieurs. A l'intérieur de chaque groupe, ils sont listés croissants sur le code postal puis le nom de famille. Nos réglages ont bien été respectés.
- Tout à fait à droite du ruban, cliquer sur le bouton Fermer l'aperçu avant impression,
Nous basculons ainsi dans la vue en création de l'
état. Tout comme pour un
formulaire, le
bouton Affichage situé sur la gauche du ruban Accueil ou du ruban Création, permet de basculer d'un mode de présentation à un autre.
La vue est découpée en plusieurs sections. La zone
En-tête de l'état permet de définir un titre explicite.
La zone
En-tête de page rappelle les noms des colonnes pour l'organisation des informations. Ils sont répétés sur chaque page de l'impression.
Juste en-dessous, vous notez la présence de la section pour le regroupement sur la civilité (En-tête de groupe Client_civilite). Puis, l'énumération des informations s'effectue dans la
section Detail.
Dans le pied de page, vous notez la présence d'une fonction Access
=Maintenant(). Elle est semblable à celle d'Excel pour fournir la date du jour.
Nous retrouvons les rubans contextuels
Création,
Organiser et
Format. Nous les avons largement exploités dans les exercices destinés à produire la mise en page des formulaires. C'est pourquoi ici, nous ne reviendrons pas sur ces notions.
Néanmoins, il peut s'avérer intéressant de réduire la largeur du
champ Client_civilite avec son étiquette. L'espace prévu par défaut est trop important pour accueillir l'information connue et figée. La place gagnée peut être utilisée pour espacer les autres contrôles entre eux. Il s'agit ensuite de les distribuer horizontalement, grâce au
bouton Taille/Espace du
ruban Organiser. Le code postal peut être aligné à droite dans son contrôle, avec son étiquette. De même, il apparaît intéressant de faire ressortir le nom en gras. Ces derniers réglages s'opèrent par le biais du
ruban Format. Mais comme vous l'avez constaté, il est aussi possible d'exploiter la
feuille de propriétés qui permet d'ajuster les attributs du contrôle sélectionné sur l'
état.
Ensuite, il apparaît opportun de spécifier un titre plus explicite pour l'état, comme par exemple :
Liste des clients regroupés par Civilité. L'intitulé des étiquettes pour les colonnes reprennent les noms techniques des champs de la table. Il est judicieux de les adapter pour offrir une description plus simple, comme :
Civilité , Code Postal , Nom du client , Prénom et
Ville.
Si vous commandez un affichage en
mode état, grâce au bouton Affichage du ruban, vous pouvez apprécier l'amélioration visuelle fournie par ces quelques réglages.
L'information y apparaît aérée et clairement énumérée.
En revanche, si vous commandez l'
aperçu avant impression, toujours par le biais du
bouton Affichage, un défaut peut surgir.
Une petite barre de navigation est disponible en bas de la fenêtre. Si vous cliquez sur la flèche orientée vers la droite, vous atteignez la page 2. Et il ne s'agit pas de la suite de l'énumération. Dans certains cas, la présentation déborde. Ce défaut dépend des paramètres de l'imprimante déclarée ou encore de l'organisation et de la disposition des données.
En mode création, il convient de rentrer les contrôles situés à l'extrémité droite vers l'intérieur de la page. Ainsi, la largeur globale de l'état peut être réduite en glissant sa bordure droite vers la gauche.
Pour parachever cette présentation destinée à prendre contact avec les
états, nous proposons de découvrir une propriété intéressante. Elle permet de découper l'information sur plusieurs pages, en respectant le
niveau de regroupement. Donc bien entendu, pour être fragmenté de la sorte, l'état doit proposer un entête de groupe.
- Afficher l'état en mode création,
- Dans la vue en conception, cliquer sur l'En-tête de groupe Client_civilite,
- Activer ensuite l'onglet Format de sa feuille de propriétés,
- Régler alors sa propriété Saut de page sur la valeur Avant section,
Une nouvelle section débute lorsque la valeur du groupe change, de Madame à Monsieur en l'occurrence ici. Avec ce réglage, un saut de page est opéré avant ce changement. De fait, nous regroupons les informations du même type, sur des éditions explicitement détachées.
- Enregistrer les modifications (CTRL + S),
- Afficher l'état en mode Aperçu avant impression,
- Puis, afficher la deuxième page à l'aide de la barre de navigation,
Les hommes et les femmes sont désormais listés sur des pages explicitement différentes. Ces listes sont amenées à évoluer. Souvenez-vous, si des clients sont créés dans la table d'origine, l'
état étant construit dessus, il restituera les nouvelles informations au moment de l'affichage. Cette organisation est donc intéressante. Et nous le découvrirons, ce réglage de saut de page devient incontournable lorsqu'il s'agit de produire un rapport depuis un formulaire, en fonction de l'identifiant actif.
Précisément, dans le prochain
exercice, nous verrons comment il est possible de mettre en place des
niveaux de regroupements plus pertinents, non prévus par les
tables. Et pour ce faire, nous construirons des
requêtes intermédiaires. Puis, nous bâtirons les
états sur ces dernières.