Hi Folks,
I have below code from dashbaord source
<set token="ps">$click.value$></set>
|eval ps>if($click.value$="ESB - Canonical - Tibco", <set token="ps2">6</set>) OR
if( $click.value$=="Guiding Care - Tibco",<set token="ps2">21</set>) OR
if($click.value$=="ESB - Raw data - Boomi",<set token="ps2">1</set>) OR
if($click.value$=="ESB - Raw data - Tibco",<set token="ps2">2</set>) OR
if( $click.value$=="HealthShare - Tibco",<set token="ps2">41</set>) OR
if( $click.value$=="ESB - Canonical - Boomi",<set token="ps2">5</set>) OR
if($click.value$=="EDWADS",<set token="ps2">10</set>) OR
if($click.value$=="EDWIDS",<set token="ps2">15</set>) OR
if($click.value$=="Guiding Care - Boomi",<set token="ps2">20</set>)OR
if($click.value$=="Guiding Care - PopHealthServices (PHS)",<set token="ps2">25</set>)OR
if($click.value$=="CareAnalyzer (CA)",<set token="ps2">30</set>)OR
if($click.value$=="HealthShare",<set token="ps2">40</set>)
I am tryin to assign a value to ps2 on base of condition, but it appears it is always assigning last value (40) no matter what ? any help suggestion please?
Thanks.
I guess its the issue with the nested IF statement. Can you please try like below ?
<drilldown>
<eval token="ps2">if($click.value$="ESB - Canonical - Tibco", "6" , if($click.value$="Guiding Care - Tibco", "21" , if( $click.value$="Guiding Care - Tibco", "21" , if($click.value$="ESB - Raw data - Boomi", "1" , if($click.value$="ESB - Raw data - Boomi", "1" , if($click.value$="ESB - Raw data - Tibco", "2" , if($click.value$="ESB - Raw data - Tibco", "2" , if( $click.value$="HealthShare - Tibco","41", if( $click.value$="HealthShare - Tibco","41" , if( $click.value$="ESB - Canonical - Boomi","5", if( $click.value$="ESB - Canonical - Boomi","5" , if($click.value$="EDWADS", "10" ,if($click.value$="EDWADS", 10 , if($click.value$="EDWIDS", 15 , if($click.value$="EDWIDS", "15" , if($click.value$="Guiding Care - Boomi", "20", if($click.value$="Guiding Care - Boomi", "20" , if($click.value$="Guiding Care - PopHealthServices (PHS)","25" , if($click.value$="Guiding Care - PopHealthServices (PHS)","25" , if($click.value$="CareAnalyzer (CA)", "30" , if($click.value$="CareAnalyzer (CA)", "30" , if($click.value$="HealthShare", "40" , "false"))))))))))))))))))))))</eval>
<set token="ps1">$click.value$</set>
</drilldown>
Here ps2 token should carry the numeric value. If nested IF statement is little confusing/ troublesome you can also use case(match(......),...)
I guess its the issue with the nested IF statement. Can you please try like below ?
<drilldown>
<eval token="ps2">if($click.value$="ESB - Canonical - Tibco", "6" , if($click.value$="Guiding Care - Tibco", "21" , if( $click.value$="Guiding Care - Tibco", "21" , if($click.value$="ESB - Raw data - Boomi", "1" , if($click.value$="ESB - Raw data - Boomi", "1" , if($click.value$="ESB - Raw data - Tibco", "2" , if($click.value$="ESB - Raw data - Tibco", "2" , if( $click.value$="HealthShare - Tibco","41", if( $click.value$="HealthShare - Tibco","41" , if( $click.value$="ESB - Canonical - Boomi","5", if( $click.value$="ESB - Canonical - Boomi","5" , if($click.value$="EDWADS", "10" ,if($click.value$="EDWADS", 10 , if($click.value$="EDWIDS", 15 , if($click.value$="EDWIDS", "15" , if($click.value$="Guiding Care - Boomi", "20", if($click.value$="Guiding Care - Boomi", "20" , if($click.value$="Guiding Care - PopHealthServices (PHS)","25" , if($click.value$="Guiding Care - PopHealthServices (PHS)","25" , if($click.value$="CareAnalyzer (CA)", "30" , if($click.value$="CareAnalyzer (CA)", "30" , if($click.value$="HealthShare", "40" , "false"))))))))))))))))))))))</eval>
<set token="ps1">$click.value$</set>
</drilldown>
Here ps2 token should carry the numeric value. If nested IF statement is little confusing/ troublesome you can also use case(match(......),...)
Thank you so much for your prompt response.
The logic you have provided works as expected for me.
Have a good day!
Hi Sanjum01
Can you try using a nested IF instead of using a Boolean expression. Something like the below snippet
<drilldown>
<eval token="ps2">if($click.value$="ESB - Canonical - Tibco", "6" , if($click.value$="Guiding Care - Tibco", "21" , "false"))</eval>
</drilldown>
@skrajkumar_splu Thank you for your suggestion.
I tried the suggestion you have provided but it did not work. What else I should try so that my token could get numeric value after i click on bar in a bar chart from previous panel?
<set token="ps">$click.value$></set>
|eval token="ps2">if($click.value$="ESB - Canonical - Tibco", "6" , if($click.value$="Guiding Care - Tibco", "21" , "false")) ,
if( $click.value$="Guiding Care - Tibco", "21" , if($click.value$="ESB - Raw data - Boomi", "1" , "false)),
if($click.value$="ESB - Raw data - Boomi", "1" , if($click.value$="ESB - Raw data - Tibco", "2" , "false")),
if($click.value$="ESB - Raw data - Tibco", "2" , if( $click.value$="HealthShare - Tibco","41", "false")) ,
if( $click.value$="HealthShare - Tibco","41" , if( $click.value$="ESB - Canonical - Boomi","5", "false")) ,
if( $click.value$="ESB - Canonical - Boomi","5" , if($click.value$="EDWADS", "10" , "false")) ,
if($click.value$="EDWADS", 10 , if($click.value$="EDWIDS", 15 ,"false")) ,
if($click.value$="EDWIDS", "15" , if($click.value$="Guiding Care - Boomi", "20" , "false")),
if($click.value$="Guiding Care - Boomi", "20" , if($click.value$="Guiding Care - PopHealthServices (PHS)","25" , "false")),
if($click.value$="Guiding Care - PopHealthServices (PHS)","25" , if($click.value$="CareAnalyzer (CA)", "30" , "false"),
if($click.value$="CareAnalyzer (CA)", "30" , if($click.value$="HealthShare", "40" , "false")),
if($click.value$="HealthShare", "40")
</drilldown>