Forum Discussion

anna-lee's avatar
anna-lee
Icon for Helper I rankHelper I
3 years ago
Solved

Help creating dax measure

Hi,
I am trying to create a measure/column that will calculate:
revenue / ((accountsreceivable - year before accountsreceivable) / 2)
else 0
and still be relative to the vendor code & year. 

Vendor CodeDescriptionConcatYearValue
MA33C4accountsreceivableMA33C4accountsreceivable20211774
MA33C4accountsreceivableMA33C4accountsreceivable20201501
MA33C4accountsreceivableMA33C4accountsreceivable20191103
MA33C4accountsreceivableMA33C4accountsreceivable20184615
MA33C4accountsreceivableMA33C4accountsreceivable20176852
MA33C4accountsreceivableMA33C4accountsreceivable20161827
MA33C4accountspayableMA33C4accountspayable20211094
MA33C4accountspayableMA33C4accountspayable20201697
MA33C4accountspayableMA33C4accountspayable20192144
MA33C4accountspayableMA33C4accountspayable20183498
MA33C4accountspayableMA33C4accountspayable20173624
MA33C4accountspayableMA33C4accountspayable20161109
MA33C4revenueMA33C4revenue20211480
MA33C4revenueMA33C4revenue20201502
MA33C4revenueMA33C4revenue20191002
MA33C4revenueMA33C4revenue20187624
MA33C4revenueMA33C4revenue20175489
MA33C4revenueMA33C4revenue20164850
MA33C4costofgoodsMA33C4costofgoods20219846
MA33C4costofgoodsMA33C4costofgoods20209204
MA33C4costofgoodsMA33C4costofgoods20196235
MA33C4costofgoodsMA33C4costofgoods20184477
MA33C4costofgoodsMA33C4costofgoods20174052
MA33C4costofgoodsMA33C4costofgoods20162218
RQ020GaccountsreceivableRQ020Gaccountsreceivable20210
RQ020GaccountsreceivableRQ020Gaccountsreceivable20201009
RQ020GaccountsreceivableRQ020Gaccountsreceivable20191903
RQ020GaccountsreceivableRQ020Gaccountsreceivable20181566
RQ020GaccountsreceivableRQ020Gaccountsreceivable20171083
RQ020GaccountsreceivableRQ020Gaccountsreceivable20160
RQ020GaccountspayableRQ020Gaccountspayable20210
RQ020GaccountspayableRQ020Gaccountspayable20204307
RQ020GaccountspayableRQ020Gaccountspayable20192743
RQ020GaccountspayableRQ020Gaccountspayable20182272
RQ020GaccountspayableRQ020Gaccountspayable20172397
RQ020GaccountspayableRQ020Gaccountspayable20160
RQ020GrevenueRQ020Grevenue20210
RQ020GrevenueRQ020Grevenue20203582
RQ020GrevenueRQ020Grevenue20194239
RQ020GrevenueRQ020Grevenue20184000
RQ020GrevenueRQ020Grevenue20175325
RQ020GrevenueRQ020Grevenue20160
RQ020GcostofgoodsRQ020Gcostofgoods20210
RQ020GcostofgoodsRQ020Gcostofgoods20202904
RQ020GcostofgoodsRQ020Gcostofgoods20193712
RQ020GcostofgoodsRQ020Gcostofgoods20183708
RQ020GcostofgoodsRQ020Gcostofgoods20175086
RQ020GcostofgoodsRQ020Gcostofgoods20160
  • Hi anna-lee 

     

    Please create a measure:

    Measure = 
      VAR __Year = MAX('Table'[Year])
      VAR __Revenue = SUMX(FILTER('Table',[Description] = "revenue" && 'Table'[Vendor Code] = SELECTEDVALUE('Table'[Vendor Code])),[Value])
      VAR __AR = SUMX(FILTER('Table',[Description] = "accountsreceivable" && 'Table'[Vendor Code] = SELECTEDVALUE('Table'[Vendor Code])),[Value])
      VAR __ARPY = SUMX(FILTER(ALL('Table'),[Description] = "accountsreceivable" && [Year] = __Year - 1 && 'Table'[Vendor Code] = SELECTEDVALUE('Table'[Vendor Code])),[Value])
      VAR __Result = DIVIDE(__Revenue, (__AR - __ARPY) / 2)
    RETURN
    __Result

     

    The result in matrix is the same as the result in excel:

     

    Best regards,

    Yadong Fang

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

12 Replies

  • Greg_Deckler's avatar
    Greg_Deckler
    Icon for Community Champion rankCommunity Champion

    anna-lee Maybe:

    Measure =
      VAR __Year = MAX('Table'[Year])
      VAR __Revenue = SUMX(FILTER('Table',[Description] = "revenue"),[Value])
      VAR __AR = SUMX(FILTER('Table',[Description] = "accountsreceivable"),[Value])
      VAR __ARPY = SUMX(FILTER('Table',[Description] = "accountsreceivable" && [Year] = __Year - 1),[Value])
      VAR __Result = DIVIDE(__Revenue, (__AR - __ARPY) / 2)
    RETURN
      __Result
    • anna-lee's avatar
      anna-lee
      Icon for Helper I rankHelper I

      Greg_Deckler Not returning any results. Did I accidentally miss something?

      Measure =
        VAR __Year = MAX('Table'[Year])
        VAR __Revenue = SUMX(FILTER('Table','Table'[Description] = "revenue"),[Value])
        VAR __AR = SUMX(FILTER('Table','Table'[Description] = "accountsreceivable"),[Value])
        VAR __ARPY = SUMX(FILTER('Table','Table'[Description] = "accountsreceivable" && 'Table'[Year] = __Year - 1),[Value])
        VAR __Result = DIVIDE(__Revenue, (__AR - __ARPY) / 2)
      RETURN
        __Result

       

      • anna-lee's avatar
        anna-lee
        Icon for Helper I rankHelper I

        Greg_Deckler  Sorry, I missed updating the value portion, but now there's error in the syntax.

         

        Measure =
          VAR __Year = MAX('Table'[Year])
          VAR __Revenue = SUMX(FILTER('Table','Table'[Description] = "revenue"),'Table'[Value])
          VAR __AR = SUMX(FILTER('Table','Table'[Description] = "accountsreceivable"),'Table'[Value])
          VAR __ARPY = SUMX(FILTER('Table','Table'[Description] = "accountsreceivable" && 'Table'[Year]= __Year - 1,'Table'[Value])
          VAR __Result = DIVIDE(__Revenue, (__AR - __ARPY) / 2)
        RETURN
          __Result
  • v-yadongf-msft's avatar
    v-yadongf-msft
    Icon for Community Support rankCommunity Support

    Hi anna-lee 

     

    Please create a measure:

    Measure = 
      VAR __Year = MAX('Table'[Year])
      VAR __Revenue = SUMX(FILTER('Table',[Description] = "revenue" && 'Table'[Vendor Code] = SELECTEDVALUE('Table'[Vendor Code])),[Value])
      VAR __AR = SUMX(FILTER('Table',[Description] = "accountsreceivable" && 'Table'[Vendor Code] = SELECTEDVALUE('Table'[Vendor Code])),[Value])
      VAR __ARPY = SUMX(FILTER(ALL('Table'),[Description] = "accountsreceivable" && [Year] = __Year - 1 && 'Table'[Vendor Code] = SELECTEDVALUE('Table'[Vendor Code])),[Value])
      VAR __Result = DIVIDE(__Revenue, (__AR - __ARPY) / 2)
    RETURN
    __Result

     

    The result in matrix is the same as the result in excel:

     

    Best regards,

    Yadong Fang

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