Description

Permet d'imprimer des données à partir d'une base de données.


Le réglage du bouton Rapport est presque le même que celui du bouton Rechercher, car en fait, les deux actions recherchent dans la base de données puis affichent le résultat de la recherche, ce n'est que dans notre cas que nous verrons le résultat de la recherche lors de l'impression. Après avoir configuré le bouton, vous devez appeler le concepteur de rapports pour créer un modèle, qui déterminera exactement à quoi ressemblera le document une fois imprimé, mais tout dans l'ordre.


A titre d'exemple, nous mettrons en œuvre l'impression des paiements des clients. Cela ressemblera à l'image ci-dessous :




Ce type de rapports est également appelé Master-Detail avec regroupement. Dans notre exemple, les informations du client sont Master (enregistrement parent) et la liste des paiements de ce client est Detail (enregistrements enfants), qui sont regroupés par client.


Structure de la base de données, qui est utilisée pour cet exemple :





Sélectionnez l'action "Report" pour ce bouton dont le paramétrage est indiqué dans la figure ci-dessous:




Examinons ce paramétrage en détail et par étapes:


  1. Sélectionnez les composants impliqués dans la recherche

Cette liste est vide, le rapport contiendra donc des données sur tous les clients présents dans la base de données. Si nécessaire, vous pouvez ajouter des composants qui n'incluront que les clients répondant à vos critères dans le rapport.


  1. Sélectionnez la table pour la requête

Nous imprimerons des informations sur le client et nous sélectionnerons la table "clients".


  1. Le résultat

Sélectionnez les champs de la table dont nous avons besoin dans le rapport.


  1. Sélectionnez le fichier de rapport

Le modèle de rapport n'ayant pas encore été créé, ce paramètre doit sélectionner "Ouvrir le concepteur de rapports ...".

Un modèle de rapport est un fichier qui définit exactement à quoi ressemblera le rapport, ce fichier sera créé depuis le concepteur de rapports et sera enregistré dans le dossier Report de votre projet.




Une nuance à noter ici. Comme vous pouvez le voir dans les paramètres de la page 2, pour générer le résultat, nous sélectionnons des champs dans 3 tables différentes (clients, catégorie, paiements). En règle générale, dans d'autres programmes, vous devez écrire une requête SQL, qui spécifie manuellement comment une table, des liens vers une autre table et dans quel ordre. 


Le programme My Visual Database essaie de comprendre par lui-même comment les tables doivent être liées les unes aux autres afin d'obtenir exactement les données que vous attendez, vous évitant ainsi d'apprendre le langage de requête SQL.


Malheureusement, il n'est pas toujours possible pour le programme de prédire comment les tables doivent être liées afin d'obtenir les données que vous souhaitez voir. Une telle situation peut se produire lorsque vous devez lier 3 tables ou plus et s'il n'y a pas de liens évidents entre elles.


Que devrions nous faire ? Dans l'onglet "Tables de la base de données", sous chaque table, il y a une case à cocher "La table est un dictionnaire". Dans cet onglet, vous devez noter quelles tables de votre projet sont des dictionnaires. Mais comment comprendre quelles tables sont des dictionnaires ?


Des exemples de tableaux dictionnaires sont une table contenant des noms de pays, des statuts (ouvert, fermé), des types (entité juridique, entité physique), le nom avec les prix, etc.


Autrement dit, ces tables, qui, en règle générale, sont remplies dès le début du travail avec la base de données et ne sont pas éditées ou seront rarement éditées par la suite.


Dans ce cas, la table dictionnaire peut être référencée par la «catégorie» (catégorie client), pour cette table, vous devez cocher la case «La table est un dictionnaire» sous le nom des tables, vous aiderez ainsi le programme à lier correctement les tables..




Pour créer un modèle de rapport, vous devez exécuter le projet

Une fois le projet lancé, cliquez sur ce bouton avec l'action Report pour ouvrir le concepteur de rapports.


Ce rapport sera un peu plus compliqué que le précédent, car il utilisera des blocs (ou Band). Les blocs vous permettent de créer presque n'importe quelle structure de rapport. Nous allons maintenant nous familiariser avec certains d'entre eux. 


Pour voir tous les blocs disponibles, cliquez sur l'icône de gauche , alors vous verrez un menu comme indiqué dans la figure ci-dessous.









