Hierarchical Data
Hierarchical data is organised with headers above and details beneath, which allows for repeating parent-child relationships.
IMan's support for hierarchical data is extensive. Each Reader is capable of consuming hierarchical data and each transform & task provides intrinsic hierarchical data capabilities. Furthermore, the flatten and hierarchy transforms provide the means to manipulate data into and out of a hierarchical structure. See Destination Defined Data Structure to find out why this is required.
Example
A sales order where the header record contains customer information, the first child (order details) contains the items, and a third level contains lot or serial number data.
IMan's multi-level hierarchical data support permits it to handle complex data structures such as a Project Setup in a Project or Job Costing system, a Multi-Level Bill Of Materials or complex transactions such as Purchase Order Receipts with Landed Costs.
Reader Support For Hierarchical Data
IMan provides the capability for consuming hierarchical data on each of its readers. The type of support provided varies on each of the data formats:
Naturally Hierarchical
This data has explicit relationships between parent and child.
The data formats supporting this style are Xml & JSON.
Keyed Hierarchy
Where there isn't an explicit relationship, but a relationship exists through common field values between records within a dataset. This is supported by CSV, Database & Excel formats.
In this style of hierarchy the fields expressing the relationship are identified through the Key Fields during setup.
Ordered Hierarchy
Where the order of the records infers the relationship, supported by CSV, Excel & Fixed Width data formats.
Transform Support for Hierarchical Data
Each hierarchical 'level' is carried across from the previous transform's structure and the fields listed in the field mapping grid, changing the Transaction Type down changes the fields for the particular level.
The Hierarchy & Flatten transforms provide the means to manipulate data into & out-of hierarchies.
Task Support for Hierarchical Data
Most tasks provide the means to work with hierarchical data through Expando fields, where the 'expanded' list of data is driven from the IMan data set.
Key Fields
The key field is used to construct a hierarchical dataset. For this reason, keys are assigned either on import, if the dataset is already hierarchised, or in the hierarchy transform.
By giving a record a numerical value, the parent-child relationships are defined. Child records are inserted into the dataset when its keys match those of its parent’s.
When setting the keys, each child transaction must have at least one more key defined than its parent.
These are defined in the field mapping tab of the Hierarchy transform.
What's New in Version 3
Keyed Data
As above.
Ordered Data
On import, the structure and relationship IMan identifies between fields relies on the order of the data within the file.