Concurrent Planning


For a client we're facing issues with user dependency whilst filtering on the dashboards in Anaplan. We're using a Module with 10+ List-formatted line items to let an end-user select different combination of filters. However when multiple users are using the same dashboard which is based on one module/dataset their actions interfere with one another. 


In an ideal situation we would add a List based on the users but due to workspace limitations this is not a feasible solution. Implementing more properties that are now being used as filters in the hierarchies is as well very tough as these are not hierarchical and adding them all to the dimensions would **** up the workspace.


To achieve concurrent planning we're thinking about splitting their Customer Hierarchy into different subsets and then duplicate the modules & dashboards for each specific user. In order to keep the maintenance work manageable I was hoping to use Line Item Subsets to duplicate the filter & datamodules, however the LIS are only supported with simple sum subtotals. 


My question is twofold: 


- Has anybody encountered a similar problem regarding the concurrent planning with filtering through a module?

- Are there any known workarounds for the Line Item Subsets with different summary methods?


Any help is much appreciated.


Kind regards,




  • @HendrikDeCuyper 

    you can do this without dimensioning the whole module by the users

    1. Dimension the filter module by users

    2. Create a filter module by users and the dimensions of the target module.  this module may be reasonably large, but as you use Boolean line items (as per 3) the size if kept to a minimum

    3. Add line items to check the filter criteria from 1. agains the attributes of the dimensions and resolve all of the conditions into a single boolean

    4. In your target module, you can then apply that filter to the target module; it will respect the current user


     The target module(s) do not need the users list as a dimension


    You may have to deal with "cross overs" where users are trying to enter data into the same cell, if your permissions allow that


    I hope that helps


  • Dear David,


    Thanks for the quick reply and your time to investigate this topic.


    One thing I maybe didn't clarify enough is that the Filter Module is published on a Dashboard and are List formatted Line Items. Every line item represents a list which they can select an item from, e.g Countries - U.K. Then for every line item in the Filter module we have a Boolean-formatted line item in the data module (e.g Weekly Forecast on the CustomerHierarchy & Time) to check if the selected item corresponds with the property of the item of the Customer. 


    All these filter booleans are combined with AND statements to create one final Filter Boolean which we use in the data line items (e.g Confirmed Forecast : IF Filter Boolean THEN Confirmed Forecast ELSE 0). This allows for charts on the dashboards that dynamically respond to the selected filters. 


    Hope this helps, looking forward to read your reply.


    Kind regards,


  • @HendrikDeCuyper ,


    How many finditems() do you have in the source module and how many members is the largest list the module is calling?




  • @rob_marshall 


    In the source module, as in where the data is located? We're not using any FINDITEMS for the filter. However, for every filter we use a LOOKUP to retrieve its value from the property of the item in the Customer Hierarchy.


    The largest list is around 300 000 items.



  • @HendrikDeCuyper 

    Hmm, the only really practical way is to have the line items dimensioned by user.   


    You will still need to drive the filters module as I described, but that shouldn't be too large as it is only dimensioned by users and line items.


    How many resultant line items are needed for the reporting. This module will end up quite large as you need to bring all data into a module by user AND the other dimensions.


    An alternative might be to combine the hierarchies into flat list and then bring the data into that (by user) with IF filter? then data else 0 and extract it back out to the reporting module.  It is still going to take up space unfortunately


    One thing to also check is ensure that only users who need access to the model are given access.  That will reduce the size of the system generated user list.  Following on from that, there is always the fall back of a separate reporting model (populated regularly) for the analysis


    I hope this helps with some of the thought process





  • Hi David,


    Thanks again for the reply.


    So unfortunately when I have to add the user dimension to the filter module consequently this has to be added to the data module which is impossible due to the size of the current dimensions (week & customerhierarchy). 


    The alternative I do not fully grasp but if the user dimension is required in combination with the usual dimension this will still be unfeasible unfortunately. 


    Concerning the user dimension, we tend to create seperate lists for each type of user which allows us to reduce the size of the lists and work with these lists for DCA & Workflow. 

  • Hello @HendrikDeCuyper ,


    As David mentioned, we need to cross the selection (list formatted line item) and filter (boolean) with users, so that they are exclusive for each user. I am assuming you are applying user dimension for only these 2 line items and not the entire module. In this case, it should not normally consume more space. 


    Other option is to consider is use "Quick filters" and personalized dashboards. Users can be trained on quick filters which are exclusive to each user and also these can be saved as "My page" personalized dashboards.