Commençons par créer un rapport à l'aide de blocs et découvrons à quoi ils servent.


Dans le menu illustré par la figure ci-dessus, sélectionnez le bloc Titre du rapport et ce bloc apparaîtra dans le rapport. Les informations de ce bloc ne seront imprimées que sur la première page de votre rapport.


Placez le logo et les informations sur l'entreprise dans ce bloc. En conséquence, vous devriez obtenir ce que montre la figure ci-dessous :


Vous pouvez ignorer ce bloc si vous n'avez pas besoin d'un titre pour votre rapport.





Placez le bloc Group Header suivant. Ce bloc permet de regrouper les données. Dans notre cas, nous regrouperons les données par client, de sorte que le bloc MasterData ci-dessous n'affichera que les données appartenant au client courant.


Lorsque ce bloc est placé, vous devez spécifier par quel champ de la table les données doivent être regroupées, dans notre cas, nous avons ajouté le champ Client.id spécifiquement à cet effet. Ce champ identifie sans ambiguïté le client, même si par erreur il y a deux clients avec le même nom dans la base de données.



Dans ce bloc, nous placerons les informations sur le client. Nous placerons également les en-têtes du tableau qui se trouvera dans le bloc suivant.

Placez les champs de texte et de données dans ce bloc, comme indiqué dans la figure ci-dessous :






Le bloc suivant à placer dans le rapport est celui des données de la table. Ce bloc est conçu pour générer des informations sous la forme d'un tableau.


Étant donné que dans l'étape précédente, nous avons placé le bloc GroupHeader, dans le bloc Master Data, nous verrons les données appartenant au client courant, à savoir les données sur l'équipement loué.


Placez ce bloc dans le rapport en le sélectionnant depuis le menu. Avant qu'il n'apparaisse dans le rapport, vous verrez une fenêtre avec le titre Select DataSet, dans laquelle vous devez sélectionner la source de données. Sélectionnez une source de données avec le titre du rapport dans la liste et cliquez sur OK. 


Dans ce bloc, placez les champs de la table à partir desquels le tableau sera formé. En conséquence, vous devriez réussir comme le montre la figure ci-dessous:



Faites attention au champ [Reportt. "payments.money"], qui affiche le prix du paiement. Appliquons un formatage monétaire à ce champ, c'est-à-dire ajoutons un séparateur de milliers et deux décimales obligatoires. Pour ce faire, faites un clic droit sur ce champ et sélectionnez "Format d'affichage ..." depuis le menu.


Choisissez la valeur Number dans la liste Catégorie et 1 234,50 dans la liste Format, puis cliquez sur OK.






Placez le bloc de pied de page du groupe suivant. Dans ce bloc, vous pouvez calculer le montant total des paiements du client courant.


Pour calculer le montant total, placez le composant System text  dans ce bloc. Une fois que vous avez placé ce composant, une boîte de dialogue apparaît et vous devez le configurer comme indiqué dans la figure ci-dessous :




Après cela, votre modèle de rapport doit ressembler à celui illustré ci-dessous :


Vous pouvez également appliquer une mise en forme monétaire à ce champ, comme décrit à l'étape précédente.





Et le dernier bloc que nous placerons dans le rapport est le pied de page, ce bloc sera imprimé sur chaque page du rapport, nous l'utilisons pour numéroter les pages.


Placez la variable système Page # dans ce bloc à partir du côté droit du concepteur de rapport (onglet Variables), faites simplement un glisser-déposer:




Votre modèle de rapport est maintenant prêt



Accédez au menu Fichier> Aperçu (File > Preview) ou appuyez simplement sur Ctrl + P pour voir à quoi ressemblera votre rapport.


Enregistrez le modèle de rapport dans le dossier Report de votre projet, menu Fichier> Enregistrer sous ... Donnez au fichier un nom tel que "clients et paiements" comme indiqué dans la figure ci-dessous:



Il reste à revenir aux paramètres de ce bouton et à sélectionner ce modèle de rapport à utiliser pour l'impression:





Nous y voilà. Vous pouvez maintenant redémarrer le projet. Cliquez sur ce bouton et vous verrez le rapport prêt à être imprimé.



La documentation sur l'utilisation du concepteur de rapports est disponible ici :  https://www.fast-report.com/public_download/UserManual-en.pdf