Création d'un rapport au format libre

Vous pouvez créer un rapport au format libre à partir d'une requête TABLE qui omet les commandes d'affichage contrôlant le formatage colonnaire et matriciel (PRINT, LIST, SUM et COUNT). Au lieu de ce formatage, la requête comprend les fonctionnalités de rapport suivantes :

Hauteur

Contient le corps du rapport. La requête affiche les caractères de texte et graphiques et les champs de données composant le rapport.

Pied de page

Contient le pied de page du rapport. Ce texte est celui qui s'affiche en bas de chaque page du rapport. Le pied de page peut afficher les mêmes caractères et champs de données que l'en-tête.

Les opérateurs préfixe

Indiquent les calculs de champ et de manipulation.

Champs temporaires

Tirent de nouvelles valeurs des champs existants dans une source de données.

Phrases BY

Spécifient l'ordre de tri du rapport, et déterminent combien d'enregistrements à inclure sur chaque page.

Critères WHERE

Sélectionnent les enregistrements pour un rapport.

Lorsque vous créez un rapport au format libre, vous pouvez :


Haut de page

Exemple : Création d'un rapport au format libre

Supposons que vous êtes directeur du personnel et chargé d'administrer la politique de formation de votre société. Cette politique de formation indique que le nombre d'heures de formation que peut suivre un employé en dehors de la société aux frais de celle-ci est déterminé par le nombre d'heures de formation internes terminées par l'employé.

Pour effectuer votre travail efficacement, vous avez besoin d'un rapport indiquant l'histoire de formation interne de chaque employé. Les informations sur chaque employé doivent apparaître sur une page distincte afin d'être placées dans le fichier personnel de l'employé et référencées lorsque l'employé demande l'approbation pour suivre des cours à l'extérieur.

Pour remplir cette condition, il faut créer le rapport des heures de formation d'employés (EMPLOYEE EDUCATION HOURS REPORT), qui affiche une page distincte pour chaque employé. Notez que les page 1 et 2 du rapport fournissent des informations sur des employés du service MIS, tandis que la page 6 fournit des informations sur un employé du service de production.

Le diagramme suivant simule la sortie que vous verriez si vous exécutiez la procédure dans Requête pour un rapport des heures de formation d'un employé.


Haut de page

Exemple : Requête pour un rapport des heures de formation d'un employé

La requête suivante crée la requête pour un rapport des heures de formation d'employés (EMPLOYEE EDUCATION HOURS REPORT). Les nombres à gauche de la requête correspondent aux nombres dans les commentaires suivants :

1. SET STYLE = OFF
   SET STYLEMODE=FIXED
   SET ONLINE-FMT = PDF 
2. DEFINE FILE EMPLOYEE
      CR_EARNED/I2 = IF ED_HRS GE 50 THEN 9
         ELSE IF ED_HRS GE 30 THEN 6
         ELSE 3;
      END 
3. TABLE FILE EMPLOYEE
   BY DEPARTMENT 
4. HEADING
   " "
   "<13>EMPLOYEE EDUCATION HOURS REPORT" 
5. "<14>FOR THE <DEPARTMENT DEPARTMENT" 
6. "</2"
   "EMPLOYEE NAME:    <23><FIRST_NAME <LAST_NAME>"
   "EMPLOYEE ADDRESS: <23><ADDRESS_LN1>"
   "<23><ADDRESS_LN2>"
   "<23><ADDRESS_LN3>"
   "</1"
   "JOB CODE: <JOBCODE>"
   "JOB DESCRIPTION: <JOB_DESC>"
   "</1" 
7. "MOST RECENT COURSE TAKEN ON: <MAX.DATE_ATTEND>"
   "TOTAL NUMBER OF EDUCATION HOURS: <ED_HRS>"
   "</1" 
8. "<10>|-------------------------------------|" 
9. "<10>| EDUCATION CREDITS EARNED <CR_EARNED>|"
   "<10>|-------------------------------------|" 
10.BY EMP_ID NOPRINT PAGE-BREAK 
11.WHERE ED_HRS GT 0 
12.FOOTING
   "<15>PRIVATE AND CONFIDENTIAL"
   END

Ce qui suit explique le rôle de chaque ligne de la requête en créant le rapport type :

  1. Deux commandes SET sont requises pour visualiser l'affichage souhaité dans un navigateur. La commande SET STYLE = OFF permet la conception au format libre en ignorant les paramètres de feuille de style par défaut. La commande SET STYLEMODE = FIXED désactive le formatage HTML et permet au concepteur du rapport de déterminer l’emplacement idéal des éléments dans le rapport, à l'aide des signes de localisation et des commandes de saut de ligne.
  2. La commande DEFINE crée un champ virtuel pour le rapport. Le calcul reflète la politique de la société concernant l'obtention des unités de valeurs à l'extérieur. Le résultat est stocké dans le fichier CR_EARNED et s'affiche plus tard dans le rapport.
  3. Un rapport au format libre standard commence par une commande TABLE FILE standard. Le rapport type utilise la source de données EMPLOYEE.
  4. La partie d'en-tête, ce qui est initié par la commande HEADING, définit le corps du rapport. La plupart du texte et des champs de données qui s'affichent dans le rapport sont spécifiés dans la partie d'en-tête. Dans cette requête, la partie d'en-tête continue jusqu'à la deuxième phrase BY, BY EMP_ID NOPRINT PAGE-BREAK.
  5. Cette ligne illustre ce qui suit :
  6. Vous pouvez améliorer la lisibilité d'un rapport en utilisant les commandes de saut de ligne. La commande </2, lorsqu'elle est codée sur une ligne toute seule, génère deux lignes blanches, comme vous pouvez le constater entre l'en-tête de page et le nom d'employé.
  7. Cette ligne illustre la façon d'effectuer un calcul de champ dans un rapport au format libre à l'aide d'un opérateur préfixe. Dans ce cas, nous demandons la date à laquelle le cours le plus récent à été pris- c'est à dire, la valeur maximale pour le champ DATE_ATTEND.
  8. Les trois lignes suivantes illustrent l'utilisation des caractères spéciaux pour créer un graphique dans le rapport. Il faut peut-être régler la case autour du champ EDUCATION CREDITS EARNED, en raison d'une sortie s'affichant avec une police proportionnelle.
  9. La valeur du champ créé par la commande DEFINE s'affiche dans la case, soulignant le nombre d'unités de valeur de formation obtenu par un employé donné. Cette ligne démontre que vous pouvez afficher un champ virtuel dans le corps de votre rapport.
  10. Cette ligne illustre l'utilisation du tri dans un rapport au format libre. Les spécifications de rapport exigent que des informations relatives à un employé seulement s'affichent par page. Cette condition est satisfaite en utilisant les commandes BY et PAGE-BREAK. Notez que pour produire un rapport avec des sauts de page, la sortie de rapport doit être au format PDF.
  11. Vous pouvez spécifier la sélection d'enregistrements dans un rapport au format libre. Par suite des critères WHERE, le rapport ne contient que les employés ayant obtenu des unités de valeur de formation internes.
  12. Comme ceci est un rapport personnel, il est important qu'il comprenne les mots PRIVATE AND CONFIDENTIAL à la fin de chaque page de rapport. Cette condition est satisfaite par la commande FOOTING.

WebFOCUS