Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
I have a Pivot Table Chart with four different expressions.
I want to change this chart in a way that it only shows one expression and I can choose the desired calculation (expression) with a button. Therefore I put the expressions in four variables.
Set DefLOGC= Count( { $ <LOGC]={‘J’}, [TACTISCH_BEGIN]=P(Date)> } Distinct ID_ODK );
Set DefOV= Count( { $ <LOGC]={‘N’}, [TACTISCH_BEGIN]=P(Date)> } Distinct ID_ODK );
Set DefTOTAAL= Count( { $ <LOGC]={‘*’}, [TACTISCH_BEGIN]=P(Date)> } Distinct ID_ODK );
Set DefVA= Count( { $ <[VA]={‘J’}> *
<[PARKET_CODE]={94}, [VA_BEGIN]=P(Date)> +
<[PARKET_CODE]={94}, [VA_EIND]=P(Date)> +
<[PARKET_CODE]={40,41,42,43,44,45,46,47,48,49,93},
[VA_BEGIN]={‘<=$(=YearEnd(MakeDate(Max(Year))))’},
[VA_EIND]={‘>=$(=MakeDate(Min(Year)))’}> }
Distinct ID_ODK );
The button stores the name of the definition (DefLOGC, DefOV, DefTOTAAL or DefVA) in a variable vDef. In the chart I use the expression $(=$(vDef)). This works for the variables (expressions) DefLOGC, DefOV and DefTOTAAL, but not for DefVA.
I suppose it has to do with the use of $-sign expansions in the expression, if stored as a variable. It makes no difference if I put double quotes (“”) around the expressions. I have read discussions and blogs on Qlik Community and elsewhere, but can not find a working solution for this problem. I am running out of ideas. Anyone else?
I am using QlikView Version 11.20 SR10 (64-bit)
Thank you very much for your compact but clear explanation. I have got all three suggestions working in short time. Quite easy when you know how to do it.
If your question is now answered, please flag the Correct Answer and possible Helpful answers.
If not, please let us know what part of this topic you still like help with .
If you mean that the evaluation cannot be done properly, then I think you are right. I get an answer, but not the right number. Probably a variable was not refreshed, so it looked like working good. The variable works fine if I change the expression in the way you proposed earlier.
Ok, thanks for the feedback.
I was just wondering how this should have worked.