Dynamic Segmentation - adding more dimensions

Hello Experts,

I have couple of questions on Dynamic segmentation. I followed Sam’s video and but I am not sure how it will work for one of my use cases.

In the pic below, segmentation works great when I look at the aggregated level (rpt_grp_key_unique).

but If I add detail level data (Description) into it then the context changes but I don’t want the grouping to change (Executive, Base and not qualified) at the rpt_grp_key_unique level. Is there a way to achieve it?

2nd question is: I have to put filter of my measure as not blank to make it work. Is there a way to do this without filter (Catalyst Points By… not blank)?

I have put the pbix file here:

Thanks,
RK

Hi @rit372002,

You are correct that the change in (visual) context is what affects your calc, so just exclude that (Description) to fix it. Something like this will do.

Catalyst Points By Customer Groupings v2 = 
VAR RankingDimension =
    VALUES ( 'Enrolled Growers'[rpt_grp_key_unique] )
RETURN
    CALCULATE (
        [Total Catalyst Points],
        FILTER (
            RankingDimension,
            COUNTROWS (
                FILTER (
                    'Medallion Groups',
                        VAR myVal = CALCULATE( [Total Catalyst Points], REMOVEFILTERS( 'Agrimine Item'[Description] )) RETURN
                        myVal > 'Medallion Groups'[Min]
                        && 
                        myVal <= 'Medallion Groups'[Max]
                )
            ) > 0
        )
    )

.
As for your second question. Yes you can but then you’ll have to blank out values currently in the matrix based on the [Catalyst Points By Customer Groupings v2] measure. Because the default behaviour is that items without data won’t be displayed.

Catalyst Points (calc) = 
IF( NOT( ISBLANK( [Catalyst Points By Customer Groupings v2] )),
    SUM(POS[Catalyst Points] )
)

Sales Amount (calc) = 
IF( NOT( ISBLANK( [Catalyst Points By Customer Groupings v2] )),
    sum(POS[sales])
)

rpt_grp_key_unique (calc) = 
IF( NOT( ISBLANK( [Catalyst Points By Customer Groupings v2] )),
    MAX( 'Enrolled Growers'[rpt_grp_key_unique] )
)

That should do the trick.
I hope this is helpful.

4 Likes

@Melissa you are a gem! Thanks as always :slight_smile: