Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Getting "Allocated memory exceeded" with Dimension Limits with 2 chained expressions

I have a simple table:

table:

load * inline

[

ID, Value

1,2

2,3

3,4

4,5

1,7

2,8

];

After that I create a Straight Table chart with: Dims: ID; Expr: flg:

if(VL>1,1,0)

VL:

Count(Value)

Everything is OK (table shows exactly what I expect), but as soon as I apply Dimension Limits(Restrict which...- Show only values that are:Greater than or equal to - 1 - exact amount) the app throws "Allocated memory exceeded" in the chart. Actually, I can choose any variant of dimension limit - it will lead to the same result. Qlik 11.2 SR5. What am I doing wrong? Thanks!

Test app

16 Replies
Not applicable
Author

Hi Alexander,

tested in 11.20 SR3. Same: memory exceeded.

But why are you limiting the first row indirectly with the second row? Obviously QV doesn't like that 😉

What about using a Variable=Count(Value) instead? Usable in ervery expression.

Otherwise you should open a support-case.

Hth
Roland

Not applicable
Author

May I know the objective of your column "flg"? It works when I re-order the columns.

Thanks,

Sajeevan

sundarakumar
Specialist II
Specialist II

Hi Alexander,

Yes it is working fine when u promote the second expression, bec that is when the qlikview will know what VL is..

and you will be having only

Capture.PNG

please not it will be restricting the dimension with the value of VL, if you restrict it as value greater than 1 then it will restrict accoriding to VL value 1,1,2,2 not based on the ID value 1,2,3,4.

-Sundar

Not applicable
Author

I'm a newbie to qlik, so, please, tell me, how should I use a variable? If I add it to my chart it shows a total count of value, not "GROUP BY ID", so it can't be a criteria.

Not applicable
Author

This file is a simplified model. I made it to find out the source of malloc problem. The real task is more complicated and instead of VL was something like that

Count({$<[StartDate]={"<=$(TargetDate)"},[EndDate]={">=$(TargetDate)"},[Type]={1}>}CID)

And I needed to display only lines that have the value between, say, 3 and 6. That was the task of flg to mark them and then kill by dim limits.

If you reorder the columns it will change the basis of dims limits. It will rely on VL when calculating the condition.

IAMDV
Luminary Alumni
Luminary Alumni

Hi,

The reason this won’t because you’re referring to the label name first in the IF Statement (flg) and then you are creating the VL field with count. This order won’t work with Dimension Limits; so change the order of the expressions and everything works (see the attached example).

I hope this helps!

Cheers,

DV

Not applicable
Author

I need the restrictions to be applied based on the namely flg column. And I see now reason, why without the limits Qlik can display flg BEFORE VL, but it can't, when limits are applied...

Not applicable
Author

OK,

In this case I suggest to build a calculated dimension and forget about the easy use of DimensionLimit Tab. This means to put your flag via if() into the definition of the dimension "ID". What about this ?

Not applicable
Author

If you change your expression in "flg" like below it works.

=IF(COUNT(Value)>1,1,0)

The reason for malloc error was due to your evaluation of VL before VL being calculated.

Thanks,

Sajeevan