Créer une facture avec Access – Partie 3/3 – Création des états et de l’interface

Publié le 03 octobre 2013 par Lydia Provin @Votreassistante

Ce tutoriel est la suite de l’article sur la création des tables et relations et l’article sur la création du formulaire principal et de ses sous-formulaires. Vous pouvez télécharger la base de données créée précédemment dans l’Espace membres.

Création de la requête pour l’état Access :

Pour l’instant, nous avons paramétré l’application pour une utilisation interne, mais le but est bien sûr d’imprimer les factures créées.

Pour cela, nous allons créer un état, mais pour imprimer une facture en particulier, nous devons créer une requête pour avoir une boîte de dialogue à l’ouverture.

Cliquez sur Création de requête  de l’onglet Créer et ajoutez les tables T_Clients, T_Date_facture et T_Factures. Pour la table T_Clients, ajoutez tous les champs sauf Téléphone et Email, pour la table T_Date_facture, ajoutez ID_Date_facture, Date_Facture et Mode_de_paiement, et pour la table T_Factures, ajoutez ID_Tarif, Désignation, Quantité et Prix_unitaire. À la ligne Critères du champ ID_Date_Facture, saisissez [Saisissez un numéro de facture]. De cette manière, à l’ouverture de l’état, nous aurons un message demandant de saisir un numéro de facture. Fermez ensuite la requête en l’enregistrant sous le nom de R_Etat.

Création des états Access :

Nous allons maintenant créer les états. Le premier sera le récapitulatif de toutes vos factures et le second vous permettra d’imprimer une facture.

Création de l’état E_Imprimer_toutes_les_factures :

Cliquez sur Assistant État de l’onglet Créer.

 Sélectionnez tous les champs de la table T_Clients sauf les champs Téléphone et Email, ceux de la table T_Date_Facture sauf les champs ID_Client et ceux de la table T_Factures sauf les champs ID_Facture et ID_Date_facture qui ne seraient pas utiles ici puisque répétitifs. Cliquez sur Suivant.

 Gardez l’affichage par défaut et cliquez sur Suivant.

 Cliquez sur Suivant.

 Cliquez sur Suivant.

 Choisissez l’Orientation Paysage et cliquez sur Suivant.

 Nommez cet état E_Imprimer_toutes_les_factures et cochez Modifier la structure de l’état. Cliquez sur Terminer.

Maintenant, tout comme le formulaire, vous devez réagencer la présentation. Dans la partie En-tête, renommez E_Imprimer_toutes_les_factures en Factures établies que vous placerez en Gras, réduirez à son contenu pour le placer vers le centre de l’état avant de réduire la partie En-tête état. Dans la partie En-tête de page, renommez ID_Client en N° Client. Pour ne pas multiplier les étiquettes, supprimer l’étiquette Civilité, Prénom, CP et Ville et renommez Nom en Nom du client. Déplacez les étiquettes se trouvant après la Ville vers une autre partie. Placez toutes les étiquettes en Gras, centrées grâce à l’onglet Format, réduisez-les à leur contenu et alignez-les en haut. Réduisez ensuite la partie En-tête de page au maximum.

Supprimez le contour  du contrôle de la Civilité en allant dans l’onglet Format. Centrez tous les contrôles et réduisez-les à leur contenu. Pour faire simple, indiquez les mêmes largeurs que les contrôles du formulaire, toujours grâce à la Feuille de propriétés  de l’onglet Création, et accolez-les pour faire coïncider les étiquettes et leur contrôle. Réduisez enfin la partie En-tête de groupe T_Clients_ID_Client.

Les étiquettes et contrôles sont peut-être mélangés entre la partie En-tête de groupe ID_Date_facture et Détail. Dans ce cas, basculez entre le Mode État  et le Mode création  pour remettre de l’ordre. Renommez ID_Date_facture en N° facture, Date_facture en Date et ID_Tarif en Référence. Faites ensuite exactement les mêmes étapes que pour l’En-tête de page et l’En-tête de groupe T_Clients_ID_Client à savoir centrer et mettre en gras, réduire au contenu, aligner en haut, réduire les parties et retirer le contour du contrôle du Mode de paiement. S’il vous manque des champs, cliquez sur Ajouter des champs existants  de l’onglet Création et recherchez les champs manquants comme Prix_unitaire, puis placez-le à l’endroit adéquat et renommez-le en Prix unitaire. Si un triangle vert apparaît sur une étiquette, cliquez sur le losange jaune , qui apparaît lorsque vous cliquez sur l’étiquette, puis Associer une étiquette avec un contrôle… et sélectionnez le nom du contrôle correspondant.

