Don't get lost: IMan Guides » IMan User Guide » IMan Data Concepts » Hierarchical Data

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.