Skip to main content

App Development

Discussion board where members can learn more about Qlik Sense App Development and Usage.

Announcements
NEW webinar Dec. 7th: 2023 Outlook, A Pivotal Year for Data Integration SIGN ME UP!
cancel
Showing results for 
Search instead for 
Did you mean: 
ryan_giebel
Partner - Contributor
Partner - Contributor

Conditional Aggr with multiple dimensions

I am trying to build a rather complex expression in Qlik Sense Enterprise to produce a single measure for 'weight.' There are a few dimensions that determine HOW to group the weights and they are based on related tables (one table more detailed than the other). Your guidance is much appreciated!!

The high-level table (order_prod) is grouped by order_prod_id

The low-level table (order_prod_inv) is grouped by order_prod_inv_id

Sum(distinct IF(

aggr(Sum(IF(Product_Type = 'Unit' and (category_id = 3 or category_id = 4 or category_id = 5), qty_base * medicated_weight_base,

                      IF(Product_Type = 'Unit' and category_id <> 2 and category_id <> 3 and category_id <> 4 and category_id <> 5, '0',

                      IF(Product_Type = 'Prepack',  qty_base * weight_base,''))))),

                      order_prod_inv_id),

aggr(Sum(IF(Product_Type = 'Unit' and category_id = 2, quantity * sold_weight_base),

   IF(Product_Type = 'Bulk',  quantity * sold_weight_base, ''))),

                       order_prod_id,'')

2 Replies
sunny_talwar

It would be rather difficult to decipher this without a sample, would you be able to share a sample to check this out?

ryan_giebel
Partner - Contributor
Partner - Contributor
Author

Thanks for your interest, Sunny! My firm got hacked earlier this year so we are super sensitive about sharing anything right now. Can you tell me whether or not Qlik Sense allows for a conditional aggregate reflecting multiple dimensions in the same expression?

Below is a more rudimentary example of what I'm trying to accomplish with two conditions (containing different measures and grouped at different dimensions) in a single measure

#1 if product_type = 'unit' then sum(aggr(sum(qty_base * medicated_weight_base), order_prod_inv_id),

#2 if product_type = 'prepack' then sum(aggr(sum(qty_base * weight_base), order_prod_id),

#3 null


Hope this provides a more comprehensive picture of what i'm trying to do. Thanks!