How to stop calculation for a line item based on time selection

I have a module set up with weeks as the time dimension and covers a two-year timeframe. However, calculations are only needed for the user-selected quarter. To optimize performance, I'm looking for ways to avoid processing the entire two years. Currently, I'm using an If-Else statement, but I doubt it makes a significant difference. Any suggestions?

Answers

  • According to me, still system will calculate for two years. One optimization you can do for IF ELSE statement is reprioritizing the statement as first which has more possibility to occur as compared to other statements like your first condition has to be for not calculating quarters and then else statement has to be for the selected quarter. Hope this makes sense, else I can find community article on same and will share.

  • @CommunityMember125352

  • @Dikshant @TristanS Would splitting the module based on different time ranges improve performance? or its still the same ?

  • If you apply time ranges and have less years in a few modules, it will definitely improve the performance.

  • Does splitting Module A, which covers two years of data, into two separate modules, each containing one year of data, improve the performance? Thats the question, because what I think is number of cells will remain the same so should not improve any performance.

  • If the number of cells are same, and you're just splitting the years, then yes, performance should be the same as per my understanding. How many dimensions are there and what's the cell count and number of line items?

  • 5 lists, Time Dimension( In Weeks) and around 650 line items so cell count comes around some crores.
    Any other way of doing it ?

  • 650 line items 😮

    Disable summary methods if they are not required. See if there are any line items that can be deleted and not required.

  • 😁 So no other way of stopping the calculation, that's what I thought initially. Optimization at granular level is your suggestion. Not all line items are calculated though, but thanks for the suggestions.

  • Yes, I think so. One more thing is to see if you can use subsets rather than full lists.

    But yes, optimization needs to be done at a granular level.

  • @Nishant you may want to consider custom lists that mimics time periods which would cover a maximum of 14 to 15 weeks for 3 months. It might only be problematic if you are currently using previous or next functions in your formulas which can only be used against modules with native Anaplan calendars

  • Yes @TristanS we are using Previous and Next functions. This is also causing issues when I am using IF-Else conditions.

  • @Nishant 260 line item module with 5 dimensions is quite complex. My response may not be directly answering your question but have you considered creating a composite list (a list which is an intersection of the other dimensions, e.g. instead of having customers and products as separate dimensions create one list which is a combo of customer and product)? Also splitting the modules may be good to do here. So besides splitting it by applicable time dimension mentioned earlier in this thread. You can consider these other ones

    1. Split by commonality of dimensions required. E.g. Some line items may only require 3 of the 5 dimensions. So group line items with similar dimensionality in to a separate module. If you can't get rid of it in the current module due to things like it being part of a report then update the dimensions within the same module
    2. Option to move out some of the line items out to a custom list that mimics a 3 month period might still be worth considering

    Good luck! Seems like you have a good technical challenge to deal with

  • @TristanS even I am wondering of those line items in a single report makes sense or not 😅. Splitting the module by line items is what I have also suggested and getting rid of line items that are not in use.
    Option 2 - I might want to try that composite lists and custom lists options.
    Thanks for the suggestions