Vorige onderwerpVolgende onderwerp


Zelfstudieprogramma 2: Rapportgegevens groeperen

Dit zelfstudieprogramma biedt instructies voor het groeperen van klantengegevens per kredietlimiet. Het begint met het rapport dat u hebt gemaakt in Zelfstudieprogramma 1: "Een eenvoudig lijstrapport maken." In het eerste zelfstudieprogramma heeft u een eenvoudig rapport gemaakt waarin klanten in alfabetische volgorde werden weergegeven. In dit rapport organiseert u klanten in kredietlimietgroepen van $50.000,00, zoals 0-49999, 50000-99999, 100000-149999, enzovoort.

Voordat u met dit zelfstudieprogramma begint, moet u het eerste zelfstudieprogramma voltooien.

In dit zelfstudieprogramma voert u de volgende taken uit:

Taak 1: Het rapportontwerp openen

In het eerste zelfstudieprogramma heeft u Customers.rptdesign gemaakt in een projectmap met de naam My Reports. Open Customers.rptdesign met behulp van een van de volgende procedures:

Het bestand wordt geopend in de layout-editor, zoals in Afbeelding 8-1.

Afbeelding 8-1 Klantrapportontwerp in de layout-editor

Taak 2: Rapport opslaan als een nieuw bestand

In plaats van rechtstreeks het rapport te bewerken dat u hebt gemaakt in het eerste zelfstudieprogramma, slaat u Customers.rptdesign op als een nieuw bestand.

  1. Kies Bestand->Opslaan als. Opslaan als geeft de huidige naam en de locatie aan van het bestand.
  2. Bij Bestandsnaam wijzigt u Customers.rptdesign in Customers_grouped.rptdesign, vervolgens kiest u Voltooien. De BIRT-rapportontwerper maakt een kopie van Customers.rptdesign. Het nieuwe bestand verschijnt in de layout-editor.

Taak 3: Voeg het kredietlimietveld toe aan de gegevensset

Als u wilt dat in het rapport kredietlimietgegevens worden afgebeeld, moet u het veld CREDITLIMIT toevoegen aan de gegevensset.

  1. Kies Gegevensverkenner.
  2. Klik op Gegevenssets en dubbelklik vervolgens op Customers. In Gegevensset bewerken wordt de SQL-query afgebeeld voor de gegevensset Customers.
  3. Voer een komma (,) toe na phone.
  4. Op de volgende regel, voegt u de volgende tekst toe:
  5. creditLimit 
    
    De gewijzigde query moet lijken op de query die wordt afgebeeld in Afbeelding 8-2.

    Afbeelding 8-2 Query waaraan het veld creditLimit is toegevoegd
  6. Kies Preview bekijken van resultaten om te controleren of de query rijen met kredietlimietgegevens ophaalt.
  7. Klik op OK om de gegevensset op te slaan.

Taak 4: Kredietlimietgegevens toevoegen aan het rapport

In deze procedure, voert u het kredietlimietveld in de bestaande tabel in.

  1. In de layout-editor, selecteert u de tabel.Bovenin en links van de tabel verschijnen geleidercellen.
  2. Klik met de rechtermuisknop op de geleidercel boven de eerste kolom en kies vervolgens Invoegen->Kolom links, zoals in Afbeelding 8-3.
  3. Afbeelding 8-3 Een kolom links van een bestaande kolom invoegen.
    Er verschijnt een nieuwe kolom.
  4. Klik in de Gegevensverkenner op Gegevenssets en klik vervolgens op Customers. In de gegevensset Customers worden de velden afgebeeld die in de query zijn opgegeven.
  5. Sleep het veld CREDITLIMIT uit de Gegevensverkenner en zet deze neer in de cel van de detailrij naast [CUSTOMERNAME].
  6. De BIRT-rapportontwerper maakt een benoemde kolom die met het gegevenssetveld is verbonden. Deze kolombinding wordt afgebeeld in Gegevensbinding selecteren.
  7. Klik op OK om de standaard-kolombinding te accepteren.
  8. In de layout-editor wordt in de tabel het veld weergegeven dat u hebt toegevoegd. Ook wordt het labelelement weergegeven dat de layout-editor automatisch aan de koptekstrij heeft toegevoegd. Dit label dient als kolomkop en geeft de veldnaam weer als statische tekst. Het rapport moet lijken op het rapport dat is afgebeeld in Afbeelding 8-4.

    Afbeelding 8-4 Resultaat van het toevoegen van het kredietlimietveld in de layout-editor
  9. Bewerk het label CREDITLIMIT zodat het wordt afgebeeld als Kredietlimiet.
  10. Open de preview van het rapport. Het rapport moet lijken op het rapport dat is afgebeeld in Afbeelding 8-5.
  11. Afbeelding 8-5 Rapportpreview beeldt het resultaat af van het toevoegen van een kredietlimiet.
    Sommige klanten hebben een kredietlimiet van 0. Dit zijn nieuwe klanten die nog niet zijn goedgekeurd voor een krediet.

