Lezerswaardige artikelen over SAP Crystal Reports, PHP, .NET, Linux en OpenSource.
Inleiding
Dit is de eerste in een serie blogs over het gebruik van webElements in Crystal Reports 2008. Deze blog bespreekt wat webElements zijn, hoe je ze toevoegt aan Crystal Reports 2008 en welke configuratie instellingen je moet veranderen voor Crystal Server 2008 in een Java omgeving. In volgende blogs zullen meerdere voorbeelden van het gebruik van webElements getoond worden.
webElements
webElements is een verzameling custom functies voor Crystal Reports XI, Crystal Reports XI R2 en Crystal Reports 2008. De functies bevatten HTML en JavaScript waarmee web controls op een rapportpagina geplaatst kunnen worden. Je kunt op deze manier gemakkelijk rapporten interactief maken en een workflow tussen rapporten maken. Allemaal zonder kennis van HTML en/of JavaScript. Hieronder zie je een voorbeeld van een rapport met een aantal web controls. De eerste control wordt gebruik om een TopN te baseren op Product, Company, Country, SalesRep of Month. De tweede control wordt gebruikt om een Top 3, Top 5 of Top 10 te maken. De Update button zorgt er voor dat het resultaat direct zichtbaar is op de pagina.
De volgende afbeelding laat het resultaat zien als gekozen is voor Country en 3.
Installatie
Je installeert de custom functies door het voorbeeldrapport webElements_246.rpt te openen. Download dit rapport (en andere documenten) via de onderstaande link.
http://www.sdn.sap.com/irj/boc/webelements?rid=/library/uuid/50da3571-ef6b-2d10-89b3-b8558600c200
Als je het rapport geopend hebt, ga je naar de Formule Workshop. Onder de groep Aangepaste functies voor rapporten open je de groep webElements 2.46 en daarna de groep Admin. Klik rechts op de functie WEPlatform om de functie los te koppelen van gegevensopslagruimte. Controleer of er geen commentaar tekens staan voor de regel
stringvar platform := “XI 3.0 Java”
Als dit wel het geval is, haal de commentaar tekens dan weg en zorg er voor dat alle andere mogelijke platforms zijn uitgecommentarieerd. Nadat je de functie WEPlatform gewijzigd hebt, klik je rechts op de functie WEInstaller en je kiest “Aan gegevensopslagruimte toevoegen”. Geef de aanmeldgegevens voor Crystal Server 2008 op en druk op Ja als de melding verschijnt dat de functie WEInstaller andere aangepaste functies gebruikt.
NB. Raadpleeg de webElements User Guide 246 als je Crystal Server XI of Crystal Server Xir2 gebruikt of als je een .Net omgeving gebruikt.
Configuratie van Crystal Server
Als je een van de toegevoegde functies gebruikt in een formule en je bekijkt het rapport met de knop Vernieuwen, dan zie je in plaats van een web control alleen maar HTML en JavaScript. Om de web control te kunnen bekijken heb je de HTML preview nodig. Crystal Server 2008 moet hiervoor worden geconfigureerd om pass-through HTML mogelijk te maken. Je doet dit in het web.xml configuratie bestand. Hieronder staat de locatie van dit bestand.
C:\Program Fields\Business Objects\Tomcat\webapps\Crystal Reports\WEB-INF\web.xml
In dit bestand voeg je een nieuwe context parameter als laatste context parameter toe.
<context-param>
<param-name>crystal_encode_html_for_single_line_field_objects</param>
<param-value>no</param-value>
</context-param>
Standaardviewer-URL instellen
Pass-through HTML maakt het mogelijk om het resultaat van een webElements functie als web control op een rapport weer te geven. De input van een web control wordt gebruikt om het rapport direct vanaf de pagina te vernieuwen. Hiervoor is het nodig om in Crystal Server de standaardviewer-URL in te stellen. Je doet dit door de Central Management Console te openen en Toepassingen te kiezen op de Startpagina. Vervolgens klik je rechts op CMC en je kiest Verwerkingsinstellingen. Als URL stel je in
http://<servernaam>:8080/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&iDocID=%SI_CUID%
<servernaam> vervang je door de servernaam van de machine met Crystal Server 2008.
De volgende blog zal stap voor stap laten zien hoe je een rapport maakt met webElements en hoe je vervolgens met OpenDocument een URL kan aanmaken waarmee een eindgebruiker direct een rapport kan opvragen.