Fmanin
Fmanin

Reputation: 575

Toggle validation hide(+) when other in open(-) SSRS

I am developing a "Dashboard Report" in SSRS Visual Studio 2010. I Am trying to put 8 charts graphs at the same location. Each chart must open from each textbox I assigned a toggle. Each chart has the visibility as Hidden and display by textbox name.

Now I am trying to make a validation which determine that only one chart must show at the time. Because when I try to see an individual chart always I have to close which was open before.

I have created a parameter to assign an InitialToggleState Expression, but I haven't succeed.

I will appreciated any good suggestion step by step. Thanks

Upvotes: 0

Views: 434

Answers (1)

Jonnus
Jonnus

Reputation: 3038

Have you considered using a Hidden parameter to control which chart is open? By defining one you can use the textboxes to control an identifier for which chart you wish to display.

Method

  1. First define a Hidden Pameter by creating a new parameter and setting the visibility to ‘Hidden’. I have created one called OpenChart

  2. Create your charts (you have probably already done this by the looks of things. Set each charts visibility to be equivalent to

    =iif(Parameters!OpenChart.Value = 1, false, true)
    

    Changing the value ‘1’ to a unique number for each chart

  3. Create your control buttons, possibly using text boxes. Create as many buttons as there are charts to disaply (you’ve probably done this already too). For each button Set the action to be a reloading of this report, using the same existing parameters, but with the OpenCahrt Parameter set to the chart identifier set in 2. Above

    enter image description here

  4. The report now looks like this (for 3 buttons)

    enter image description here

Result

When the report is run and the ‘One’ textbox is clicked the output looks like this

enter image description here

And for 'Two' like this

enter image description here

And so on...

You don’t have to put the charts side by side of course, they can be layered on top of each other. I only laid them out like this for clarity.

Hopefully this will help save you from trying to validate all the charts are closed before the next one is open, because only one can be open at a time.

Please let me know if you need further clarification

Upvotes: 1

Related Questions