Création de rapports (modèles pour l'impression)

Pour lancer le Report Designer, cliquez sur le bouton "Ouvrir le Designer" dans la fenêtre d'impression. Vous pouvez aussi utiliser le raccourci qui a été ajouté dans le Menu Démarrer, ou encore lancer AMCReport.exe qui est situé dans le même dossier que Ant Movie Catalog.

Ce Designer est celui de FreeReport, et n'a presque pas été modifié (il est plutôt complexe, je vais donc probablement le laisser tel qu'il est actuellement).

Cette page montre les différentes étapes de la création d'un rapport.

Sélection de la taille de la page

Allez dans File -> Page Options pour sélectionner la taille du papier. En général ce sera A4 (ou Letter). Vous pouvez aussi sélectionner l'orientation Lanscape (Paysage) à la place de Portrait si vous voulez. Dans cette fenêtre vous pouvez également choisir le nombre de colonnes que vous désirez avoir sur votre page.

Bandes

Pour être reconnus, les champs doivent être placés sur des "Bands" (bandes). Pour mettre une bande sur la page, cliquez sur l'icône Band et ensuite cliquez sur la page, là où vous voulez placer la bande. Ensuite vous pouvez sélectionner quel type de bande il faut placer :

Certains types ne seront jamais utilisés ici. Ceux que vous allez probablement utiliser sont :

- Report title & Report summary : Titre et résumé du rapport ; n'apparaissent que sur la première page
- Page header & Page footer : En-tête et pied de page de chaque page
- Master data : Ceci est la bande la plus importante, c'est celle qui sera répétée pour chaque film

Sélectionnez "Master data" et cliquez "OK". Une autre fenêtre vous demandera de sélectionner la source, laissez le choix par défaut ("None") et cliquez "OK".

Zones de texte

Pour placer une zone de texte sur la bande Master data, sélectionnez l'icône Rectangle object et placez-le sur la bande (attention: ne le placez pas en-dehours de la bande, où il risque de ne pas apparaître sur le rapport final).

L'éditeur de texte est affiché :

Vous pouvez entrer le texte que vous voulez, puis cliquer "OK". Pour accéder à nouveau à cette fenêtre, double-cliquez sur une zone de texte.

Dans le menu contextuel (clic de droite) de ces objets, il y a trois options :

- Stretched : Si activé, la hauteur du dernier champ sera augmentée si nécessaire. Cela ne semble pas fonctionner pour les autres champs.
- Word wrap : Force un retour à la ligne si le texte est plus large que le champ.
- Autosize : Augmente la largeur du champ si nécessaire.

Variables (champs des films et autres)

Pour placer un champ de film, ajoutez une zone de texte (Rectangle object). Dans ses propriétés, spécifiez le nom du champ entre crochets [ ]. La liste des noms de champs est disponible via le bouton "Variables" de la fenêtre d'édition de texte :

Concernant les champs personnalisés, le nom du champ est définie par le tag du champ, le tout entre crochets [ ].

Les noms de champs peuvent eux-aussi être obtenus via des variables. Il suffit de mettre le préfixe "label:" devant le nom de la variable, le tout étant entre crochets. Cela permet de faire des rapports multilingues (qui s'adaptent à la langue dans laquelle le programme est utilisé).

Dans la liste déroulante vous pouvez sélectionner "Other" pour voir les champs spéciaux tels que le numéro de page, la date, etc...

Vous pouvez mélanger du texte normal et des variables dans une même zone de texte.

Images

Pour placer une image, utilisez l'icône Insert picture . La fenêtre d'image ressemble à ceci :

Si vous voulez que cette image affiche l'image du film courant, cliquez sur le bouton "Memo" et entrez "[Picture]" (ou sélectionnez-le dans la liste des variables).

Dans le menu contextuel de la zone d'image, il y a trois options :

- Stretched : Redimensionne l'image pour qu'elle ne dépasse pas de l'objet
- Center picture : Centre l'image dans l'objet
- Keep aspect ratio : Conserve les proportions de l'image

Vous pouvez aussi dessiner des lignes, via l'icône Draw line .

Scripts

Dans la fenêtre d'édition du contenu des zones de texte et des images, une option "Script" peut être cochée. La partie inférieure de la fenêtre vous permet alors d'entrer un script. Les scripts utilisés ici n'ont rien à voir avec ceux utilisés par Ant Movie Catalog, mis à part que le language utilisé est lui-aussi basé sur du Pascal. Voici quelques exemples :

- Si vous désirez ne faire apparaître une image que pour les films d'action, placez le code suivant dans la partie "Script" du memo de l'image :

      begin
        Visible := [Category] = 'Action';
      end;

- Si vous désirez placer l'année entre parenthèses derrière le titre seulement si elle est spécifiée pour le film (pour éviter de se retrouver avec des parenthèses vides), placez le code suivant dans la partie "Script" d'une zone de texte :

      begin
      if ([Year] <> '') then
        tmp1 := [OriginalTitle] + ' (' + [Year] + ')'
      else
        tmp1 := [OriginalTitle]
      end;

  Placez ensuite dans la zone de texte le code `[tmp1]` pour utiliser le résultat du script comme étant une nouvelle variable.

Beaucoup de fonctions du Report Designer ne sont pas utilisées ici, comme par exemple les champs DB, l'aperçu avant impression (Print Preview), les Subreports, ... (pour l'aperçu avant impression, sauvez le modèle et cliquez ensuite sur "Rafraîchir" dans la fenêtre d'impression de Ant Movie Catalog, une fois que le bon modèle est choisi dans la liste bien sûr).

Si vous avez des problèmes avec des champs de films, assurez-vous qu'ils sont placés sur une bande "Master data". Si des champs tels que "Total pages" ne fonctionnent pas, assurez-vous que l'option "Two pass report" est activée dans File -> Report Options.