Taak 5: Klantgegevens groeperen op kredietlimiet

Het rapport wordt momenteel alfabetisch gesorteerd op klantnaam. Onthoud dat u in het eerste zelfstudieprogramma hebt opgegeven dat de rijen in de tabel moeten worden gesorteerd op klantnaam. In deze procedure groepeert u de gegevens per kredietlimiet in intervallen van 50.000. Als u gegevens groepeert, sorteert BIRT de rijen eerst in groepen en vervolgens sorteert het de rijen in elke groep, mits u ook een sorteervoorwaarde op tabelniveau hebt opgegeven. Zoals u zult zien als u deze taak voltooid, worden de gegevensrijen in elke kredietlimietgroep gesorteerd op klantnaam.

  1. Kies Layout om terug te gaan naar de layout-editor.
  2. Klik met de rechtermuisknop op de tabel en kies Groep invoegen->Boven. In het veld Nieuwe groep, dat wordt weergegeven in Afbeelding 8-6, worden de groepseigenschappen afgebeeld die u kunt instellen.
  3. Afbeelding 8-6 Nieuwe groep
  4. Volg deze stappen voor het opgeven van een groepering per kredietlimiet in intervallen van 50000:
    1. Bij Naam typt u de volgende tekst als de groepsnaam:
    2. credit_group 
      
    3. Bij Groeperen op selecteert u CREDITLIMIT uit de vervolgkeuzelijst.
    4. Bij Interval selecteert u Interval uit de vervolgkeuzelijst.
    5. Bij Bereik typt u 50000.
    6. Gebruik de standaardwaarden voor de andere opties.
    7. Kies OK.
    De tabel in het rapportontwerp beeldt een groepskoptekstrij en een groepsvoettekstrij af, zoals in Afbeelding 8-7. Ook wordt het gegevenselement weergegeven dat de layout-editor automatisch aan de groepskoptekstrij heeft toegevoegd. Dit gegevenselement fungeert als groepskop en beeldt in het gegenereerde rapport de eerste kredietlimietwaarde van elke groep af.

    Afbeelding 8-7 Groepskoptekstrijen en groepsvoettekstrijen in een rapportontwerp.
  5. Selecteer het gegevenselement [CREDITLIMIT] dat verschijnt in de groepskoptekstrij. Selecteer niet het gegevenselement [CREDITLIMIT] dat verschijnt in de detailrij.
  6. In de eigenschappeneditor kiest u Algemeen, en vervolgens B om de groepskop in vette tekst op te maken.
  7. Open de preview van het rapport. Blader verder in het rapport om alle gegevens te bekijken. Zoals u inAfbeelding 8-8 kunt zien, worden gegevens in het rapport ingedeeld in vier kredietlimietgroepen. Aan het begin van elke groep ziet u de volgende nummers in vette tekst: 0, 61100, 113000, 227600. Deze nummers komen overeen met de eerste kredietlimietwaarde van elke groep. Klanten worden in elke groep op alfabetische volgorde gesorteerd.
  8. Afbeelding 8-8 Rapportpreview beeldt een van de vier kredietlimietgroepen af.

Taak 6: Kredietlimietbereiken afbeelden in de groepskoptekst

In plaats van het afbeelden van de eerste waarde van elke groep in de groepskoptekst kan er eenvoudiger in het rapport worden genavigeerd als het rapport het kredietlimietbereik voor elke groep als volgt weergeeft:

