I am replacing power BI DAX formula into Beast Mode

Arjuman
Arjuman Member
edited May 2022 in Charting
CALCULATE(DIVIDE([SumOfTimeToClosed],[ResolvedCountForMeter]), 
    FILTER(JiraBugsTable, YEAR(JiraBugsTable[ResolvedDate]) = [CurrentYear]))


Sumoftimetoclosed and ResolvedcountforMeter details below

SumOfTimeToClosed = CALCULATE(SUM(JiraBugsTable[DaysToResolution]),FILTER(JiraBugsTable, YEAR(JiraBugsTable[ResolvedDate]) = [CurrentYear]))
ResolvedCountForMeter = COUNTX( FILTER(JiraBugsTable, JiraBugsTable[isBugResolved] = 1), JiraBugsTable[JiraKey])


In DOMO I have written this but it isn't working

(CASE when YEAR(`ResolvedDate`) = YEAR(CURRENT_DATE()) then SUM((CASE when YEAR(`ResolvedDate`) = YEAR(CURRENT_DATE()) then `DaysToResolution` else 0 end)) / COUNT(DISTINCT (CASE when `isBugResolved`= 1 then `JiraKey`else 0 end)) end) 


Answers

  • Hi @Arjuman ,

    Try this below, you might need to add a condition to adjust when dividing by 0

    SUM(CASE
            WHEN YEAR(`ResolvedDate`) = YEAR(CURRENT_DATE ())
                THEN `DaysToResolution`
            ELSE 0
        END)
        /
    COUNT(DISTINCT
            CASE
                WHEN YEAR(`ResolvedDate`) = YEAR(CURRENT_DATE ())
                AND `isBugResolved` = 1
                    THEN `JiraKey`
                ELSE 0
            END)
    


    Domo Arigato!

    **Say 'Thanks' by clicking the thumbs up in the post that helped you.
    **Please mark the post that solves your problem as 'Accepted Solution'
  • @Arjuman in addition to posting raw code, it might be beneficial to describe what you're trying to accomplish and let the community know what shape your table is in.

    it'll certainly help in cases when your SQL is bugged and you're looking for support trying to make it work.


    (CASE when YEAR(`ResolvedDate`) = YEAR(CURRENT_DATE()) then SUM((CASE when YEAR(`ResolvedDate`) = YEAR(CURRENT_DATE()) then `DaysToResolution` else 0 end)) / COUNT(DISTINCT (CASE when `isBugResolved`= 1 then `JiraKey`else 0 end)) end)

    in any case, you generally can't put an aggregate function, SUM, inside a CASE statement.

    in @Godiepi 's response you'll notice all the aggregates are outside.

    keep in mind 0 =!= NULL.

    if you do a COUNT (DISTINCT case when ... else 0 end ) you'll include 0 as one of your counts.

    ex. count(distinct of [a, b, 0 , 0] would be 3. That may or not be appropriate.

    whereas count(distinct [a,b, null,null] would be 2.

    Jae Wilson
    Check out my 🎥 Domo Training YouTube Channel 👨‍💻

    **Say "Thanks" by clicking the ❤️ in the post that helped you.
    **Please mark the post that solves your problem by clicking on "Accept as Solution"