Forum Discussion

Varadha123's avatar
Varadha123
Frequent Visitor
1 year ago
Solved

Dynamic ratio

Hi All, Table: Quarter Category Items Value Previous Ratio Current Ratio Calculation Q3 Furniture Table 100 50% 350% Table/Chair Q3 Furniture Chair 200 67% 4% Chair/Sofa ...
  • Anonymous's avatar
    Anonymous
    1 year ago

    Hi all,thanks for the quick reply, I'll add more.

    Hi Varadha123 ,

    Correct me if I'm misunderstanding.

    Assuming this is your data table

    Use the following DAX expression to create a column

    Column = Left([Calculation],FIND("/",[Calculation]) - 1)
    Column2 = RIGHT([Calculation],LEN([Calculation]) - FIND("/",[Calculation]))

    Use the following DAX expression to create two tables for slicers

    current quarter = VALUES('Table'[Quarter])
    previous quarter = VALUES('Table'[Quarter])

    Use the following DAX expression to create  measures

    Previous Ratio = 
    VAR _quarter = SELECTEDVALUE('previous quarter'[Quarter])
    VAR _numerator = SUMX(FILTER(ALL('Table'),[Quarter] = _quarter && [Items] = SELECTEDVALUE('Table'[Column])),[Value])
    VAR _denominator = SUMX(FILTER(ALL('Table'),[Quarter] = _quarter && [Items] = SELECTEDVALUE('Table'[Column2])),[Value])
    RETURN DIVIDE(_numerator,_denominator)
    Current Ratio = 
    VAR _quarter = SELECTEDVALUE('current quarter'[Quarter])
    VAR _numerator = SUMX(FILTER(ALL('Table'),[Quarter] = _quarter && [Items] = SELECTEDVALUE('Table'[Column])),[Value])
    VAR _denominator = SUMX(FILTER(ALL('Table'),[Quarter] = _quarter && [Items] = SELECTEDVALUE('Table'[Column2])),[Value])
    RETURN DIVIDE(_numerator,_denominator)

    Final output

     

    Best Regards