I have a module with Product List, Region List, Time by month and Line items. I am trying to copy the data from Line Item A to Line item B within the same module and it works fine when I do the mappings by column.
But when I choose 'Ask each time import is run', it is tripling the data from Line item A to Line Item B. (Note: it is not even taking the sum off records data from source and putting it in the target. Rather than that it is taking all the intermediate roll ups from source and doubling or tripling based on the number of levels present in that list. For example, lets say your product is a composite hierarchy with 3 levels as Sub product->Product->All products. Basically, it is taking all the individual & all rolled up stages data from the source and puts in the the target product of whatever we select while run. So if you have data as 1 in the sub product, in the target it is giving as 3). Refer the attached screenshot.
If so, what is the real time use of this 'Ask each time import is run'?
Note: My business requirement here is that user will have access to all the products. But he will take snapshots only for the products for which he completed planing. So, how to do import from module to module only for a specific product intersection? Applying filters by creating a view might not work, as user need to select the required products each and every time. So, is there any other alternate solution to achieve my requirement?
My requirement is that Anaplan should consider both source and target when we do mapping as 'Ask each time import is run'.
Both the "Ask each time import is run" and "Fixed item in list" mappings are useful when the import source data does not include that dimension; they serve to substitute a suitable value when one cannot otherwise be provided. Note that imports purposefully don't carry much in the way of structural information from the source, even if it is the same module. You can use item mappings in the import definition, but you would need to update the import definition each time. Using dynamic cell access to restrict write access to the target might help, especially if you are tracking completion within the model already.
I am always very vary of users running actions during the planning cycle. It is often possible, and better, to try and "model" the solution. Many users running actions often is not going to create a good user experience due to the blocking nature of the imports
So, in this case, if the values need to be "snapshotted" when completed, you could use a second staging module with logic tied to a "completed flag". so, If completed? then data else 0
You can use DCA to control the setting and re-setting of the completed flags to ensure control throughout the process
If you do need to run actions, you should look to created a saved views of the source using filters on those completed items and use that as the source. It is critical (with all sources used for exports), that the views are as efficient as possible:
use a single boolean per axis
Only include the detailed values that are necessary