0 - 49999 
50000 - 99999 
100000 - 149999 

In deze procedure wordt aangetoond hoe u een JavaScript-expressie moet schrijven om deze kredietlimietbereiken af te beelden. In de procedure wordt ook aangegeven hoe u een kolombinding moet maken waaraan de JavaScript-expressie moet worden gekoppeld.

  1. Kies Layout om terug te gaan naar de layout-editor.
  2. Selecteer de tabel en kies Binding in de eigenschappeneditor.
  3. Maak een nieuwe kolombinding:
    1. Kies Toevoegen.
    2. Bij Expressie opbouwen typt u de volgende expressie:
    3. for(i=50000; i<300000; i+=50000){ 
      if( row["CREDITLIMIT"] < i ){ 
        rangeStart = i-50000; 
        rangeEnd = i-1; 
        break; 
      } 
      } 
      displayString=rangeStart + " - " + rangeEnd; 
      
    4. Kies OK. De nieuwe kolombinding verschijnt op de bindingpagina van de eigenschappeneditor waarbij de kolomnaam is geaccentueerd.
    5. Vervang de naam Nieuwe binding door de volgende naam:
    6. CREDIT_GROUP_HEADER 
      
  4. Werk het gegevenselement CREDITLIMIT in de groepskoptekst bij voor het gebruik van de nieuwe kolombinding door te dubbelklikken op het gegevenselement en CREDIT_GROUP_HEADER te selecteren en vervolgens op OK te klikken.
  5. Open de preview van het rapport. De groepskopteksten geven de kredietlimietbereiken weer.Afbeelding 8-9 toont de groepskoptekst 50000 - 99999.
  6. Afbeelding 8-9 Rapportpreview beeldt de kredietlimietbereiken af

Taak 7: Aggregatie-informatie afbeelden

Een van de voordelen van het groeperen van gegevens is dat u overzichtsgegevens of aggregatie-informatie kunt toevoegen aan het begin of einde van elke groep. In deze procedure voert u de volgende taken uit:

  1. Kies Layout om terug te gaan naar de layout-editor.
  2. Het aantal klanten in elke groep afbeelden:
    1. Sleep een gegevenselement van het palet en zet dit element neer in de eerste cel in de groepsvoettekstrij. Elementen die zich in de groepsvoettekst bevinden verschijnen aan het eind van elke groep.
    2. Op de pagina Gegevensbinding selecteren maakt u een nieuwe kolombinding:
      1. Op een nieuwe rij typt u in Naam de volgende tekst.
      2. GROUP_CUSTOMER_COUNT 
        
      3. Gebruik het standaard-gegevenstype Any.
      4. Bij Expressie typt u de volgende aggregatie-expressie:
      5. "Customers: " + Total.count() 
        
        De functie Total.count( ) berekent het aantal rijen.
      6. Gebruik de standaardwaarde voor Aggregeren op, credit_group. Deze waarde geeft aan dat de functie Total.count( ) het aantal rijen in elke kredietlimietgroep berekent.
      7. Selecteer de kolombinding die u zojuist hebt gemaakt en kies OK. Het gegevenselement gebruikt de geselecteerde kolombinding.
    3. Open de preview van het rapport. Het rapport beeldt het aantal klanten af aan het eind van elke groep, zoals in Afbeelding 8-10.
    4. Afbeelding 8-10 Rapportpreview beeldt een telling voor elke groep af.
  3. Kies Layout om terug te gaan naar de layout-editor.
  4. Het totaalaantal klanten afbeelden:
    1. Selecteer de tabel.
    2. Bovenin en links van de tabel verschijnen geleidercellen.
    3. Klik met de rechtermuisknop op de geleidercel links van de eerste rij, Tabel - Koptekst en kies vervolgens Invoegen->Rij->Boven.
    4. Er verschijnt een nieuwe tabelkoptekstrij boven de rij die de kolomkoppen afbeeldt. Deze verschijnt in kleur, omdat het de eigenschappen heeft overgenomen van de rij die erop volgt.
    5. Selecteer de nieuwe rij en wijzig in de eigenschappeneditor de achtergrondkleur in wit.
    6. Sleep een gegevenselement van het palet en zet dit element neer in de eerste cel in de nieuwe tabelkoptekstrij. Elementen die zich in de tabelkoptekst bevinden verschijnen aan het begin van de sectie.
    7. Op de pagina Gegevensbinding selecteren maakt u een nieuwe kolombinding:
      1. Op een nieuwe rij typt u in Naam de volgende tekst.
      2. TOTAL_CUSTOMER_COUNT 
        
      3. Gebruik het standaard-gegevenstype Any.
      4. Bij Expressie typt u de volgende aggregatie-expressie:
      5. "Number of customers: " + Total.count() 
        
      6. Gebruik de standaardwaarde voor Aggregeren op, ALL. Deze waarde geeft aan dat de functie Total.count( ) het aantal rijen in de hele tabel berekent.
      7. Selecteer de kolombinding die u zojuist hebt gemaakt en kies OK. Het gegevenselement gebruikt de geselecteerde kolombinding.
    Het rapportontwerp moet lijken op het ontwerp dat is afgebeeld in Afbeelding 8-11.

    Afbeelding 8-11 Rapportontwerp beeldt een totaalaantal af voor klanten
  5. Open de preview van het rapport. Het rapport beeldt het aantal klanten af aan het begin van de tabel, zoals in Afbeelding 8-12.
  6. Afbeelding 8-12 Rapportpreview beeldt het totaalaantal klanten af

