Forum Discussion

Sri57's avatar
Sri57
Frequent Visitor
2 years ago
Solved

DAX Query

Hello Experts,
I want to calculate average of a measure NR:

 

NR=VAR CurrentDate = MAX('Dim - Calendar'[Fiscal Year ID])


VAR result =
    CALCULATE(
        COUNTROWS('Audit'),
        FILTER(
            ALLEXCEPT('Audit', 'Audit'[NAME]),
            'Audit'[RATING] = "Needs Refinement" &&
            
            'Audit'[FISCAL_YEAR_ID] = CurrentDate
        ),
        CROSSFILTER('Dim - Calendar'[Date], 'Audit'[PLANNED_START], None)
    )

VAR max_notblank =
    CALCULATE(
        MAX('Audit'[FISCAL_YEAR_ID]),
        FILTER(
            ALLSELECTED('Audit'),
            'Audit'[FISCAL_YEAR_ID] < CurrentDate ||
            
            'Audit'[FISCAL_YEAR_ID] <> BLANK()
        ),
        CROSSFILTER('Dim - Calendar'[Date], 'Audit'[PLANNED_START], None)
    )

VAR result1 =
    CALCULATE(
        COUNTROWS('Audit'),
        FILTER(
            ALLEXCEPT('Audit', 'Audit'[NAME]),
            'Audit'[RATING] = "Needs Refinement" &&
            
             'Audit'[FISCAL_YEAR_ID] = max_notblank)
        ),
        CROSSFILTER('Dim - Calendar'[Date], 'Audit'[ENGAGEMENT_PLANNED_START], None)
    )
if(result = blank(),result1,result)

 

  for this I have written averagex(values(Audit[Name]),[NR]),
here it is getting only result value, eeven I have data for previous year for other names.

here for the selected year we only have data for one name, but as per my measureNR, we have 5 records as it is checking previous year too.now I want average of NRlike(6+4+5+10+11)/5=7.2. As averagex is not working I tried to create two different measures like(sumof NR/countof NR),I succeded in creating sum of NR measure but not count of NR

please help

  • Anonymous's avatar
    Anonymous
    2 years ago

    Hi Sri57 ,

     

    According to your description, here are my steps you can follow as a solution.

    (1) We can create a measure. 

    avg = 
    var _count=COUNTROWS(ALLSELECTED('Table'))
    var _nr=SUMX(ALLSELECTED('Table'),[NR])
    RETURN DIVIDE(_nr,_count)

    (2) Then the result is as follows.

    If the above one can't help you get the desired result, please provide some sample data in your tables (exclude sensitive data) with Text format and your expected result with backend logic and special examples. It is better if you can share a simplified pbix file. Thank you.

     

    Best Regards,

    Neeko Tang

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

1 Reply

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Sri57 ,

     

    According to your description, here are my steps you can follow as a solution.

    (1) We can create a measure. 

    avg = 
    var _count=COUNTROWS(ALLSELECTED('Table'))
    var _nr=SUMX(ALLSELECTED('Table'),[NR])
    RETURN DIVIDE(_nr,_count)

    (2) Then the result is as follows.

    If the above one can't help you get the desired result, please provide some sample data in your tables (exclude sensitive data) with Text format and your expected result with backend logic and special examples. It is better if you can share a simplified pbix file. Thank you.

     

    Best Regards,

    Neeko Tang

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