Inhoudsopgave
Voor gebruikersbeheer in verschillende systemen worden vaak tekstbestanden gebruikt. Deze bestanden worden in CUG rapporten genoemd.
Omdat CUG de benodigde gegevens heeft opgeslagen in een database, kunnen rapporten in principe worden gemaakt met behulp van queries. Deze queries zijn echter niet altijd even gemakkelijk samen te stellen, vanwege de vele string-bewerkingen die nodig zijn en een moeilijk te voorspellen behoefte aan extra statische waarden (home-directory root; postoffice of bv rol in doelsysteem etc). Daarnaast is soms parallel aan een rapport een configuratie-bestandje nodig dat beschrijft hoe het rapport in elkaar zit.
Daarom heeft CUG voorzieningen om dit soort rapporten aan te maken. Er zijn een aantal standaardrapporten die kunnen dienen als basis voor meer specifieke rapporten. CUG kan ook het aanmaken van rapporten reguleren, bv een datum invoegen in de bestandsnaam van een rapport.
Aansluitend op de import (zie Figuur 3.1. CUG import) kan dit schematisch weergegeven worden.
Demo-class SampleApp is een toepassing die laat zien hoe je CUG kunt gebruiken om rapporten aan te maken op de gegevens in de CUG databron. Voor bestandsnamen, selecties en statische waarden maakt SampleApp gebruik van properties-bestanden; met name sampleapp.properties.
Om te zien hoe je CUG rapporten gebruikt, zullen we eerst het create-rapport aanmaken.
Open het bestand run/sampleapp.properties
Verwijder het '#' voor de sleutel 'file.ngwImport'
Hierdoor verzoek je als het ware een import-bestand aan te maken. Als je het '#' weer voor de regel zet, weet SampleApp dat je geen create-rapport nodig hebt. ('#' betekent: "negeer de rest van de regel" in een java properties-bestand).
Voer SampleApp.bat uit om de rapporten aan te maken.
Bekijk het resultaat in de map out.
In het bestand out/import.data zul je dan zien dat alleen voor users in 'person' rapporten zijn aangemaakt. Dit is ingesteld dmv de 'ptree.code' in sampleapp.properties. De bijbehorende waarde wordt door SampleApp gebruikt om een ptree (afdeling/groep; zie boven) te selecteren.
Rapporten worden vaak per ptree aangemaakt. Meestal zal hiervoor een root ptree worden gekozen ('person' of 'customers' in de demo).