Forum Discussion

venstart's avatar
venstart
Frequent Visitor
5 years ago
Solved

Power BI On Screen Filtered Calculation

Hi There people

 

I need need your help. So I created a power bi dashboard, below is the screenshot. I have added a date slicer so that the data will be dynamic.  I am happy with the "Opening Stock", "Sales Log" & "Harvesting Log" values (as this is coming from my data source, being sharepoint online) Below displayed in a Matrix visual

I do need help with the "Harv Minus Sales" and "Theoretical Month End Stock" value as there need to be on the fly on screen calculations without saving to get to Sharepoint, however we can use a PBI Measure.

 

For "Harv Minus Sales" = "Harvesting Log" - "Sales Log"   (example: 1140.21 - 1199.42 = -59.24 )

For "Theoretical Month End Stock" = "Opening Stock" + "Harv Minu Sales"  (example: 11.54 + -59.24  = -47.70)

 

FYI, the table name is: "Parent List"  & Field name "OData_6-6.6m19cm" for "Sales Log" & "Harvesting Log"

the table name is: "Table1" & field name "19cm to 23cm" for "Opening Stock"

 

Please could someone help will show how this is done

  • Hi venstart ,

     

    Please do like this.

    For "Harv Minus Sales":

    M1 = 
    VAR x = SUMX( FILTER( ALLSELECTED('Parent List'), [FormMode] = "Sales Log" ), [OData_6-6.6m19cm] )
    VAR y = SUMX( FILTER( ALLSELECTED('Parent List'), [FormMode] = "Harvesting Log" ), [OData_6-6.6m19cm] )
    RETURN
    y-x
    M2 = 
    VAR x = SUMX( FILTER( ALLSELECTED('Parent List'), [FormMode] = "Sales Log" ), [OData_6-6.6m25cm] )
    VAR y = SUMX( FILTER( ALLSELECTED('Parent List'), [FormMode] = "Harvesting Log" ), [OData_6-6.6m25cm] )
    RETURN
    y-x
    ...

    For "Theoretical Month End Stock" :

    Measure = 
    VAR x = 
    CALCULATE(
        SUM('Parent List'[OData_6-6.6m19cm]),
        FILTER( Table1, [Column] = "Opening Stock")
    )
    RETURN
    x + [M1]
    ...

     

    Best regards,
    Lionel Chen

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

     

3 Replies

  • venstart ,Can you share sample data and sample output in table format? Or a sample pbix after removing sensitive data.

  • v-lionel-msft's avatar
    v-lionel-msft
    Community Support

    Hi venstart ,

     

    Please do like this.

    For "Harv Minus Sales":

    M1 = 
    VAR x = SUMX( FILTER( ALLSELECTED('Parent List'), [FormMode] = "Sales Log" ), [OData_6-6.6m19cm] )
    VAR y = SUMX( FILTER( ALLSELECTED('Parent List'), [FormMode] = "Harvesting Log" ), [OData_6-6.6m19cm] )
    RETURN
    y-x
    M2 = 
    VAR x = SUMX( FILTER( ALLSELECTED('Parent List'), [FormMode] = "Sales Log" ), [OData_6-6.6m25cm] )
    VAR y = SUMX( FILTER( ALLSELECTED('Parent List'), [FormMode] = "Harvesting Log" ), [OData_6-6.6m25cm] )
    RETURN
    y-x
    ...

    For "Theoretical Month End Stock" :

    Measure = 
    VAR x = 
    CALCULATE(
        SUM('Parent List'[OData_6-6.6m19cm]),
        FILTER( Table1, [Column] = "Opening Stock")
    )
    RETURN
    x + [M1]
    ...

     

    Best regards,
    Lionel Chen

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.