DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Nouveauté WINDEV 2024 !
Aide / Tuto WINDEV / Tuto - Application WINDEV : gérer des données
  • Leçon 4 - Réaliser des impressions simples
  • Présentation
  • Impression du contenu d'un champ Table
  • Impression directe via la FAA (Fonctionnalité Automatique de votre Application)
  • Création d'un état automatique sur un champ Table
  • Imprimer une liste de clients
  • Créer un état
  • En résumé

Tuto - Application WINDEV : gérer des données

Leçon 4 - Réaliser des impressions simples
Ce que vous allez apprendre :
  • Imprimer le contenu d'un champ Table.
  • Imprimer une liste de clients.
Durée de la leçon 20 mn
Présentation
WINDEV permet d'imprimer vos données :
  • directement par programmation.
  • via les états. Un état est le nom donné à la représentation graphique d'une édition. Un état est créé grâce à l'éditeur d'états.
Nous allons maintenant découvrir comment créer différents types d'états dans l'application "WD Application Complète". Pour cela, nous allons créer :
  • Un état permettant d'imprimer le contenu d'un champ Table.
  • Un état permettant de lister les clients.
Nous découvrirons également comment créer un menu dans une fenêtre. Ce menu nous permettra de lancer l'impression de l'état.
Impression du contenu d'un champ Table
Dans la leçon précédente, nous avons créé un champ Table permettant d'afficher le résultat d'une recherche multicritère. Nous allons étudier maintenant les différentes possibilités pour imprimer le contenu de ce champ Table.

Impression directe via la FAA (Fonctionnalité Automatique de votre Application)

Dans les leçons précédentes, nous avons déjà vu que WINDEV proposait de nombreuses fonctionnalités automatiques (appelées FAA). Pour l'impression du contenu d'un champ Table, il existe une FAA.
Le site https://faa.pcsoft.fr/ permet de connaître les principales FAA (Fonctionnalités Automatiques de votre Application) disponibles. Pour tous les champs proposant des FAA, ce site est automatiquement disponible via le menu "Aide (FAA)" présent dans le menu contextuel.

Faisons un test rapide afin d'utiliser cette FAA :
  1. Affichez si nécessaire la fenêtre "FEN_Menu" sous l'éditeur de fenêtres.
  2. Cliquez sur Tester une fenêtre parmi les boutons d'accès rapide.
  3. Sélectionnez si nécessaire le volet d'onglet "Recherche de commandes".
  4. Définissez les différents paramètres de la recherche :
    • Etat des commandes,
    • Mode de règlement,
    • Fourchette de dates à prendre en compte.
  5. Cliquez sur "Rechercher".
  6. Lorsque les données sont affichées dans le champ Table, affichez le menu contextuel du champ (icône Menu contextuel du champ en haut à droite ou clic droit sur le champ).
  7. Cliquez sur l'option "Imprimer".
  8. Si nécessaire, choisissez d'imprimer en mode "Paysage" le contenu du champ Table. L'état correspondant au champ est aussitôt affiché dans le visualisateur de rapports.
    Etat affiché dans le visualisateur de rapports

    En mode test, le contenu du champ Table est directement imprimé.
    En exécution, l'utilisateur final a la possibilité d'imprimer directement ou de lancer le logiciel "Etats et Requêtes" pour créer l'état correspondant. Pour plus de détails sur le logiciel "Etats et Requêtes", consultez Diffusez le logiciel "Etats et Requêtes" avec vos applications.
  9. Fermez le visualisateur de rapports et arrêtez le test de l'application.
Vous voulez personnaliser l'état proposé par défaut ? Il suffit de créer un état automatique sur le champ Table. Cet état (s'il existe) sera automatiquement utilisé par l'option d'impression du champ Table.

Création d'un état automatique sur un champ Table

