-
what would be the formula for referring Previous year value in current year ?
For example, I want to refer the value of last year july 2022 in current month July 23. the line item is Past year revenue where I just want to show same month revenue from previous year, how could I achieve that?
-
1.03-02 Performance and size can be dependent on the Users list
When Users list is heavily used, the number of users added can have a significant impact, be mindful of this and remove model access from any Workspace users when not required
-
Ability to Apply Filters before downloading Model History
Currently, If I want to check history to view some activity on a specific module or list, but I am not aware of the dates when that change took place, It takes forever for me to extract the history for downloading 'ALL' change history and locate that change. I face issues especially when the changes are too many and file…
-
2.3.9.3 Update Historic Volumes for Baseline Forecast
I am having trouble adding a line item as my model has exceeded size. Here is what I am seeing on my screen.
-
Options to improve performance when loading flat list used in reporting
Hello, I'm loading flat data between 2 Anaplan models and in the target model, I'm using the Sum function to dimensionalize the flat data into a reporting module. The reporting module needs to have 5 lists + time and also requires summary to be on so data can be reviewed at aggregate levels. As a result the import action…
-
1.05-05 Format the Display Name property as a list if possible
Format the Display Name property for Numbered lists as List Formatted, not text. This is more efficient, saves a line item, minimizes text fields and simplifies mappings. However, it not recommended to create a separate list purely for this purpose; use an existing list if possible
-
2.02-10 Using PREVIOUS() vs CUMULATE()
For long timescales, using PREVIOUS is faster than CUMULATE due to the number of "reads" required for the calculation. So, the expression should be: 'Calc line item' = 'data line item' + PREVIOUS('Calc line item') rather than CUMULATE('data line item') Exception: 2.02-10a Short Timescales: Where the number of periods is…
-
1.05-08 Use Composite lists rather than ragged
Composite lists are more flexible and calculate more efficiently so try and "balance" the hierarchies whenever possible Exception: * 1.05-08a Chart of Accounts, or financial reporting hierarchies: Chart of Accounts, financial reporting hierarchies are valid uses of non-composite lists
-
1.07-03 Turn summaries off on Collect() line items
By default, you should turn summaries off on line items using the Collect() function. By having summaries turned on, the system is aggregating data that is not usually needed. Related to Rule: 2.01-10 Calculation Modules 2.03-01 Turn Summary options off by default
-
2.02-21 Don't use TIMESUM with Time
TIMESUM formulas should not be used in a line item that applies to Time, the formula will be duplicated for each time period. If the TIMESUM does use time periods then consider using MOVINGSUM instead. https://www.youtube.com/watch?v=PvimWuX5jVw
-
Model Optimization Checklist
As your Anaplan platform grows and continues to expand beyond your initial use case, it remains just as important as it did on day one to make sure your models are built to perform and according to best practice. Check out the model optimization checklist to begin evaluating your models today!
-
5.04-11 Use zip files for faster imports
Anaplan will accept a zip file format as an import source. For large files, this will greatly improve the import speed
-
2.01-20 Use Appropriate Dimensions for modules
When creating a module, consider the scope of the calculation and only include the dimensions that are needed. If the formula doesn't return the value required, or errors, don't keep adding dimensions until it does; it is better to review the calculation itself. Check other modules; you may already have a calculation…
-
2.01-19 Put Time and Versions list first in the dimension order
If you are using lists instead of native timescale or native versions, ensure these lists are placed as the first two lists in the dimension order. This mirrors the native time and version settings which will improve performance when mapping between native time/versions and standard lists Best Practice Article: Dimension…
-
2.01-18 Avoid copying large modules
Copying large modules, especially those with filters and many views, can take some time and block the model whilst doing so. For large modules, it is likely to be quicker to re-create the module Related to rule: 2.04-03: Keep the default view clean
-
1.02-05 Try and avoid a high number of native Versions
Versions have built-in functionality that is not available for normal lists. However, a large number of Versions (e.g. 10+), can have performance implications due to the block structure. Review the need for high number of Versions, and if the native functionality is not critical or needed, consider using a normal list to…
-
4.01-03 Create Output modules when using Custom Views
When staging line items are not needed to be viewed by the page builder, create an output module to be used for generating the Custom View Related to Rule: 2.01-04 Use the D.I.S.C.O. Methodology for Module Design
-
1.01-08 Daily Timescales on large timescales
Review the need for daily granularity for long timescales, specifically if the daily timescale spans five years or more. Use time ranges to restrict the daily calendars if possible and also use PREVIOUS rather than CUMULATE to optimise calculation efficiency. Related to Rule: 2.02-10 Using PREVIOUS vs. CUMULATE Best…
-
1.01-07 Time Ranges
Use Time Ranges to optimize the modules where the default model calendar is not appropriate. Consider the dimensionality for the data and set up the Time Range accordingly. Best Practices article: Time Range Application
-
1.01-05 Exclude timescale subtotals by default
Turn the "include" settings off by default and only include these if absolutely necessary. These additional settings (Quarter totals, Year to date, Year to go etc.) will be included in all modules with the model calendar as the time dimension. Thus they will perform calculations on these subtotals. Consider if you really…
-
1.06-03 Avoid single item subsets
If possible, try and avoid single item subsets, if there is a top level in the list, a single item subset will always have two members. Consider using a Boolean flag in a SYS module or a LOOKUP line item against the desired item (to avoid using SELECT)
-
1.05-11 Do not embed Numeric values or Dates within the Code of a list
Dates and values are "data" and should not be part of a code. Adding these elements to the code will in most cases, vastly increase the size of the list and consequently increase the mode size and reduce performance Best Practices article: Data Hubs Purpose and Peak Performance
-
1.05-07 Avoid Top Level for large flat lists
The calculation for a top level on a large list cannot be split so as the list grows, the calculation becomes increasingly inefficient. Consider if you really need the total. If you need to have the totals, look to add intermediate parent “totals” to make the calculations more efficient, of use SUM to aggregate for…
-
1.05-06 Only use Top Level for ultimate parent
Only use Top level for lists that will need sums so not Currency codes, or True/False (Indicators), or children in composite lists Best Practices article: Top Level Item and Parent Hierarchy
-
1.02-01 Use "Current" in Version settings
Utilising the Current (and Actual) check box within the Version Settings allows the use of CURRENTVERSION() and ACTUALVERSION() in calculations, in SELECT statements and ISCURRENTVERSION and ISACTUALVERSION() for Boolean checks. Current version also acts like a top level for Versions; if you have a source module with…
-
1.01-04 Consider All Periods
Consider the use of All Periods. This is effectively the Top Level for time and whilst increasing the model cell count very slightly it does allow for flexibility in modelling. This is especially useful if you need to reference the same calculation many times
-
2.04-03 Keep the Default View clean
Keep the default view as is, no hiding line items, filtering, or conditional formatting
-
2.02-19 Don't daisy chain data
Always refer back to the ultimate source if possible, to avoid creating more dependencies than necessary. This allows more parallel calculations to be run increasing efficiency and speeding up calculations Best Practices article: Best Practices for Module Design
-
2.02-17 Put the most common condition first
For formula efficiency, put the conditional with the most common occurrence first in the formula