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

Background color in pivot table

Hi everyone,

I have a pivot table like this one:

pivot.png

This pivot table is an aggregation of a big amount of rows(not in the example file).

The table is working fine when I don't set the expression for the background color. It's fast. Once I put one of these expressions, the ui becomes busy until is able to highlight the cells and it uses a lot of extra memory(without the color expression is using 180 mb and with the color expression, more that 4 GB of RAM!):

if(Category = 'Revenue', RGB(150,220,100), if(Category = 'Sales Forecast', RGB(150,150,150), Null()))

or

if(only(Category) = 'Revenue', RGB(150,220,100), if(only(Category) = 'Sales Forecast', RGB(150,150,150), Null()))

It seems that Qlikview es evaluating the color expression for each value.

Is there a way to highlight the cells depending on the end result and not for each value?

Thanks in advance!

Daniel

19 Replies
sunny_talwar

Not sure what you mean when you say this: Is there a way to highlight the cells depending on the end result and not for each value? Can you give an example?

Best,

Sunny

Not applicable
Author

Hi Daniel Miguel-Perez,

Could you please attach the file. So that it will be easy to give u exact

and correct result/output u want.

Regards,

Deepac Bangarwa

On Apr 9, 2015 11:14 PM, "Daniel Miguel-Perez" <qcwebmaster@qlikview.com>

Not applicable
Author

Hi Sunny,

I mean based on the final result of the table aggregation. For example, in the image I posted I have 3 Categories * 5 Months -> 15 cells. I want to be able to highlight the cells based on these 15 cells and it looks like Qlikview is evaluating the color expression for each row in my fact table, which is a huge amount.

Thanks,

Daniel

sunny_talwar

Are you looking for something like this? PFA

Used the following condition to get this:

if(Column(1) < 1.5, RGB(150,220,100), if(Column(1) < 2, RGB(150,150,150), Null()))

Cell Color.PNG

Best,

Sunny

Not applicable
Author

Hi Sunny,

No, I thinks you are coloring based on the measure value.

I want to color the cell if Category Dimension is a certain value.

if(Category = 'Revenue', RGB(150,220,100), if(Category = 'Sales Forecast', RGB(150,150,150), Null()))



Thanks,

Daniel

sunny_talwar

What would that certain value be? You will need to nest the condition for that certain value within your existing if statement expression. Does that make sense?

Best,

Sunny

sunny_talwar

Something like this?

If(Category = 'Revenue', If(Column(1) < 2, RGB(150,220,100)), If(Category = 'Sales Forecast', If(Column(1) < 2, RGB(150,150,150))))

Not applicable
Author

Hi Sunny,

This expression:

if(Category = 'Revenue', RGB(150,220,100), if(Category = 'Sales Forecast', RGB(150,150,150), Null()))


is creating the format that I want, but the issue is with performance that it seems to be evaluating the expression for each value in the Fact table and not for each value in the pivot table.


Best,

Daniel

sunny_talwar

Got it, Sorry for the confusion. So you are trying to make this expression more efficient so that it takes less system resources?

Best,

Sunny