Inheritance
Inheritance is a vital PIM functionality that will help you keep your product data up-to-date and consistent, with much less effort. You can define the most generic data for an upper category of products, and then inherit or distribute them automatically to sub-categories and related items. Thus, for common product traits you will only need to define and manage data in one place. Any modification will propagate throughout the inheritance structure, ensuring that your people will need to do much less manual work while having excellent data consistency for the items you sell.
There are a few important fields to take into consideration for data inheritance. These fields can be found on the item card, item group card, product group card, or chapter card.
- Standard Item Group (on the item card), Standard Product Group (on the item group card), Standard Chapter (on the product group card): these fields always state the object's parent entity. Only data from this entity will be inherited.
Note
If an item is assigned to multiple item groups, only one of them is set as a Standard Item Group, and only its data will be inherited.
- Inherit Features, Inherit Keywords: hereby you can set if features and/or keywords (without class) are inherited from the parent entity to the current entity.
- Inherit Feature Values: if you inherit features you can also opt for feature value inheritance
- Inherit class: if you use any kind of classification, the classes will contain features and keywords. Setting this field to Yes will tell the system to inherit a whole class from the parent to the current entity. In this case, Inherit Features and Inherit Keywords will automatically be set to Yes.
- Inherit Pictures, Inherit Documents, Inherit Media, Inherit Graphics, Inherit CAD Drawings and Inherit Descriptions: all of these fields have the same behaviour, and if set to Yes they will tell Pimics to copy data from the parent entity to the current entity.
Note
- Inheritance settings can be found on every entity in the product tree. For example, if you don't want to inherit data from a product group to an item group and their items, you will need to disable inheritance at the item group level.
- If you disable inheritance for any kind of data, all data inherited from a higher level will be removed from that entity (category or item) and from all lower levels that previously inherited its data. In the case of inherited features, all features will be removed together with their values.
For all inheritance fields you can specify a default value in the catalog setup. After installation, the default setting is that inheritance is enabled for all fields.
Inherit features
The field Inherit Features allows you to set inheritance for features or feature groups.
For example, you have two item groups with a lot of items, which should contain a common feature named Color. If these item groups both belong to a product group, all you need to do is set this feature at the product group level. If both item groups and their subsequent items have the Inherit Features field set to Yes, they will all automatically contain the feature named Color. If there will be a few exceptions of items within these item groups that do not need to inherit features from above, you just need to set Inherit Features to No for those items.
Inherit features Usecases
In tables below is described how inheritence behaves in different scenarios
Note
In this scenario is showcased how Inherited Feature Value behaves. Relation can be between any Categorie and its Standat Group Entity
Situation 1
Feature Value is defined only on item before inheritence in enabled
| Element | Description |
|---|---|
| Initial Item state | Feature Color = Blue, not inherited |
| Standard Item Group | Feature Color = empty |
| User action | Enables Inherit Features |
| Result | Feature Color on Item is set as inherited, value Blue remains |
Situation 2
Same Feature Value is defined on Item and Standard Item Group before Inheritence is enabled
| Element | Description |
|---|---|
| Initial Item state | Feature Color = Blue, not inherited |
| Standard Item Group | Feature Color = Blue |
| User action | Enables Inherit Features |
| Result | Feature Color on Item is set as inherited, value Blue remains |
Situation 3
Different Feature Values are defined on Item and Standard Item Group before Inheritence is enabled
| Element | Description |
|---|---|
| Initial Item state | Feature Color = Blue, not inherited |
| Standard Item Group | Feature Color = Red |
| User action | Enables Inherit Features |
| Result | Feature Color on Item is set as inherited, value changes to Red |
Situation 4
Feature Value is deleted from Standard Item Group while Inheritence is enabled
| Element | Description |
|---|---|
| Initial Item state | Feature Color = Red, inherited |
| Standard Item Group | Feature Color = Red |
| User action | User changes Color to empty on Standard Item Group |
| Result | Feature Color on Item is set to empty |
Situation 5
Feature Value is modified on Standard Item Group while Inheritence is enabled
| Element | Description |
|---|---|
| Initial Item state | Feature Color = empty, inherited |
| Standard Item Group | Feature Color = empty |
| User action | User changes Color to Blue on Standard Item Group |
| Result | Feature Color on Item is set to Blue |
Situation 6
Feature Value is modified on Item while Inheritence is enabled and consequently on Standard Item Group
| Element | Description |
|---|---|
| Initial Item state | Feature Color = Blue, inherited |
| Standard Item Group | Feature Color = Blue |
| User actions | 1. User changes Color to Red on Item 2. User changes Color to Green on Standard Item Group |
| Result | Feature Color on Item remains Red |
Situation 7
Reverting manual change to overtake Standard Item Groups Feature Value
| Element | Description |
|---|---|
| Initial context | Situation 6 (Item manually changed to Red, Group changed to Green) |
| User action | Refresh value to reset Item’s Color |
| Result | Feature Color on Item is set to Green again |
Inherit descriptions
The field Inherit Descriptions allows you to set inheritance for descriptions and their translations.
For example, you have a marketing text or product label that is common to all products within a product group. You will then set the text at a product group level, then set Inherit Descriptions to Yes for all subsequent item groups and items. Any modification to this description or its translations will always propagate instantaneously to all entities below that have Inherit Descriptions enabled.
If Inherit Descriptions is set to Yes, the inheritance works for the following cases
- The description text is created, changed or deleted
- Any translation of the description text is created, changed or deleted