Pour créer un état imprimant les données d'un champ Table, il suffit de créer un "Etat sur champ table" : l'état correspondant au champ Table est créé automatiquement.
Pour créer un "Etat sur champ Table" :
  1. Si nécessaire, sous l'éditeur de fenêtres, affichez le volet d'onglet "Recherche de commandes" (cliquez dessus).
  2. Sous le volet "Création", dans le groupe "Données", déroulez "Table et Liste" et sélectionnez "Etat sur champ Table".
  3. Notre fenêtre contenant 2 champs Table sur des volets d'onglet différents, WINDEV demande de sélectionner le champ Table voulu. Dans notre cas, sélectionnez "TABLE_REQ_RechercheCommandes" et validez.
  4. La forme d'un champ Bouton apparaît sous le curseur de la souris. Ce champ est automatiquement créé et contient le code WLangage permettant de lancer l'impression du contenu du champ Table.
  5. Cliquez dans la fenêtre à la position où le champ doit être créé (par exemple en dessous du champ Bouton "Rechercher" dans le volet d'onglet "Recherche de commandes").
  6. L'état est immédiatement créé.
  7. Une fenêtre s'affiche proposant de sauvegarder l'état. Validez.
  8. L'éditeur d'états apparaît avec l'état qui a été automatiquement créé.
    Etat créé automatiquement sous l'éditeur d'états
  9. Dans cet état, vous retrouvez les titres des colonnes du champ Table présent dans la fenêtre. Nous allons juste faire une petite modification dans cet état : nous allons modifier le titre.
    • Sélectionnez le champ correspondant au titre de l'état ("Table REQ_RechercheCommandes" est affiché dans le champ) et double-cliquez sur ce champ.
    • Dans la fenêtre de description, modifiez le libellé et saisissez "Commandes recherchées".
    • Validez.
  10. Revenez sur la fenêtre "FEN_Menu" (par exemple en cliquant sur le bouton "FEN_Menu" présent dans la barre des documents ouverts sous WINDEV).
  11. Modifiez si nécessaire la taille et la position du champ Bouton "Imprimer" (pour qu'il ait la même taille que le champ Bouton "Rechercher").
  12. Enregistrez la fenêtre en cliquant sur Enregistrer un élément parmi les boutons d'accès rapide.
  13. Testez la fenêtre : cliquez sur Tester une fenêtre parmi les boutons d'accès rapide.
    • Sélectionnez si nécessaire le volet d'onglet "Recherche de commandes".
    • Définissez les différents paramètres de la recherche :
      • Etat des commandes,
      • Mode de règlement,
      • Fourchette de dates à prendre en compte.
    • Cliquez sur "Rechercher".
  14. Lorsque les données sont affichées dans le champ Table, utilisez le bouton "Imprimer" ou l'option "Imprimer" du menu contextuel du champ Table : l'état que vous venez de créer est utilisé dans les deux cas.
Imprimer une liste de clients
Nous venons de voir des états créés automatiquement. Mais WINDEV permet également de créer des états grâce à l'éditeur d'états. Dans cet exemple, nous allons imprimer une liste des clients, regroupés par pays et par département ou province.
Pour cela, nous allons utiliser un état de type tableau, qui permet de représenter clairement une liste de données.

Créer un état

Pour créer un état :
  1. Cliquez sur le bouton Créer un élément parmi les boutons d'accès rapide.
  2. La fenêtre de création d'un nouvel élément s'affiche : cliquez sur "Etat" puis sur "Etat". L'assistant de création d'un état se lance. L'assistant de création d'un état propose plusieurs types d'états :
    Assistant de création d'un état - Type de l'état
  3. Sélectionnez "Tableau". Passez à l'étape suivante.
  4. Sélectionnez la source des données de l'état. L'état va être basé sur le fichier de données Client. Sélectionnez "Un fichier de données ou une requête existante".
    Assistant de création d'un état - Source de données
    Passez à l'étape suivante.
  5. Dans la liste des fichiers de données et des requêtes, sélectionnez le fichier de données "Client". Passez à l'étape suivante.
  6. Définissez la clé de parcours du fichier de données. Dans notre cas, nous allons parcourir le fichier de données Client selon le nom complet du client. Sélectionnez la clé de parcours "NomComplet".
    Assistant de création d'un état - Parcours du fichier de données
    Passez à l'étape suivante.
  7. Nous allons maintenant définir les options de tri des données dans l'état. Par défaut, l'assistant propose la rubrique utilisée comme clé de parcours du fichier de données. Comme nous voulons faire un état listant les clients par pays et par province (département), nous allons ajouter un tri sur ces deux rubriques.
  8. Pour ajouter un tri sur le pays :
    • Cliquez sur le bouton "Ajouter" puis sélectionnez "Critère de tri" pour ajouter une rubrique de tri.
    • Dans la fenêtre qui s'affiche, sélectionnez la rubrique Client.Pays.
      Assistant de création d'un état - Ajout d'un  tri
    • Validez.
  9. Pour ajouter un tri sur la province (département) :
    • Cliquez sur le bouton "Ajouter" puis sélectionnez "Critère de tri" pour ajouter une rubrique de tri.
    • Dans la fenêtre qui s'affiche, sélectionnez la rubrique Client.EtatProvinceRégion.
    • Validez.
  10. Modifiez l'ordre des rubriques de tri. Les clients doivent être triés par pays, province (département) puis par ordre alphabétique.
    • La rubrique "Client.Pays" apparaît en seconde rubrique de tri. Sélectionnez cette rubrique et déplacez-la en première rubrique de tri à l'aide du bouton "Monter".
    • La rubrique "Client.EtatProvinceRégion" apparaît en troisième rubrique de tri. Sélectionnez cette rubrique et déplacez-la en seconde rubrique de tri à l'aide du bouton "Monter".
      Assistant de création d'un état - Ordre d'impression des données
      Passez à l'étape suivante.
  11. L'assistant demande d'indiquer s'il y a une rupture.
    Qu'est-ce qu'une rupture ?
    Une Rupture est une opération qui consiste à regrouper des enregistrements (ou lignes) suivant un ou plusieurs critères. Attention, les enregistrements (ou lignes) sont bien entendu imprimés.
    Une rupture est OBLIGATOIREMENT liée à un tri.
    Notez la présence d'un début de rupture et d'une fin de rupture.
    Les informations communes aux différentes lignes sont présentes dans le début de rupture.
    Les totaux (compteurs, etc.) sont présents dans la fin de rupture.
    Cette rupture permet de regrouper une série d'enregistrements par rapport à un même critère. Dans notre exemple, la rupture concerne le pays et permet de regrouper tous les clients d'un même pays.

    Assistant de création d'un état - Rupture
  12. Répondez "Je veux des ruptures dans l'état". Passez à l'étape suivante.
  13. Indiquez sur quelle rubrique de tri la rupture doit s'effectuer. Dans notre cas, nous allons utiliser plusieurs ruptures :
    • la première rupture s'effectue sur le pays.
    • la seconde rupture s'effectue sur la province (département).
    Décochez la rubrique "Client.NomComplet".
    Assistant de création d'un état - Rupture
  14. Passez à l'étape suivante.
  15. Vous allez maintenant indiquer dans quel ordre sont imprimées les rubriques et leur répartition dans les différents blocs. Dans notre exemple :
    • seul le pays sera dans le bloc "Début de rupture 1". La rubrique "Pays" est automatiquement associée au "Début de rupture 1".
    • seule la province (département) sera dans le bloc "Début de rupture 2". La rubrique "EtatProvinceRégion" est automatiquement associée au "Début de rupture 2".
    • seules les rubriques NomComplet, Adresse, CodePostal, Ville, EtatProvinceRégion et Pays seront affichées dans l'état.
    Décochez les rubriques IDClient, Complément, Téléphone, Mobile et Email.
    Assistant de création d'un état - Rubriques à afficher
    Passez à l'étape suivante.
  16. Cette étape permet de définir la mise en page de l'état.
    Assistant de création d'un état - Format du papier
    Nous garderons les valeurs par défaut avec l'orientation "Portrait".
    Marges d'impression
    Lors du choix des marges d'impression, n'oubliez pas de tenir compte des marges physiques des imprimantes. Les marges physiques sont les marges réservées par l'imprimante dans lesquelles il n'est pas possible d'imprimer. De plus, les marges physiques diffèrent en fonction des modèles d'imprimante.
  17. Passez à l'étape suivante.
  18. Cette étape permet de sélectionner le gabarit utilisé pour l'état. Il est conseillé d'utiliser le même gabarit que pour les fenêtres. Dans notre cas, sélectionnez par exemple le gabarit "Phoenix" et passez à l'étape suivante.
  19. Il ne reste plus qu'à donner un nom et un libellé à l'état et à le sauvegarder.
    • Saisissez le titre : "Liste des clients".
    • Conservez le nom proposé par défaut : "ETAT_Liste_des_clients".
  20. Validez.
  21. Acceptez de passer en mode paysage en validant.
  22. Acceptez de réduire l'état en validant.
    Etat en édition
  23. L'état apparaît sous l'éditeur d'états. Enregistrez l'état.
L'état est terminé. Nous allons immédiatement le tester pour voir le résultat.
Exécutez cet état en cliquant sur Tester l'élément parmi les boutons d'accès rapide. La destination de l'impression peut être au choix :
Choix du mode d'impression
Choisissez "Visualisateur de rapports" et validez. L'état s'exécute et s'affiche dans le visualisateur de rapports.
Affichage de l'état
Vous pouvez imprimer directement la page en cours ou la totalité du document en cliquant sur l'imprimante (volet "Imprimer").
En résumé
Projet corrigé
Vous voulez vérifier le résultat de vos manipulations ?
Un projet corrigé est disponible. Ce projet contient les différentes fenêtres créées dans cette leçon. Pour ouvrir le projet corrigé, dans la page d'accueil, cliquez sur "Tutoriel" puis dans la zone "Tuto - Application WINDEV : gérer des données", double-cliquez sur "Application complète - Corrigé".
Cette leçon nous a permis de découvrir comment réaliser des états affichant des données provenant de la base de données. La leçon suivante va nous permettre de créer un menu déroulant que l'utilisateur pourra manipuler par exemple pour lancer les impressions de l'application.
Leçon précédenteSommaireLeçon suivante
Version minimum requise
  • Version 2024
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 16/11/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale