How do you import to a numbered list from a numbered list in a different model - using the 'connect to Anaplan model' function? The aim of this is to store the lowest level of my organisation's hierarchy as a numbered list - this is needed as some of the organisation unit names are duplicates.
At the moment, I get the error message "Cannot add new entities to numbered list when matching involves name" when trying to import.
My intent is to use this method in conjunction with a method for sharing lists between models (explained here) to create a data hub that contains my organisation's hierarchy which can then be pushed out to several models. This will allow me to maintain one master list instead of several.
Also as a side note: in our organisation, we create and manage our hierarchy within Anaplan rather than using external uploads to Anaplan from other sources.
Solved! Go to Solution.
The best way to achive this is the ensure that you have a code for the source list. Then when you import the list details to the target you will ensure that the two lists are in sync.
2 additional points:
1. If the target list doesn't contain a code (either because of the initial data inport, or becasue you have used the "Create" action, it is always worth creating an internal process to create a code. Numbered lists are so much easier to manage if they contain a code.
2. We don't recommend using the list directly as the import source. It is better to have a module view containing the required attributes because this can be filtered and the view can be configured only to contain the required field (you cannot do either of these directly from a list)
I hope this helps
Is there a way to get Anaplan to generate a unique code for each item within the list? As I understand it, this is effectively what happens for the name property for each item in the list. (I.e. the first item of each numbered list is #1, second is #2, third #3, etc. etc.)
Also, is there a way to formulaically calculate the code property of a list?
What you are wanting to do can be done, but not in the way you are thinking or at least not the way I am reading your question (upon entry).
So, if you have don't have the code, the next question is "How do I update the numbered list". Simply create a module using that list in the Applies To. Create a line item using formula's to create the code (100_200_300) and then reimport that to the list using the member in the first column of the Action and making sure the Name (#ID) is used under the "Items unquely identified by" as seen below.
Hope this helps,
Thanks for your help on this!
I've come up with a solution to the problem. As I want to have one master list in a data hub model that pushes out to other models I need to be able to preserve the unique ID of the data hub list so that if any list items are edited (e.g. display name changes), any associated data remains. This will also preserve the ability to add/remove list items.
In my master model I created a module with my numbered list with a line item called "UID", text formatted. I concatenated "UID" with the NAME function to get the Anaplan numbered list name (i.e. the #1, #2, #3 name not the display name). The end formula looked like this: "UID" & NAME(ITEM('Organisation L3')).
In my child model I then created a numbered list and set up my import, for the numbered list, by connecting to another Anaplan model, the data hub model in this case. I connected to the module previously created (not the list). I removed the source from the Name property field and mapped my UID line item to the code property field. I then set the import to be unique by code only and ran the import. I found that if I did not concatenate "UID" to the default Anaplan numbered list names the import would fail - presumably "#" & NUMBER formats are reserved for the system.
This method aligns the numbered lists in my data hub model to the lists in my child models, a 1 to 1 relationship that won't change if the list item is edited AND will enable me to add and remove items in numbered lists within my data hub model and push any hierarchy updates to other models.
The key benefit to this is that I can have one hierarchy stored in one model. This will be especially useful for my use case as I have a number of models which all use the same hierarchy.
If this hierarchical data, then I would not advise this as the code for the hierarchy needs to have meaning. As stated above, the code in a numbered list is everything, allowing you to figure out where you are in a list. If you have a random number, from the data hub, which means nothing, how are you going to do a finditem() in a module to understand which member of the list you are looking at?
As stated earlier, it is best practice to have the code be meaningful, so you can always get back to it. For example, if my code is 100_200_300, that could mean the base members' code is 300 (which could point to a flat list of cost centers), 200 is the parent of 300 (which points to a flat list of countries), and 100 is the parent of 200 (which can be pointed to a flat list like region).
Hope this helps,
We might be saying the same thing if the Org "flat" list is using the same code or "UID".