Rubrique précédenteRubrique suivante


Tutoriel 2 : Regroupement des données d'un rapport

Ce tutoriel fournit des instructions pour regrouper les données client par plafond de crédit. Il commence par le rapport que vous avez créé dans le Tutoriel 1 : "Création d'un rapport de liste simple". Dans le premier tutoriel, vous avez créé un rapport simple contenant la liste des clients classée par ordre alphabétique. Dans ce rapport, vous avez organisé les clients en groupes de plafonds de crédit par tranches de 50 000,00 $ : 0-49999, 50000-99999, 100000-149999 et ainsi de suite.

Avant de commencer, vous devez avoir terminé le premier tutoriel.

Dans ce tutoriel, vous allez effectuer les tâches suivantes :

Tâche 1 : Ouvrir la conception du rapport

Dans le premier tutoriel, vous avez créé la conception Customers.rptdesign dans un dossier de projet nommé My Reports. Ouvrez Customers.rptdesign à l'aide d'une des procédures suivantes :

Le fichier s'ouvre dans l'éditeur de présentation (voir Figure 8-1).

Figure 8-1 Conception du rapport client dans l'éditeur de présentation

Tâche 2 : Sauvegarder le rapport sous forme de nouveau fichier

Au lieu d'éditer directement le rapport que vous avez créé dans le premier tutoriel, sauvegardez Customers.rptdesign sous forme de nouveau fichier.

  1. Sélectionnez Fichier->Sauvegarder sous. La boîte de dialogue Sauvegarder sous affiche le nom et l'emplacement du fichier.
  2. Pour le nom de fichier, remplacez Customers.rptdesign par Customers_grouped.rptdesign, puis cliquez sur Terminer. BIRT Report Designer effectue une copie de Customers.rptdesign. Le nouveau fichier s'affiche dans l'éditeur de présentation.

Tâche 3 : Ajouter la zone de plafond de crédit au fichier

Pour que le rapport affiche les données de plafond de crédit (credit limit), vous devez ajouter la zone CREDITLIMIT dans le fichier.

  1. Choisissez Explorateur de données.
  2. Développez Fichiers, puis faites un double-clic sur Customers. La boîte de dialogue Modifier le fichier affiche la requête SQL correspondant au fichier Customers.
  3. Ajoutez une virgule (,) après le téléphone.
  4. Sur la ligne suivante, ajoutez le texte suivant :
  5. creditLimit 
    
    La requête modifiée doit ressembler à celle indiquée dans la figure 8-2.

    Figure 8-2 Requête avec ajout de la zone creditLimit
  6. Sélectionnez Aperçu des résultats pour vérifier que la requête renvoie les lignes contenant les informations de plafond de crédit (creditLimit).
  7. Cliquez sur OK pour sauvegarder le fichier.

Tâche 4 : Ajouter les données de plafond de crédit au rapport

Dans cette procédure, vous insérez la zone de plafond de crédit (creditLimit) dans la table existante.

  1. Dans l'éditeur de présentation, sélectionnez la table. Des cellules guide apparaissent en haut à gauche de la table.
  2. Cliquez avec le bouton droit de la souris sur la cellule guide située au-dessus de la première colonne, puis sélectionnez Insérer->Colonne à gauche, comme indiqué dans la figure 8-3.
  3. Figure 8-3 Insertion d'une colonne à gauche d'une colonne existante
    Une nouvelle colonne apparaît.
  4. Dans l'Explorateur de données, développez Fichiers, puis Customers. Le fichier Customers affiche les zones indiquées dans la requête.
  5. Faites glisser la zone CREDITLIMIT de l'explorateur de données, et déposez-la dans la cellule de la ligne de détails en regard du nom de client [CUSTOMERNAME].
  6. BIRT Report Designer crée une colonne nommée, liée à la zone de fichier. Sélection de la liaison de données affiche cette liaison de colonne.
  7. Cliquez sur OK pour accepter la liaison de colonne par défaut.
  8. Dans l'éditeur de présentation, la table affiche la zone que vous avez ajoutée. Elle présente également l'élément d'intitulé que l'éditeur de présentation ajoute automatiquement sur la ligne d'en-tête. Cet intitulé sert d'en-tête de colonne et affiche le nom de la zone sous forme de texte statique. Le rapport doit ressembler à celui indiqué dans la figure 8-4.

    Figure 8-4 Résultat de l'ajout d'une zone de plafond de crédit (CreditLimit) dans l'éditeur de présentation
  9. Editez l'intitulé de plafond de crédit CREDITLIMIT de sorte qu'il apparaisse ainsi : Credit Limit.
  10. Prévisualisez le rapport. Le rapport doit ressembler à celui indiqué dans la figure 8-5.
  11. Figure 8-5 Aperçu du rapport, affichant le résultat de l'ajout de la zone plafond de crédit
    Certains clients disposent d'un plafond de crédit égal à 0. Il s'agit des nouveaux clients qui n'ont pas encore reçu l'aval pour leur ligne de crédit.

