Forum Discussion

sujitjena's avatar
sujitjena
Resolver I
6 years ago
Solved

How to create custom YTD function

Hi Everyone,

I tried to create time intelligent function - TOTALYTD but it doesnt work for Fiscal year sorting based on my data set. So i want to create a custom YTD function that can add the values of the months cumulatively based on custom sorting (in my case Sep to Aug). Is this possible?

14 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi sujitjena ,

    Can you please share some sample data for test? It is hard to coding formula without any same data.

    How to Get Your Question Answered Quickly 

    BTW, you can create a sorting table to achieve custom sorting, but it not works for time intelligence functions.

    Custom Sorting in Power BI  
    Please use date function to manually filter on table records for rolling calculations. 

    Time Intelligence "The Hard Way" (TITHW)  

    Regards,

    Xiaoxin Sheng

    • sujitjena's avatar
      sujitjena
      Resolver I

      Hi amitchandak : Its related to the same data in my earlier post and thanks for your help on that. Since my data set is not as per the actual year (2017 Sep is actually 2016 Sep till 2017 Dec is actually Dec 2016). So the time intelligence doesnt produce the right results even though it works great. So, i was wondering if i can create my own custom YTD function.

      • amitchandak's avatar
        amitchandak
        Super User

        Try this

         

        Cumm YTD = CALCULATE(sum('GP Deployed'[Total]),DATESBETWEEN(Dates[Date],STARTOFYEAR(Dates[Date],"8/31"),ENDOFMONTH(Dates[Date])))

         

         

        I think all other calc is also correct

        But remember the sort put sep before Jan, in the case calendar year. So in Cal year 2017. We are seeing sep to dec of another year. Say 2018. And As data start from Jan it shows Jan 2017 to Aug 2017  as one year. 

         

        In case of 2018, the cal does not reset on Jan 2018, because it gets data from dec

         

  • You must input the 3rd parameter in TOTALYTD function as the Year-End-Date. For example, if your fiscal year start 01/07/2019 (dd/mm/yyyy) the TOTALYTD will like this TOTALYTD( [Total Sales], 'Date'[Date], "06-30" ).

     

    Hope this help.

    • sujitjena's avatar
      sujitjena
      Resolver I

      Hi chawalit : Yes, the 3rd parameter works. However, my problem is in the data set and not the TOTALYTD function. The actual data set is little wiered. since my Financial year starts from Sep, the date is tagged from Sep 16 to Aug 17 as 2017. Hence, the need to create a custom YTD function. 

      • chawalit's avatar
        chawalit
        Helper I

        Hi sujitjena  if you mean your fiscal year 2017 start form 
        Sep 16, Oct 16,  Nov 16, Dec 16, Jan 17, Feb 17, Mar 17, Apr17, May 17, Jun17, Jul17, Aug 17

        So, like our fiscal year start from Oct 16 - Sep 17 as fiscal year 2017. My dax for YTD as below:

        SalesYTD_FC = TOTALYTD( [Total Sales], 'Date'[Date], "09-30" )