Formules en een XML-variabele gebruiken om meerdere objecten te beheren
In dit voorbeeld ziet u hoe u de optie Formule kunt gebruiken op het tabblad Beschikbaarheid van objecten. Hier worden tekstvakobjecten gebruikt, maar u kunt in plaats daarvan afbeeldingsobjecten gebruiken.
In dit voorbeeld wordt een ander tekstvak weergegeven, afhankelijk van de vraag of Afrika of Europa is geselecteerd in een keuzelijst met invoervak. Een actie in de keuzelijst met invoervak maakt gebruik van een SETPROPERTY-formule om een XML-variabele in te vullen. In de variabele is de sleutel Zichtbaarheid
, het geselecteerde land een eigenschap en WAAR
de waarde die aan de eigenschap is toegewezen.
Als u wilt voorkomen dat tekstvakken zichtbaar blijven wanneer een andere land dan Europa of Afrika wordt geselecteerd, stelt de formule voor alle landen Zichtbaarheid
in op ONWAAR
.
Een GETPROPERTY-formule op het tabblad Beschikbaarheid van elk tekstvak retourneert de sleutel en eigenschap van de variabele. In één vak haalt de formule de zichtbaarheid voor Europa en, in de andere, de zichtbaarheid voor Afrika op.
Een alternatieve techniek is het verbergen of weergeven van de rijen die de tekstvakken bevatten.
Dit voorbeeld maakt gebruik van dimensies van de Analysis-kubus uit de voorbeeldapplicatie.
- Maak een rapportvariabele aan en noem deze rv_VisibilityXML.
- Voeg een keuzelijst met invoervak in en koppel deze aan de dimensie Regio. Geef de keuzelijst met invoervak de naam Regio.
- Open de eigenschappen van de keuzelijst met invoervak en selecteer Actie uitvoeren als selectie verandert in Algemeen.
-
Maak een actie Parameters instellen met rv_VisibilityXML als de parameter. Geef de volgende formule op als de waarde van de parameter:
=SETPROPERTY(SETPROPERTY(ReportVariables.rv_VisibilityXML.Text, "zichtbaarheid","*" ,"onweer"), "zichtbaarheid",ReportObjects.Region.Alias,"WAAR")
- Voeg twee tekstvakken toe aan het rapport en voeg tekst toe. Bijvoorbeeld belangrijke feiten over Afrika en belangrijke feiten over Europa.
-
Klik met de rechtermuisknop op het tekstvak Afrika en selecteer Tekstobject opmaken. Geef deze formule op in het tabblad Beschikbaarheid:
=GetProperty(ReportVariables.rv_VisibilityXML.Text,"zichtbaarheid","Afrika")
- Geef dezelfde formule op voor het tekstvak Europa, en vervang daarbij 'Afrika' door 'Europa'.