Taak 8: Rapport opmaken

Nu de juiste gegevens in het rapport worden afgebeeld, kunt u uw aandacht richten op het verbeteren van de presentatie van het rapport. U voert taken uit in deze sectie:

Kredietlimietgegevens verwijderen uit de detailrijen

Als u wilt controleren of gegevens in de juiste kredietlimietgroepen verschijnen, is het handig om de kredietlimiet van elke klant af te beelden. Nu de gegevens zijn geverifieerd, kunnen we de afzonderlijke kredietlimietgegevens van het rapport wissen.

  1. Kies Layout om terug te gaan naar de layout-editor.
  2. Wis het gegevenselement [CREDITLIMIT] uit de detailrij.
  3. Open de preview van het rapport. Het rapport moet lijken op het rapport dat is afgebeeld in Afbeelding 8-13.
  4. Afbeelding 8-13 Rapportpreview zonder kredietlimietgegevens voor elke rij.

Groepskoppen afbeelden op de eerste rij van elke groep

De kredietlimietgroepskoppen verschijnen in hun eigen rijen, boven de detailrijen van elke groep. In deze procedure zet u de groepskoppen neer zodat deze verschijnen in de eerste detailrij.

  1. Kies Layout om terug te gaan naar de layout-editor.
  2. Selecteer de cel die de groepskop bevat, zoals in Afbeelding 8-14. Zorg dat u de cel selecteert en niet het gegevenselement in de cel.
  3. Afbeelding 8-14 Groepskopcel geselecteerd.
  4. In de algemene eigenschappen van de eigenschappeneditor moet u Neerzetten instellen op Detail. In het rapportontwerp verschijnt de groepskop nog steeds boven de detailrij omdat het element zich technisch nog steeds in de groepskoptekstrij bevindt.
  5. In de opvullingseigenschappen van de eigenschappeneditor moet u Opvulling--Boven instellen op 12 punten. Met deze instelling worden de groepskoppen beter uitgelijnd met de gegevens van de detailrijen. Onthoud dat in het eerste zelfstudieprogramma een 12-punts opvulling is toegevoegd aan de bovenkant van de detailrijcellen.
  6. Open de preview van het rapport. De groepskoppen verschijnen in de eerste rij van iedere groep, zoals in Afbeelding 8-15.
  7. Afbeelding 8-15 Rapportpreview beeldt neergezette groepskoppen af

Groepen van elkaar scheiden met een lijn