Comme pour le formulaire, ajoutez une Zone de texte  grâce aux contrôles, renommez-le et saisissez la formule comme dans le formulaire. Modifiez également le Format en Monétaire et retirez son contour .

Pour une meilleure visualisation, décalez les éléments de la partie En-tête de groupe ID_Date_facture et Détail vers la droite.

Voici un exemple de ce que vous devriez obtenir avec des factures établies grâce au formulaire :

Création de l’état E_Imprimer_une_facture :

Pour créer une facture comme toute facture que vous recevez, relancez l’Assistant État  .

 Cette fois, choisissez la requête R_Etat et sélectionnez tous les champs. Cliquez sur Suivant.

 Cliquez sur Suivant.

 Cliquez sur Suivant.

 Cliquez sur Suivant.

 Cliquez sur Suivant.

 Nommez l’état E_Imprimer_une_facture, cochez la case Modifier la structure de l’état et cliquez sur Terminer.

Comme pour l’état précédent, vous devez déplacer des contrôles et étiquettes situés à droite de l’état pour les déplacer soit dans la partie En-tête de groupe ID_Date_facture, soit Détail.

Pour que la présentation ressemble le plus possible à une facture, j’’agrandis a partie En-tête état et remplace le titre E_Imprimer_une_facture par FACTURE N° en Gras et police 24. Je viens placer le contrôle ID_Date_facture à côté de ce titre et je lui applique la même mise en forme en cliquant sur la mise en page à copier, puis le bouton  de l’onglet Accueil et je clique sur le contrôle (comme sur Word). Appliquez un contour de 3 points à FACTURE N°. Vous pouvez donc supprimer l’étiquette correspondante. Récupérez ensuite l’étiquette et le contrôle Date_facture pour le placer dans l’En-tête état, soit en glissant les éléments soit en les coupant et les collant. Renommez l’étiquette Date :, placez-la en Gras et recopiez la mise en forme sur le contrôle. Placez ensuite tous les contrôles des coordonnées du client à droite de l’En-tête état et supprimez leurs étiquettes. Appliquez une mise en forme identique sans Gras. Faites de même avec le Numéro client (que vous renommerez) et le Mode de paiement mais conservez leurs étiquettes.

Ramenez les éléments restants vers la droite et placez-les de manière lisible comme pour le formulaire et l’état, renommez l’étiquette ID_Tarif en Référence et Prix_unitaire en Prix unitaire. Réduisez au maximum les parties En-tête de page et En-tête de groupe ID_Client une fois que vous aurez déplacé les étiquettes dans la partie En-tête de groupe ID_Date_facture.

Pour le total, procédez de la même manière que pour l’état précédent et dans le Pied de page, supprimer les 2 contrôles présents et insérez 3 nouvelles Zones de textes  identiques à celles que l’on a insérées dans le sous-formulaire dans la partie Pied état pour calculer le Total HT, la TVA et le Total TTC. Pour gagner du temps, vous pouvez même faire un copier-coller de l’un à l’autre. Faites bien attention à ne pas insérer ces contrôles dans le Pied de page auquel cas vous auriez des erreurs à la place des résultats.

Pour séparer les titres du détail de la facture, vous pouvez insérer un Trait  disponible dans les contrôles et le placer dans la partie En-tête de groupe ID_Facture_facture.

Bien sûr, n’oubliez pas les mentions obligatoires sur chaque facture que vous rajouterez en insérant des Zones de texte . Un prochain article traitera de ces mentions en même temps que la création de devis et facture sur Excel. Ce tutoriel est bien assez long comme ça .

Maintenant, vous pouvez enregistrer les modifications de votre état et le lancer. À l’ouverture, vous avez un message vous demandant le numéro de facture :

Et vous devriez obtenir ceci :

