Read more about importing in Anaplan.
- How are items mapped?
- What's the header row and the first data row?
- What if there is no header row?
- What's the difference between ‘single column' and ‘multiple columns' on the mapping screen?
- How do I map on codes?
- How do I set up an allocation table?
- Can I do many-to-one mappings?
- What does 'No match' mean?
Anaplan scans the first dozen rows of the source file and determines the text encoding and the delimiter (normally tab or comma).
For the number of columns required for an import:
- If there is a header row, Anaplan automatically determines the number of columns required.
- If the first row is all blanks, this is ignored and it uses the first data row to determine the number of columns required.
- If there is no header row, it uses the first data row to determine the number of columns required.
- If the first row is gappy, for instance there is only one data cell value in the first row and this is at the head of the 7th column, then the predicted number of columns would be indeterminate. This is because when importing from spreadsheets,
blank cells will still have tab delimiters. In this sort of case we recommend you either:
- Add a full header row to the source file and restart the import, or
- Use the mapping screen to manually map for the columns you require.
To determine the mapping, it first checks the header row for names that exactly match the name of the lists or for names that exactly match the line items. So, if the source file has column headers that exactly match the list names, they will be mapped automatically.
Similarly, if it finds matches to line items in the header row, these will be mapped automatically, leaving you to fill in any exceptions that are not exact matches.
If the header row contains a single item called value or just one line item, the file is assumed to be a single column file. If it finds multiple matches for line items, or the header row matches multiple items in one of the lists, then it's assumed to be a multiple column file.
The Header Row is the row that contains the column labels. The First Data Row is the first row that contains the numbers or other data you are importing. While the program will make an educated guess at these by counting the delimiters, this is not always sufficient so you may need to change these settings.
Simply set the header row to 0 and the first data row to 1. The mapping can then be done on column numbers. Or, open the text file and type in meaningful headers as this will make mapping easier.
A multiple column file contains several columns of data.
A single column file contains just one column of data, though it may contain other columns for the labels.
The data columns are not necessarily numeric (though they often are). They could be numeric, date, text, list or Boolean.
For normal lists, mapping can be done on codes or descriptions - you don't have to specify which. Since each code and description is unique within a list, it can match on either.
To enter codes (or import codes) go to the Settings tab, choose a list, go to the grid view tab and fill in the Code column.
Line items can't have codes or properties. However, you can always import into a module that has these codes as a normal list and then do the mapping into a line item subset. This is often used when mapping GL codes to Income Statement line items for example, as it lets you do many-to-one mapping. For line items, use the SUM function and a mapping module to add up multiple codes into each line item.
When the column headers in your source file map to line items in the target, you can set up an allocation table (one-to-one mapping only) even if they don't match exactly. If the line items are in rows in the source file, then they must match exactly if they are to import successfully.
For normal lists, you can't set up allocation tables. They have to be an exact character match against either the codes or the description.
For timescales, the item mapping must either be an exact match or use one of the standard time formats.
Many-to-one mappings are not permitted in the import directly although you can set up an intermediary module that takes in the raw data and then set up a mapping table internally to do the many-to-one mapping (use the SUM function or parent hierarchies).
The exception is dates, where all legitimate dates will add up and be slotted into the relevant week, month, quarter, or year.
‘No Match' can be a perfectly legitimate mapping. It means that you have to choose a single fixed target item when you perform the item mapping.
For example, suppose the source file contains just actuals, but your target module has a Version list containing Actuals, Budget, & Forecast. There's probably no column headed ‘Version' in the source file, (as it's all actuals) so when it comes to mapping the column headers there is nothing to match to the Versions list. In this case, the column header mapping would be:
No Match -> Version
On the Version tab, you would specify a fixed target item, Actuals in this example.