Het trekken van een lijn om elke groep te scheiden maakt het eenvoudiger om de groepen gegevens te bekijken.

  1. Kies Layout om terug te gaan naar de layout-editor.
  2. Selecteer alle cellen in de groepsvoettekstrij. Als u verschillende cellen wilt selecteren, houdt u de Shift-toets ingedrukt terwijl u op andere cellen klikt.
  3. Kies Kader in de eigenschappeneditor en stel vervolgens de kadereigenschappen in.
    • Stel Stijl in op een ononderbroken lijn..
    • Kies de knop die het onderste kader weergeeft.
  4. Voeg meer ruimte toe tussen de lijn en de tekst erboven. Terwijl de cellen nog steeds geselecteerd zijn, kiest u de opvuleigenschappen in de eigenschappeneditor en stelt u Onder in op 6.0 punten.
  5. Open de preview van het rapport. Er verschijnt een lijn aan het eind van elke groep, zoals in Afbeelding 8-16.
  6. Afbeelding 8-16 Rapportpreview beeldt een lijn af tussen groepen

Taak 9: Preview van het rapport bekijken in de BIRT-rapportviewer

Tot nu toe hebt u de rapportuitvoer gecontroleerd met de previewfunctie van de BIRT-rapportontwerper. Dit keer gebruikt u de rapportviewer om te zien hoe het rapport er uit ziet als het in gebruik wordt genomen.De rapportviewer biedt aanvullende functionaliteit, inclusief de mogelijkheid om naar specifieke secties van een rapport te navigeren met behulp van een inhoudsopgave. Als u groepen in een rapport maakt, genereert BIRT automatisch een inhoudsopgave en gebruikt de groepswaarden om de hiėrarchie van het rapport af te beelden.

  1. Kies Bestand->Rapport afbeelden in webviewer.
  2. Het rapport verschijnt in de rapportviewer.

  3. Kies de inhoudsopgaveknop, de linkerknop boven aan het venster, om de inhoudsopgave af te beelden.
  4. De inhoudsopgave geeft de eerste waarde weer in elk van de vier kredietlimietgroepen. Als u een waarde selecteert, beeldt het rapport de bijbehorende sectie van het rapport af. Als u bijvoorbeeld 61100 selecteert, toont het rapport de klantrijen in het kredietlimietbereik 50000 - 99999, zoals in Afbeelding 8-17.

    Afbeelding 8-17 Selecteer een waarde in de inhoudsopgave om de bijbehorende gegevens te bekijken.

Taak 10: Kredietlimietbereiken afbeelden in de inhoudsopgave

In plaats van het afbeelden van de eerste waarde van elke kredietlimietgroep, ziet de inhoudsopgave er logischer uit als deze dezelfde kredietlimietbereikwaarden als het rapport weergeeft. U bereikt dit door dezelfde JavaScript-expressie te gebruiken die u eerder hebt gebruikt om kredietlimietbereiken (0 - 49999, 50000 - 99999, enzovoort) af te beelden in de groepskoptekst.

  1. Terug naar de BIRT-rapportontwerper.
  2. In de layout-editor selecteert u de tabel en vervolgens kiest u het tabblad Groepen in de eigenschappeneditor.
  3. Dubbelklik op credit_group in de lijst met groepen.
  4. In Groep bewerken worden de eigenschappen van de groep afgebeeld. Expressie inhoudsopgave-item wordt standaard ingesteld op het groepeerveld, row["CREDITLIMIT"].
  5. Kies de knop met de drie puntjes (...). en vervang de expressie row["CREDITLIMIT"] in de Expressiebuilder door de volgende expressie. Dit is dezelfde kolombindingexpressie die door het gegevenselement in de groepskoptekst wordt gebruikt. In plaats van de expressie opnieuw te typen, kunt u de expressie uit het gegevenselement kopiėren en hier plakken.
  6. for(i=50000; i<300000; i+=50000){ 
    if( row["CREDITLIMIT"] < i ){ 
      rangeStart = i-50000; 
      rangeEnd = i-1; 
      break; 
    } 
    } 
    displayString=rangeStart + " - " + rangeEnd; 
    
  7. Kies OK.
  8. Bekijk de preview van het rapport in de rapportviewer om de wijziging in de inhoudsopgave te controleren.
  9. De inhoudsopgave beeldt de kredietlimietbereiken af, zoals wordt weergeven in Afbeelding 8-18.

    Afbeelding 8-18 Bijgewerkte inhoudsopgave


(c) Copyright Actuate Corporation 2006

Vorige onderwerpVolgende onderwerp