Tâche 5 : Regrouper les données client par plafond de crédit

Le rapport est actuellement classé par ordre alphabétique des noms de client. Dans le tutoriel 1, vous avez indiqué que les lignes de la table soient classées par nom de client. Dans cette procédure, vous regroupez les données par plafond de crédit par tranche de 50 000. Lorsque vous regroupez des données, BIRT les trie d'abord par groupes, puis il classe les lignes à l'intérieur de chaque groupe en supposant que vous avez également indiqué une condition de tri au niveau de la table. Comme vous le verrez après avoir terminé cette tâche, les lignes de données dans chaque groupe de plafond de crédit seront triées par nom de client.

  1. Sélectionnez Présentation pour revenir à l'éditeur de présentation.
  2. Cliquez avec le bouton droit de la souris sur la table et sélectionnez Insérer un groupe->Au-dessus. Nouveau groupe (voir figure 8-6) affiche les propriétés du groupe que vous pouvez définir.
  3. Figure 8-6 Nouveau groupe
  4. Pour indiquer le regroupement en plafonds de crédit par tranche de 50000, procédez comme suit :
    1. Dans la zone Nom, entrez le texte suivant comme nom de groupe :
    2. credit_group 
      
    3. Pour Grouper sur, sélectionnez CREDITLIMIT dans la liste déroulante.
    4. Pour Intervalle, sélectionnez Intervalle dans la liste déroulante.
    5. Pour Plage, entrez 50000.
    6. Utilisez les valeurs par défaut pour les autres options.
    7. Cliquez sur OK.
    La table dans la conception de rapport affiche une ligne d'en-tête et de bas de page pour le groupe, comme indiqué dans la figure 8-7. Elle présente également l'élément de données automatiquement ajouté par l'éditeur de présentation à la ligne d'en-tête du groupe. Cet élément de données sert d'en-tête de groupe et, dans le rapport généré, affiche la première valeur du plafond de crédit de chaque groupe.

    Figure 8-7 Lignes d'en-tête et de bas de page du groupe dans une conception de rapport
  5. Sélectionnez l'élément de données [CREDITLIMIT] affiché sur la ligne d'en-tête du groupe. Ne sélectionnez pas l'élément de données [CREDITLIMIT] apparaissant sur la ligne de détails.
  6. Dans l'Editeur de propriétés, sélectionnez Général, puis cliquez sur B pour obtenir l'en-tête du groupe en caractères gras.
  7. Prévisualisez le rapport. Faites défiler le rapport vers le bas pour visualiser l'ensemble des données. Comme dans la figure 8-8, le rapport organise les données en quatre groupes de plafond de crédit. Au début de chaque groupe, les nombres suivants s'affichent en gras : 0, 61100, 113000, 227600. Ces nombres correspondent à la première valeur de plafond de crédit de chaque groupe. Au sein de chaque groupe, les clients sont classés par ordre alphabétique.
  8. Figure 8-8 Aperçu du rapport affichant l'un des quatre groupes de plafond de crédit

Tâche 6 : Afficher les plages de plafond de crédit dans l'en-tête du groupe

Au lieu d'afficher la première valeur de chaque groupe dans l'en-tête du groupe, le rapport est plus facile à consulter s'il affiche la plage du plafond de crédit de chaque groupe, comme suit :

0 - 49999 
50000 - 99999 
100000 - 149999 

