Keuzelijsten met invoervakken gebruiken als filters
In dashboards worden vaak keuzelijsten met invoervakken uit het ene rapport gebruikt om de waarden te beheren die in een of meer andere rapporten worden weergegeven. De geselecteerde waarden in de keuzelijsten met invoervakken worden doorgegeven aan variabelen, die worden gebruikt als rapportparameters. Het rapport wordt in een widget op een dashboard geplaatst. Andere rapporten die dezelfde parameters hebben of naar dezelfde zoeklijsten verwijzen, worden automatisch gekoppeld. Als u bijvoorbeeld een datum uit een keuzelijst met invoervak selecteert, worden alle widgets bijgewerkt die een datumparameter bevatten.
Als u keuzelijsten met invoervakken op deze manier gebruikt, is het belangrijk dat u ervoor zorgt dat de keuzelijsten met invoervakken en de waarden worden gesynchroniseerd. Als gebruikers bijvoorbeeld een datum uit een keuzelijst met invoervak selecteren, mogen ze nooit waarden voor een andere datum te zien krijgen in de gekoppelde rapporten.
Als u er zeker van wilt zijn dat keuzelijsten met invoervakken en de waarden worden gesynchroniseerd, gebruikt u de variabelen die door de keuzelijsten met invoervakken worden doorgegeven als invoer- en uitvoervariabelen.
Het gebruik van keuzelijsten met invoervakken als filters is niet geschikt indien u dynamische rapporten maakt (rapporten die niet afhankelijk zijn van een specifieke gegevensbron). Gebruik in dat geval bijvoorbeeld XML-variabelen.
Voorbeeld
Dit voorbeeld illustreert hoe de synchronisatie tussen keuzelijsten met invoervakken en waarden verloren kan gaan:
Een rapport toont een lijst met datums in een keuzelijst met invoervak. De standaardwaarde voor de datum is Alle jaren.
De keuzelijst met invoervak stuurt uitvoer naar een variabele, maar heeft geen invoervariabele. De variabele wordt gebruikt als rapportparameter.
U plaatst het rapport in een dashboard, samen met andere, gekoppelde rapporten.
U selecteert de waarde 2004 in de keuzelijst met invoervak. Hierdoor wordt 2004 doorgegeven aan de variabele.
Gekoppelde widgets in het dashboard worden automatisch bijgewerkt om waarden met betrekking tot 2004 weer te geven.
U slaat het dashboard op.
De standaardinstelling is dat de waarden van parameters samen met het dashboard worden opgeslagen. Dus de huidige waarde van de parameter wordt opgeslagen: 2004.
U logt uit en daarna laadt u het dashboard opnieuw.
U verwacht dat 2004 geselecteerd is, maar de keuzelijst met invoervak toont weer Alle jaren.
Dit komt doordat de waarde van de variabele/parameter weliswaar is opgeslagen, maar het dashboard deze waarde niet aan de keuzelijst met invoervak kon doorgeven, omdat die geen invoervariabele heeft.
Maar de waarden in de andere widgets zijn ook samen met het dashboard opgeslagen en worden weergegeven wanneer het dashboard wordt geladen. Dus wanneer u het dashboard weer opent, is de keuzelijst met invoervak weer ingesteld op Alle jaren, terwijl de andere widgets nog steeds waarden voor 2004 tonen.
Er zijn twee oplossingen voor dit probleem. De ene oplossing kan worden geïmplementeerd in Application Studio, de andere in het dashboard. In Application Studio is de oplossing dat u dezelfde variabele als uitvoervariabele én als invoervariabele gebruikt.
In een dashboard is de enige oplossing dat u het opslaan van parameters uitschakelt en de keuzelijst met invoervak de 'hoofdwidget' maakt. Wanneer het dashboard opnieuw wordt geladen, stuurt de keuzelijst met invoervak de andere widgets aan. Dit verhindert niet dat de keuzelijst met invoervak weer wordt ingesteld op Alle jaren, maar het zorgt er wel voor dat de waarden in de gekoppelde rapporten eveneens betrekking hebben op Alle jaren.