How to build an efficient dataflow to transform YTD values in Monthly values ?

Hi Board experts,

 

Everything is in the title, we are working on a computation engine that works both with monthly and Year-to-date values.

In a dataflow we currently do the operation to convert a monthly cube in a YTD value cube, but what would be the most efficient way to do the reverse ? How would you set it up to obtain an HBMP algorithm ?

Thanks for your help,

Etienne

Tagged:

Answers

  • Unknown
    Unknown Active Partner

    Hi Etienne CAUSSE,

      Maybe I’m missing something, but would a dataflow like one of these meet your expectations?

     

    a. Value, with Cumulative Value function applied and cycle of 1000

    b. Value, with Cumulative Value function applies and cycle of 1000 and offset of 1

    c. Algorithm c=a-b

     

      Since these are already YTD values, using just an offset variance may do the trick too. 

     

    a. Value

    b. Value, offset 1

    c. Algorithm c=a-b

  • Hi Bob Gill ,

    Did not have time to test yet, but from what I remember of the documentation, this would probably not run as HBMP ?

     

    Also I'm curious, why the cycle of 1000 ?

  • Daniele Di Lorenzo
    edited March 2020

    Hi Etienne, 

     

    the typical way I use is this:

     

    a: CubeYTD

    b: CubeYTD prev Month

    c: Month Flag (= 1 if January)

    d: CubeMonth = if(c=1,a,a-b)

     

    But this don't run in HBMP mode.

    Its efficiency can be increased narrowing the selection as much as possible.

     

    This is a case: selection is narrowed to closed months of current year (dynamic, through a cube by month). 

    I add some details about structure and entity items nr, that impact on df execution time.

    Even if it's a cellbased, it's immediate.

    image

     

     

    Anyway, in this period I'm optimizing my processes moving to HBMP data flows with great results and, thanks to your hint, I'm interested to find out a way to do this calculation aswell.

     

    I would have some more details about:

    cube structure: nr of dimensions, sparse or dense, items number

    selection range of the process: e.g. last month only ?

  • Unknown
    Unknown Active Partner

    If you use cycle of some large enough number to get to the beginning of time in your linear time dimension, it gives you a life-to-date sum, rather than just one YTD. This overcomes the error when calculating activity from YTD in the first period of the year. It probably seems like an error to recalculate a life to date number of a YTD cube because the life-to-date sum is irrelevant. It’s only useful for calculating the variance to the same thing in the prior period. The algebra will give you the right activity in any period. 

  • Thanks Antonio Speca I'll have a look at your example and run some tests.

  • Clear Bob Gill, I'll remember the trick