Cette procédure décrit comment écrire une expression JavaScript pour afficher ces plages de plafond de crédit. Cette procédure présente également la création d'une liaison de colonnes à laquelle associer l'expression JavaScript.

  1. Sélectionnez Présentation pour revenir à l'éditeur de présentation.
  2. Sélectionnez la table et cliquez sur Liaison dans l'éditeur de propriétés.
  3. Créez une nouvelle liaison de colonne :
    1. Sélectionnez Ajouter.
    2. Dans le générateur d'expression, entrez l'expression suivante :
    3. for(i=50000; i<300000; i+=50000){ 
      if( row["CREDITLIMIT"] < i ){ 
        rangeStart = i-50000; 
        rangeEnd = i-1; 
        break; 
      } 
      } 
      displayString=rangeStart + " - " + rangeEnd; 
      
    4. Cliquez sur OK. La nouvelle liaison de colonne apparaît sur la page de liaison de l'éditeur de propriétés avec le nom de colonne en évidence.
    5. Remplacez le nom Nouvelle liaison par :
    6. CREDIT_GROUP_HEADER 
      
  4. Mettez à jour l'élément de données CREDITLIMIT dans l'en-tête du groupe pour utiliser la nouvelle liaison de colonne en effectuant un double-clic sur l'élément de données, en sélectionnant CREDIT_GROUP_HEADER, puis en cliquant sur OK.
  5. Prévisualisez le rapport. Les en-têtes de groupe affichent les tranches de plafond de crédit. La figure 8-9 présente l'en-tête du groupe 50000 - 99999.
  6. Figure 8-9 Aperçu du rapport affichant les plages de plafond de crédit

Tâche 7 : Afficher les informations d'agrégation

L'un des avantages du regroupement de données est la possibilité d'ajouter un récapitulatif ou des informations d'agrégation au début ou à la fin de chaque groupe. Dans cette procédure, vous allez effectuer les tâches suivantes :

  1. Sélectionnez Présentation pour revenir à l'éditeur de présentation.
  2. Afficher le nombre de clients dans chaque groupe :
    1. Faites glisser un élément de données depuis la palette et déposez-le dans la première cellule de la ligne de bas de page du groupe. Les éléments figurant dans le bas de page de groupe s'affichent à la fin de tous les groupes.
    2. Dans Sélection de liaison de données, créez une nouvelle liaison de colonne :
      1. Sur une nouvelle ligne, dans Nom, entrez le texte suivant :
      2. GROUP_CUSTOMER_COUNT 
        
      3. Utilisez le type de données par défaut, Tous.
      4. Dans Expression, entrez l'expression d'agrégation suivante :
      5. "Customers: " + Total.count() 
        
        Total.count( ) renvoie le nombre de lignes.
      6. Utilisez la valeur d'agrégation par défaut, credit_group. Cette valeur indique que la fonction Total.count( ) renvoie le nombre de lignes dans chaque groupe de plafond de crédit.
      7. Sélectionnez la liaison de colonne que vous venez de créer, puis cliquez sur OK. L'élément de données utilise la liaison de colonne sélectionnée.
    3. Prévisualisez le rapport. Le rapport affiche le nombre de clients à la fin de chaque groupe, comme indiqué dans la figure 8-10.
    4. Figure 8-10 Aperçu du rapport affichant le total de chaque groupe
  3. Sélectionnez Présentation pour revenir à l'éditeur de présentation.
  4. Affichez le nombre de tous les clients :
    1. Sélectionnez la table.
    2. Des cellules guide apparaissent en haut à gauche de la table.
    3. Cliquez avec le bouton droit de la souris sur la cellule à gauche de la première ligne, Table - En-tête, puis sélectionnez Insérer->Ligne->Au-dessus.
    4. Une nouvelle ligne d'en-tête de table apparaît au-dessus de la ligne affichant les titres de colonne. Elle s'affiche en couleurs car elle hérite des propriétés de la ligne qui la suit.
    5. Sélectionnez cette nouvelle ligne et, dans l'éditeur de propriétés, remplacez la couleur d'arrière-plan par blanc.
    6. Faites glisser un élément de données depuis la palette et déposez-le dans la première cellule de la nouvelle ligne d'en-tête de table. Les éléments figurant dans l'en-tête de table s'affichent au début de la section.
    7. Dans Sélection de liaison de données, créez une nouvelle liaison de colonne :
      1. Sur une nouvelle ligne, dans Nom, entrez le texte suivant :
      2. TOTAL_CUSTOMER_COUNT 
        
      3. Utilisez le type de données par défaut, Tous.
      4. Dans Expression, entrez l'expression d'agrégation suivante :
      5. "Nombre de clients : " + Total.count() 
        
      6. Utilisez la valeur d'agrégation par défaut, ALL. Cette valeur indique que la fonction Total.count( ) renvoie le nombre de lignes dans toute la table.
      7. Sélectionnez la liaison de colonne que vous venez de créer, puis cliquez sur OK. L'élément de données utilise la liaison de colonne sélectionnée.
    La conception de rapport doit ressembler à celle affichée dans la figure 8-11.

    Figure 8-11 Conception de rapport affichant un nombre total de clients
  5. Prévisualisez le rapport. Le rapport affiche le nombre de clients au début de la table, comme indiqué dans la figure 8-12.
  6. Figure 8-12 Aperçu du rapport affichant le nombre total de clients