Pour gagner du temps, ouvrez votre formulaire F_Clients en Mode création  et, dans le sous-formulaire S/F_Date_facture, insérez un bouton . Choisissez Opérations sur état > Imprimer un état, cliquez sur Suivant, choisissez l’état E_Imprimer_une_facture et cliquez sur Terminer. Replacez le bouton comme vous le souhaitez et fermez votre formulaire en l’enregistrant. Désormais, lorsque vous établirez une facture vous pourrez l’imprimer de suite en saisissant son numéro.

Création de l’interface de l’application Access :

Pour terminer, nous allons créer l’interface de l’application que nous venons de créer.

Nous allons commencer par créer un état simplement avec la table T_Tarifs en ajoutant tous ses champs sauf Date et en choisissant une Orientation Paysage. Renommez le titre T_Tarifs en Catalogue, ID_Tarifs en Référence et Prix_unitaire en Prix unitaire et repositionnez les étiquettes et contrôles. Supprimez les éléments du Pied de page et fermez en enregistrant votre état. Renommez-le dans la barre de navigation Catalogue.

Voici votre catalogue :

Créer un formulaire avec l’Assistant formulaire  avec les champs de la table T_Clients et nommez-le F_Fiches_client. Présentez-le à votre guise, ajoutez un bouton de recherche comme nous l’avons fait dans le formulaire F_Clients et enregistrez-le.

Allez maintenant dans l’onglet Créer > Création de formulaire .

Cliquez droit sur la partie Détail > En-tête/pied de page de formulaire, insérez votre logo en haut à gauche dans la partie En-tête de formulaire et écrivez le nom de votre société.

Vous pouvez ajouter la date et l’heure à droite en cliquant sur Date et heure  de l’onglet Création. Choisissez le format et cliquez sur Ok.

Dans la partie Détail, vous allez insérer 5 boutons :

  • Créer ou modifier une fiche client
  • Ajouter ou modifier un produit au catalogue
  • Imprimer le catalogue
  • Consulter ou établir une facture
  • Quitter

Pour chacun d’eux, vous allez insérer un bouton et le paramétrer.

  • Premier bouton : Opérations sur formulaire > Ouvrir un formulaire > F_Fiches_client > Ouvrir le formulaire et afficher tous les enregistrements. Choisissez le texte et saisissez Créer ou modifier une fiche client. Cliquez sur Terminer.
  • Deuxième bouton : créez le bouton et refermez la fenêtre. Allez dans la Feuille de propriétés  , à l’onglet Évènement, sur la ligne Sur clic, cliquez sur  et choisissez le Générateur de macro. Pour créer cette macro, sélectionnez dans le menu déroulant OuvrirTable et indiquez les données suivantes :

 

Fermez en enregistrant et, dans l’onglet Format, à la ligne Légende saisissez Ajouter ou modifier un produit au catalogue.

  • Troisième bouton : Opérations sur état > Imprimer un état > Catalogue. Saisissez Imprimer le catalogue > Ouvrir le formulaire et afficher tous les enregistrements.
  • Quatrième bouton : Opérations sur formulaire > Ouvrir un formulaire > F_Clients. Saisissez Consulter ou établir une facture.
  • Dernier bouton : Applications > Quitter une application et gardez l’image.

Dans la Feuille de propriétés , à l’onglet Format, masquer le Sélecteur. Replacez correctement les boutons et agrandissez-les si nécessaire, réduisiez le Pied de formulaire au maximum, fermez ce formulaire et nommez-le Menu.

Il ne reste plus qu’à afficher ce menu à l’ouverture de cette base de données.

Pour cela, allez dans Fichier > Options > Base de données active et, à la ligne Afficher le formulaire, sélectionnez Menu. Vous pouvez également cocher la case Compacter lors de la fermeture, ce qui vous évitera d’avoir à le faire manuellement. Cliquez sur Ok et fermez votre base de données.

Voici votre interface mais vous pouvez bien sûr ajouter d’autres « raccourcis » :

Toutes mes félicitations pour être arrivé jusqu’à la fin de ce tutoriel qui était assez long, je vous l’accorde, mais vous avez maintenant une application prête à l’emploi pour gérer vos factures .

Téléchargez « Créer une facture avec Access – Partie 3/3 – Création des états et de l’interface » au format PDF

Je vous propose un fichier annexe dans l’Espace Membres contenant la base de données utilisée dans ce tutoriel.