Forum Discussion

datapal04's avatar
datapal04
Icon for Helper I rankHelper I
3 years ago
Solved

Evaluate for Every Row

Hello, 

 

I have data as per the below table. I also have a matrix visual for the data per the snippet below.

 

I have a measure for conditional formatting the background colours (current code below). Instances where KPI:Favourable Trend is "L" a lower KPI Value vs. Target is positive ("Green"); higher KPI Value vs. Target is negative ("Red"). On the other hand, where KPI:Favourable Trend is "H" a lower KPI Value vs. Target is negative ("Red"); higher KPI Value vs. Target is positive ("Green").

 

The issue I'm having is that the conditional format evaluates the KPI Value vs. Target. The target value can change during the year, in which case, the format color should change appropriately. Right now my measure evaluates for the sum.

 

How can I code my measure so that it evaluates the KPI Value vs. Target for every row (i.e. Month)?

 

IDKPI:TitleYearMonthKPI:Favourable TrendTargetKPI Value
151Station Ambassador Costs per rider2022/23AprL0.690.75
152Station Ambassador Costs per rider2022/23MayL0.690.62
153Station Ambassador Costs per rider2022/23JunL0.690.52
154Station Ambassador Costs per rider2022/23JulL0.690.51
155Station Ambassador Costs per rider2022/23AugL0.690.5
156Station Ambassador Costs per rider2022/23SepL0.690.5
157Station Ambassador Costs per rider2022/23OctL0.690.48
158Station Ambassador Costs per rider2022/23NovL0.690.45
159Station Ambassador Costs per rider2022/23DecL0.690.69
160Station Ambassador Costs per rider2022/23JanL0.560.6
247Station Ambassador Costs per rider2022/23FebL0.550.57
430Station Ambassador Costs per rider2023/24MayL0.380.51

 

Expected output:

Red - Jan, Feb, Apr

Green - May, Jun, Jul, Aug, Sep, Oct, Nov, Dec

 

 

KPI Cond. Formatting Color = 
SWITCH (
    TRUE (),
    CALCULATE (
        SUM ( 'CSD KPIs Data'[KPI Value] ) >= SUM ( 'CSD KPIs Data'[Target] ),
        'CSD KPIs'[Favourable Trend] = "H"
    ), "#73b761",
    CALCULATE (
        SUM ( 'CSD KPIs Data'[KPI Value] ) < SUM ( 'CSD KPIs Data'[Target] ),
        'CSD KPIs'[Favourable Trend] = "H"
    ), "#fd625e",
    CALCULATE (
        SUM ( 'CSD KPIs Data'[KPI Value] ) > SUM ( 'CSD KPIs Data'[Target] ),
        'CSD KPIs'[Favourable Trend] = "L"
    ), "#fd625e",
    CALCULATE (
        SUM ( 'CSD KPIs Data'[KPI Value] ) <= SUM ( 'CSD KPIs Data'[Target] ),
        'CSD KPIs'[Favourable Trend] = "L"
    ), "#73b761"
)

 

 

  • Instead of CALCULATE you can do a simple &&

    KPI Cond. Formatting Color = 
    SWITCH (
        TRUE (),
        SUM ( 'CSD KPIs Data'[KPI Value] ) >= SUM ( 'CSD KPIs Data'[Target] ) 
        && 'CSD KPIs'[Favourable Trend] = "H"
        , "#73b761",
        SUM ( 'CSD KPIs Data'[KPI Value] ) < SUM ( 'CSD KPIs Data'[Target] )
        && 'CSD KPIs'[Favourable Trend] = "H"
        , "#fd625e",
        SUM ( 'CSD KPIs Data'[KPI Value] ) > SUM ( 'CSD KPIs Data'[Target] )
        && 'CSD KPIs'[Favourable Trend] = "L"
        , "#fd625e",
        SUM ( 'CSD KPIs Data'[KPI Value] ) <= SUM ( 'CSD KPIs Data'[Target] )
        && 'CSD KPIs'[Favourable Trend] = "L"
        , "#73b761"
    )

     

1 Reply

  • Instead of CALCULATE you can do a simple &&

    KPI Cond. Formatting Color = 
    SWITCH (
        TRUE (),
        SUM ( 'CSD KPIs Data'[KPI Value] ) >= SUM ( 'CSD KPIs Data'[Target] ) 
        && 'CSD KPIs'[Favourable Trend] = "H"
        , "#73b761",
        SUM ( 'CSD KPIs Data'[KPI Value] ) < SUM ( 'CSD KPIs Data'[Target] )
        && 'CSD KPIs'[Favourable Trend] = "H"
        , "#fd625e",
        SUM ( 'CSD KPIs Data'[KPI Value] ) > SUM ( 'CSD KPIs Data'[Target] )
        && 'CSD KPIs'[Favourable Trend] = "L"
        , "#fd625e",
        SUM ( 'CSD KPIs Data'[KPI Value] ) <= SUM ( 'CSD KPIs Data'[Target] )
        && 'CSD KPIs'[Favourable Trend] = "L"
        , "#73b761"
    )