Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
1 year ago
Solved

DAX Formula

CurrentMonthAverageYield =
VAR CurrentDate = MAX('calender yield'[Date])
RETURN
CALCULATE(
    AVERAGE('Production orders'[Qty in kg]),
    FILTER(
        'calender yield',
        'calender yield'[Date] >= STARTOFMONTH(TODAY()) &&
        'calender yield'[Date] <= ENDOFMONTH(TODAY())
    )
)
When I try to create this formula to show the current month average yield I get red lines under "TODAY" and an error message: "Parameter is not the correct type".
  • Hi, Anonymous 

    You can't Pass scalar value to STARTOFMONTH function you need to provide column name
    Try below measure

    CurrentMonthAverageYield =
    VAR CurrentDate = MAX('calender yield'[Date])
    var Monthstart = eomonth(today(),-1)+1
    var MonthEnd = eomonth(today(),0)
    RETURN
    CALCULATE(
        AVERAGE('Production orders'[Qty in kg]),
        FILTER(
            'calender yield',
            'calender yield'[Date] >= Monthstart  &&
            'calender yield'[Date] <= MonthEnd 
        )
    )

     

2 Replies

  • Dangar332's avatar
    Dangar332
    Resident Rockstar

    Hi, Anonymous 

    You can't Pass scalar value to STARTOFMONTH function you need to provide column name
    Try below measure

    CurrentMonthAverageYield =
    VAR CurrentDate = MAX('calender yield'[Date])
    var Monthstart = eomonth(today(),-1)+1
    var MonthEnd = eomonth(today(),0)
    RETURN
    CALCULATE(
        AVERAGE('Production orders'[Qty in kg]),
        FILTER(
            'calender yield',
            'calender yield'[Date] >= Monthstart  &&
            'calender yield'[Date] <= MonthEnd 
        )
    )

     

    • Anonymous's avatar
      Anonymous
      Not applicable

      Thank you so much!!!