Tâche 8 : Mettre en forme le rapport

Le rapport affichant désormais les données correctes, vous pouvez vous concentrer sur l'amélioration de sa présentation. Dans cette section, vous allez effectuer les tâches suivantes :

Supprimer les données de plafond de crédit des lignes de détails

Pour vérifier que les données apparaissent dans les groupes de plafond de crédit corrects, il est utile d'afficher le plafond de crédit de chaque client. Une fois ces données vérifiées, nous pouvons supprimer les informations de plafond de crédit individuelles du rapport.

  1. Sélectionnez Présentation pour revenir à l'éditeur de présentation.
  2. Supprimez l'élément de données [CREDITLIMIT] de la ligne de détails.
  3. Prévisualisez le rapport. Il doit ressembler à celui affiché dans la figure 8-13.
  4. Figure 8-13 Aperçu du rapport sans les données de plafond de crédit pour chaque ligne

Afficher les en-têtes de groupe sur la première ligne de chaque groupe

Les en-têtes de groupe de plafond de crédit s'affichent sur leurs propres lignes, au-dessus des lignes de détails de chaque groupe. Dans cette procédure, vous faites glisser les en-têtes de sorte à ce qu'ils apparaissent sur la première ligne de détails.

  1. Sélectionnez Présentation pour revenir à l'éditeur de présentation.
  2. Sélectionnez la cellule contenant l'en-tête de groupe, comme indiqué dans la figure 8-14. Assurez-vous que vous sélectionnez bien la cellule et non pas l'élément de données figurant à l'intérieur de la cellule.
  3. Figure 8-14 Cellule d'en-tête de groupe sélectionnée
  4. Dans les propriétés générales de l'éditeur de propriétés, indiquez Détails dans la zone Supprimer. Dans la conception de rapport, l'en-tête de groupe apparaît toujours au-dessus de la ligne de détails car techniquement cet élément figure toujours sur la ligne d'en-tête du groupe.
  5. Dans les propriétés de remplissage de l'éditeur de propriétés, indiquez 12 points pour Haut d'élément de remplissage. Ce paramètre aligne les en-têtes de groupe plus précisément par rapport aux données des lignes de détails. N'oubliez pas qu'au tutoriel 1, nous avons ajouté un remplissage de 12 points pour le haut des cellules de ligne de détails.
  6. Prévisualisez le rapport. Les en-têtes de groupe s'affichent sur la première ligne de chaque groupe, comme indiqué dans la figure 8-15.
  7. Figure 8-15 Aperçu du rapport affichant les en-têtes de groupe supprimés

Séparer chaque groupe par une ligne

