Decoding Anaplan Errors in Model Building
Anaplan is a very smart and intelligent platform, and it educates its model builders/developers brilliantly about the mistakes or errors made. Here are some of the common errors that may occur while model building—decoded.
ERROR 1: Automatic Sum of “Module.Line item” over “List hierarchy” is not possible, as “List” doesn’t have a built-in top level.
This type of error occurs in two cases:
- There is at least one dimension in the source module that doesn’t match with the dimension of the target module, and you are pulling the data/information from source to target. Let’s understand with an example; Suppose we have a source module that is dimensioned by Products and Customers and the target module is dimensioned by Products only. If the Customers dimension doesn’t have the top-level set, Anaplan will return the above error because it would not be able to figure out what needs to happen with that extra dimension. The reason for the error is that it is trying to sum the Customers data, but since it doesn't have a top member, the system doesn't have a place/member to aggregate the data to.
- There is only one dimension in the source module that doesn’t match with the dimension of the target module.
ERROR FIX: There are many ways to fix this error.
- Setting up the top level for Customers list: Do this when there is a need to pull the data for all of the customers. Otherwise, refrain from doing so because having top-level for large lists impacts the performance of the model health. For more information, please read Planual 1-05.07 Avoid Top Levels for Large Lists.
- Use LOOKUP on Constant Module: If there is a need to pull the data of any one particular customer, create a LOOKUP module/Constant module (Dimensionless module) and store the LIST – Customers in one line item.
- Use LOOKUP on Mapping Module: If there is a need to pull the data of Customers aligned/mapped to the products.
ERROR 2: Module.Line item has XXX format, but the formula resolves to YYY format.
This error occurs when the format of the source line item doesn’t match with the format of the Target line item. Let’s understand with the following example. Suppose we have a source module that is dimensioned by Products, and one of the line items is formatted as LIST - Location. Our Target module is also dimensioned by Products. To get the location details from the source module to the target module, change the formats of the line items so they are the same. In this case, the format of the target line item is TEXT—hence the error.
Additionally, attempt to stay away from Text Formats as:
- Text is bad for performance.
- Model builders cannot sum on data that is not List formatted.
ERROR FIX: Change the format from Text to List.
ERROR 3: “XXX,YYY” is an invalid Applies To for Module because XXX and YYY have a common ancestor.
This error occurs when you are attempting to add the lists to modules, but the lists have common ancestors. For example:
Product Hierarchy: Products roll up to Categories
XYZ Hierarchy: XYZ rolls up to Categories
Since Categories is the Common Ancestor, Anaplan will not allow you to add these two lists as dimensions in one module. Please note that this will also occur when using subset of a list.
Note: At the time of module creation Anaplan will grey out all the lists that are part of the hierarchy or have common ancestors, and the possibility of getting this error is none. However, you will receive this error once the module has been created and you try to change the dimensionality of the module after the creation of the module in blueprint mode.
ERROR FIX: This cannot be accomplished as this is an Anaplan Architecture misunderstanding.
ERROR 4: Dimension of mapping used for lookup doesn’t match any dimension of the result.
This error occurs due to a mismatch in the dimensions of the mapping used for LOOKUP. For example, if a Source Module is dimensioned by Transactions and has two line-items—Regions (LIST-Region formatted) Country (List-Country Formatted).
Country being a child of Region and Currency being an attribute of Country in SYS Country Module.
The target module is dimensioned by Country, Products. To get the Currency (an attribute of Country) into the Target module, we may directly use LOOKUP from SYS module, and our formula might look like below:
This will return the error because the mapping used for LOOKUP in the above formula doesn’t match any dimension of the Target or result line item.
ERROR FIX: Make sure that the mapping that is being used for LOOKUP has at least one dimension matching with the Target or Result Line item.
ERROR 5: Level mismatch on a common dimension.
Let’s use the previous example:
Source Module: Dimensioned by Transactions, with two Line items Region and Country. Country being a child of Region.
The only difference this time is Currency is an attribute of Region and not of Country.
Target Module: Dimensioned by Country, Products—to get Currency into the Target module, our formula may look like this:
Error Fix: Although the dimension is common, there is a mismatch in the levels between the Source and Target module—meaning an attribute of Region (Parent) is getting pulled into the module which is dimensioned by Country (Child). Make sure levels are common when you try to pull the information across modules, even if the hierarchies are the same.
Hope you enjoyed reading it, as the article is intended to make you aware or understand the errors Anaplan returns when a model builder makes a mistake. Try to understand these errors, and you may potentially save a lot of time in debugging them.
Contributing author Rob Marshall.