Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
7 years ago
Solved

Variance Measure Between Different Shifts

Hi there!

 

I have a column of usage and want to calculate the difference as shown in this table of my data:

 

DateUsageCrewDifference
1/1/20181a 
1/7/20182a-1
1/1/20181b 
1/2/20185b-4
1/1/20185c 
1/6/201815c-10
1/9/20188a 
1/10/201810a-2

 

However, I want this as a DAX measure so when I make a table visual it comes out like so:

 

DateUsageCrewDifference
1/7/20182a-1
1/2/20185b-4
1/6/201815c-10
1/10/201810a-2

 

 

Any help is apreciated!

 

  • Hi Anonymous,

     

    Please check out the demo in the attachment. 

    1. Add an index. 

    2. Add a custom column in the Query Editor.

    if [Index] = 1 then 1 else if #"Added Index"{[Index] - 2}[Crew] = [Crew] then [Index] - 1 else [Index]

    3. Create two measures.

    UsageMeasure =
    CALCULATE (
        SUM ( Table1[Usage] ),
        FILTER ( 'Table1', 'Table1'[Date] = MAX ( 'Table1'[Date] ) )
    )
    
    Measure =
    VAR firstValue =
        CALCULATE (
            SUM ( Table1[Usage] ),
            FILTER ( 'Table1', 'Table1'[Date] = MIN ( 'Table1'[Date] ) )
        )
    VAR secondValue =
        CALCULATE (
            SUM ( Table1[Usage] ),
            FILTER ( 'Table1', 'Table1'[Date] = MAX ( 'Table1'[Date] ) )
        )
    RETURN
        firstValue - secondValue
    

    img

    Best Regards,
    Dale

3 Replies

  • affan's avatar
    affan
    Solution Sage

    Hi Anonymous,

     

    If you have the data in the table as showin the 1st table in your post. Then you can get the result without creating a measure.

    Simply add the fields to a table visual and in the "Visual level Filter" apply a filter to the Difference column as 'Is not blank'

     

     

     

     

     

    For further reference you can access the pbix file below.

    https://www.dropbox.com/s/k1rb4w9n0ibf0df/Difference%20nblank.pbix?dl=0

     

     

    Please mark this post as an accepted solution if this helped you.

     

    Regards,

    Affan

    • Anonymous's avatar
      Anonymous
      Not applicable

      Thank you for your reply affan, No, I do not have the data shown in the first table. I am trying to specify that the difference needs to be linked to the second crew value when calculated via measure

      • v-jiascu-msft's avatar
        v-jiascu-msft
        Microsoft Employee

        Hi Anonymous,

         

        Please check out the demo in the attachment. 

        1. Add an index. 

        2. Add a custom column in the Query Editor.

        if [Index] = 1 then 1 else if #"Added Index"{[Index] - 2}[Crew] = [Crew] then [Index] - 1 else [Index]

        3. Create two measures.

        UsageMeasure =
        CALCULATE (
            SUM ( Table1[Usage] ),
            FILTER ( 'Table1', 'Table1'[Date] = MAX ( 'Table1'[Date] ) )
        )
        
        Measure =
        VAR firstValue =
            CALCULATE (
                SUM ( Table1[Usage] ),
                FILTER ( 'Table1', 'Table1'[Date] = MIN ( 'Table1'[Date] ) )
            )
        VAR secondValue =
            CALCULATE (
                SUM ( Table1[Usage] ),
                FILTER ( 'Table1', 'Table1'[Date] = MAX ( 'Table1'[Date] ) )
            )
        RETURN
            firstValue - secondValue
        

        img

        Best Regards,
        Dale