Insérer une ligne de séparation entre chaque groupe facilite la lecture des groupes de données.

  1. Sélectionnez Présentation pour revenir à l'éditeur de présentation.
  2. Sélectionnez toutes les cellules figurant sur la ligne de bas de page du groupe. Pour sélectionner plusieurs cellules, utilisez la combinaison Maj-clic.
  3. Dans l'éditeur de propriétés, sélectionnez Bordure, puis définissez les propriétés de la bordure :
    • Choisissez le style trait plein.
    • Cliquez sur le bouton indiquant la bordure inférieure.
  4. Ajoutez de l'espace entre la ligne et le texte situé au-dessus. Alors que les cellules sont sélectionnées, choisissez les propriétés de remplissage dans l'éditeur de propriétés et indiquez 6.0 points comme valeur pour Bas.
  5. Prévisualisez le rapport. Une ligne s'affiche à la fin de chaque groupe, comme indiqué dans la figure 8-16.
  6. Figure 8-16 Aperçu du rapport affichant une ligne entre chaque groupe

Tâche 9 : Prévisualiser le rapport dans l'afficheur de rapports BIRT

Jusqu'ici vous avez vérifié la sortie du rapport via les fonctions d'aperçu de BIRT Report Designer. Cette fois, vous allez utiliser l'afficheur de rapports pour voir à quoi ressemble le rapport lorsqu'il est déployé. L'afficheur de rapports fournit d'autres fonctionnalités, y compris la possibilité de naviguer vers des sections spécifiques d'un rapport à l'aide d'une table des matières. Lorsque vous créez des groupes dans un rapport, BIRT génère automatiquement une table des matières, utilisant les valeurs du groupe pour présenter la hiérarchie du rapport.

  1. Sélectionnez Fichier->Visualiser le rapport dans l'afficheur Web.
  2. Le rapport s'affiche dans l'afficheur de rapports.

  3. Cliquez sur le bouton Table des matières (bouton de gauche en haut de la fenêtre) pour afficher la table des matières.
  4. La table des matières affiche la première valeur de chacun des quatre groupes de plafond de crédit. Lorsque vous sélectionnez une valeur, le rapport affiche la section correspondante du rapport. Par exemple, si vous sélectionnez 61100, le rapport affiche les lignes de clients situés dans la tranche de plafond de crédit comprise entre 50000 et 99999, comme indiqué dans la figure 8-17.

    Figure 8-17 Sélection d'une valeur dans la table des matières pour visualiser les données correspondantes

Tâche 10 : Afficher les plages de plafond de crédit dans la table des matières

Au lieu d'afficher la première valeur de chaque groupe de plafond de crédit, la table des matières est plus logique si elle affiche les mêmes valeurs de tranches de plafond de crédit que le rapport. Pour effectuer cette tâche, utilisez la même expression JavaScript que vous avez employée auparavant pour afficher les plages de plafond de crédit (0 - 49999, 50000 - 99999, et ainsi de suite) dans l'en-tête de groupe.

  1. Revenez à BIRT Report Designer.
  2. Dans l'éditeur de présentation, sélectionnez la table puis cliquez sur l'onglet Groupes dans l'éditeur de propriétés.
  3. Faites un double-clic sur credit_group dans la liste de groupes.
  4. Modifier le groupe affiche les propriétés du groupe. Expression d'élément de table des matières a la valeur par défaut de la zone de regroupement, row["CREDITLIMIT"].
  5. Sélectionnez le bouton des points de suspension (...) et dans le générateur d'expression, remplacez l'expression row["CREDITLIMIT"] par l'expression suivante. Il s'agit de la même expression de liaison de colonne utilisée par l'élément de données dans l'en-tête de groupe. Au lieu d'entrer à nouveau l'expression, vous pouvez la copier à partir de l'élément de données et la coller à cet endroit.
  6. for(i=50000; i<300000; i+=50000){ 
    if( row["CREDITLIMIT"] < i ){ 
      rangeStart = i-50000; 
      rangeEnd = i-1; 
      break; 
    } 
    } 
    displayString=rangeStart + " - " + rangeEnd; 
    
  7. Cliquez sur OK.
  8. Prévisualisez le rapport dans l'afficheur de rapports pour vérifier la modification dans la table des matières.
  9. La table des matières affiche les plages de plafond de crédit comme indiqué dans la figure 8-18.

    Figure 8-18 Table des matières mise à jour


(c) Copyright Actuate Corporation 2006

Rubrique précédenteRubrique suivante