Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

Using 'SELECTEDVALUE' inside 'CALCULATE'

I am trying to use 'SELECTEDVALUE' inside the 'CALCULATE' function and Power BI is showing an error: "A function 'SELECTEDVALUE' has been used in a True/False expression that is used as a table filter expression". Is there any way to make the following measure work?

 

Measure_01 =
CALCULATE(
SUM(Meta_Comp_Alim[Meta_Alim_Diaria]),
Meta_Comp_Alim[COD_DEP] = SELECTEDVALUE(Tab_Auxilar_COI[Cod_Item]),
FILTER(
ALL(Date_Table),
Date_Table[Date_Column] <= MAX(Date_Table[Date_Column])
)
)
  • Anonymous's avatar
    Anonymous
    4 years ago

    Thanks for your reply amitchandak .

     

    I didn't know that I could use another 'FILTER' inside CALCULATE. Your measure had some unexpected behavior in the chart. I could solve the problem using the following measure:

    Measure_01 =
    CALCULATE(
    SUM(Meta_Comp_Alim[Meta_Alim_Diaria]),
    Meta_Comp_Alim[COD_DEP] = VALUES(Tab_Auxilar_COI[Cod_Item]),
    FILTER(
    ALL(Date_Table),
    Date_Table[Date_Column] <= MAX(Date_Table[Date_Column])
    )
    )

2 Replies

  • Anonymous , seems strange

     

    try like

     

    Measure_01 =
    CALCULATE(
    SUM(Meta_Comp_Alim[Meta_Alim_Diaria]),
    filetr(Meta_Comp_Alim,Meta_Comp_Alim[COD_DEP] = SELECTEDVALUE(Tab_Auxilar_COI[Cod_Item])),
    FILTER(
    ALL(Date_Table),
    Date_Table[Date_Column] <= MAX(Date_Table[Date_Column])
    )
    )

     

     

    If this does not help
    Can you share  a sample pbix after removing sensitive data.

  • Anonymous's avatar
    Anonymous
    Not applicable

    Thanks for your reply amitchandak .

     

    I didn't know that I could use another 'FILTER' inside CALCULATE. Your measure had some unexpected behavior in the chart. I could solve the problem using the following measure:

    Measure_01 =
    CALCULATE(
    SUM(Meta_Comp_Alim[Meta_Alim_Diaria]),
    Meta_Comp_Alim[COD_DEP] = VALUES(Tab_Auxilar_COI[Cod_Item]),
    FILTER(
    ALL(Date_Table),
    Date_Table[Date_Column] <= MAX(Date_Table[Date_Column])
    )
    )