Rolling data snapshots of Weekly and Monthly forecast for different Versions

We have a scenario where there is a need to do a weekly forecast for short term (next 13 weeks) and monthly forecast for remaining periods of the fiscal year. The forecast and actuals need to be captured in both weekly view and monthly view. Also the monthly view needs to be tied to a consolidation system (another tool having data at monthly level fiscal periods).


There are many entities and the fiscal calendar is not same for all of them. Majority follow the Gregorian calendar but there are several entities having different starting and ending dates for each fiscal periods. For Ex.

Entity 1 = Period 1, Jan 21, 1st Jan to 31st Jan

Entity 2 = Period 1, Jan 21, 1st Jan to 28th Jan

Entity 3 = Period 1, Jan 21, 1st Jan to 4th Feb


Since this can't be accommodated within the Model calendar due to different dates for fiscal period and the weeks not rolling to specific periods, an option is to have the native calendar set to "Months/Quarter/Years" to get the monthly view and creating a custom weekly list to get the weekly view.


The entity dimension is very big (3000+) and other dimension being used in different modules includes currency type, customers, vendors, channels, time, versions and will result in large sized modules.


Additionally there is a requirement to snapshot the forecast into different versions and use them for variance analysis within Anaplan. So the current forecast needs to be saved into the following snapshots for all key modules and also require variance analysis between them. The Prior 1 to Prior 4 are rolling snapshots and needs to be updated as week changes.


Forecast - WK1 : Snapshot at the start of current quarter
Forecast - Prior 1 : Snapshot 1 Week Ago
Forecast - Prior 2 : Snapshot 2 Week Ago
Forecast - Prior 3 : Snapshot 2 Week Ago
Forecast - Prior 4 : Snapshot 5 Week Ago




Any suggestions on the best approach to achieve the weekly and monthly views and also the efficient way to manage the snapshots?




  • Rolling forecast can be achieved using a process.


    Import Current forecast into Prior-1

    Prior-1 into Prior-2


    Prior3 into Prior-4




  • @gaurav 

    The simplest approach to preserve prior forecasts is to utilise the bulk copy functionality.

    This will allow you to create and copy the current forecast into a new forecast version.

    However, this action will significantly increase the size of the model if you continue the process for the whole 14 weeks. 

    You will also need to map each calendar into a standard model calendar so that you can compare across entities, mapping days into weeks and weeks into months/periods.


    Your model will be huge and from your requirements this is unavoidable if you want to retain 14+ different forecasts, plan at both weeks and months along with using a variety of different calendars. 

    My advise in this regard is question why you need to retain so many forecasts when Anaplan's strengths come from the ability to plan into the future not reporting past events. Do you really need this amount of data to achieve this?

    Good luck,


  • @ArunManickam 


    We can do that but there are many modules and we will have size constraint. please suggest the best approach considering model size constraint.



  • @ChrisAHeathcote 


    Yes, Model size is the main issue. Customer wants to have the snapshot for previous weeks as well to check the variance and there are many modules so model size is the biggest concern.



  • @gaurav 


    We see this problem quite a bit and my suggestion is to work backwards to forwards, meaning from reporting requirements to development of modules and logic.  I say this because from the beginning, you stated it will be many modules needing these versions and snapshots, but is that really the case?  I would suggest understanding what the true requirements are for reporting and variance analysis and then define the modules/logic for that.  When you do this, you very well may need a few modules with all of these versions, but not likely for all of them from a reporting perspective.  Also, another idea, you might want to consider mixing native versions (for input) with a custom version list used for reporting.  You may already know this, but bulk copy can be used on any list, not just native versions.


    Hope this helps,



  • @rob_marshall 


    Can you elaborate further on "bulk copy can be used on any list, not just native versions." 



  • @zach_hird 


    Absolutely...Just because people go to Versions to "get" to the Bulk Copy, it can actually be used on any list.  Take a look.






    Hope that helps,



  • @rob_marshall 

    Thank you very helpful! Have you seen a good solution for taking monthly forecast snapshots and not letting the data change in those snapshots?


    I thought versions and bulk copy would do it, but if a switchover date is included in the snapshot version then actuals could technically change for any line item using "if isactualversion()..." before the switchover date. And if a switchover date isn't used in the snapshot version then actuals data will never get to line items that use "if isactualversion()..." because the system doesn't know when actuals start/stop (even after a bulk copy from actuals to snapshot version A). I'm torn. 


    Basically I'm looking to freeze/ snapshot data (actuals and forecast) and never have that data change but also be able to refer to these snapshots for variance and other reporting 

  • @zach_hird 


    Snapshotting is always fun.  First, I would understand what actually needs to be snapshotted and why?  Does it have to be the most granular data or can it be summarized/aggregated up?  If the answer is the most granular level, then why?  What will it be used for?  Is it a nice to have for a report or is it a must have?  What type of reports will you be using the snapshots for?  Will they be for variance reporting between Actuals and a snapshot or will it be just between snapshots?  How many modules are we talking about that need to be snapshotted or is it just one module?  Lot's of questions that need to be answered in order to answer the question.


    With that said, I would lean towards a custom list for the snapshots and populate it via actions.  That way, you don't have to worry about switchover.


    Hope this helps,