Bruke kombinasjonsbokser som filter

Et vanlig bruksområde i instrumentbord er å bruke kombinasjonsbokser i én rapport for å styre verdiene som vises i én eller flere andre rapporter. Verdien som velges i kombinasjonsboksene sendes til variabler, som brukes som rapportparametere. Rapporten plasseres i et widget i et instrumentbord. Andre rapporter som har de samme parameterne eller referer til samme oppslag, kobles automatisk sammen. Å velge en dato, for eksempel fra en kombinasjonsboks, vil oppdatere alle widgeter som inneholder en datoparameter.

Hvis du bruker kombinasjonsbokser på denne måten er det viktig å forsikre deg om at kombinasjonsboksene og verdiene er synkroniserte. Brukere skal for eksempel ikke være i stand til å velge en dato fra en kombinasjonsboks men se verdier for en annen dato i de tilknyttede rapportene.

For å sikre at kombinasjonsbokser og verdier er synkronisert kan du bruke variablene som sendes fra kombinasjonsboksen som både inndata- og utdatavariabler.

Det egner seg ikke å bruke kombinasjonsbokser som filter hvis du oppretter dynamiske rapporter - rapporter som ikke er avhengige av en spesifikk datakilde. Du bør i stedet vurdere å bruke XML-variabler.

Eksempel

Dette eksemplet illustrerer hvordan kombinasjonsbokser og verdier kan bli usynkroniserte:

En rapport viser en kombinasjonsboks som inneholder en liste med datoer. Som standard er datoen Alle år.

Kombinasjonsboksen sender utdata til en variabel, men har ingen inndatavariabel. Variabelen brukes som en rapportparameter.

Du plasserer rapporten i et instrumentbord med andre rapporter som er koblet sammen.

Du velger 2004 fra kombinasjonsboksen. Dette sender 2004 til variabelen.

Sammenkoblede widgeter i instrumentbordet oppdaterer automatisk for å vise verdier med tanke på 2004.

Du lagrer instrumentbordet.

Som standard lagres verdiene til parametere i instrumentbordet. Med andre ord, den gjeldende verdien til parameterne (2004) lagres.

Du logger av og laster inn instrumentbordet på nytt.

Du forventer å se 2004 valgt - men kombinasjonsboksen har gått tilbake til Alle år.

Dette skyldes at, selv om verdien til variabelen/parameteren ble lagret, kunne ikke instrumentbordet sende det til kombinasjonsboksen - fordi det ikke fins en inndatavariabel.

Men verdiene i de andre widgetene blir også lagret i instrumentbordet og vises når instrumentbordet lastes inn. Med andre ord, når du åpner instrumentbordet på nytt går kombinasjonsboksen tilbake til Alle år, men de andre widgetene viser fortsatt verdier for 2004.

Det fins to løsninger for dette problemet. En kan implementeres i Application Studio, den andre i instrumentbordet. I Application Studio er løsningen å bruke den samme variabelen som både utdata- og inndatavariabelen.

I et instrumentbord er det eneste alternativet å slå av parameterlagring og gjøre kombinasjonsboksen til 'ledende widget'. Når instrumentbordet lastes inn på nytt, driver kombinasjonsboksen de andre widgetene. Dette hindrer ikke kombinasjonsboksen fra å gå tilbake til Alle år, men det sørger for at verdiene i de tilkoblede rapportene også vises i forhold til Alle år.