Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
devel:documentation:synchronization:dev:contract-slice-sync [2018/05/15 09:02] svandav [HR processes] |
devel:documentation:synchronization:dev:contract-slice-sync [2019/08/13 14:06] doischert |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Synchronization - time slices of contractual relationship ====== | ||
+ | {{tag> sync contract slice}} | ||
+ | |||
+ | <note tip> | ||
+ | |||
+ | < | ||
+ | ===== What is time slice of contractual relationship ===== | ||
+ | <note tip> | ||
+ | |||
+ | ===== Actions after end of sync ===== | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | ==== Select current contract slice ==== | ||
+ | |||
+ | Before HR process the long running task " | ||
+ | |||
+ | ==== HR processes ==== | ||
+ | [[devel: | ||
+ | |||
+ | HR processes can be (**should be**) correctly started after the end of the sync. This can be ensured by the property `After end, start the HR processes` on the detail of sync configuration. If this property is ticked, then HR processes ' | ||
+ | |||
+ | ==== Automatic roles ==== | ||
+ | |||
+ | Recalculation of automatic roles is skipped during sync. Recalculation of automatic roles can be (**should be**) correctly started after the end of the sync. This can be ensured by the property ' | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | ===== Fields for sync contractual relationship mapping ===== | ||
+ | Bellow is an example of contractual relationship mapping using slices. This is only an example; in general, slices must be mapped in the same way that contracts are but must have two extra attributes: "Valid from of slice" and some sort of "Slice ID". | ||
+ | |||
+ | * **Contract code** - Code of the parent contract. This `String` value represents relation between all slices for the same contract. | ||
+ | * **Valid from of slice** - Defines time from that is slice valid. Valid till of slice is computes automatically (by validity of next slice) after save. Output value from attribute transformation must be ' | ||
+ | * **Slice ID** - ID of the time slice, it is often transformed by combining " | ||
+ | * **Owner** - Relation owner. Must be identity in IdM. This field is required for every relation. Output from attribute transformation can be: | ||
+ | * ID of IdM identity in String or UUID format. | ||
+ | * Username of IdM identity in String. | ||
+ | * **Main** - Defines if is the contract main (between all contracts of the identity). Output from attribute transformation must be Boolean. | ||
+ | * **State** - State of contract. Output from attribute transformation must be enumeration ContractState or String representation for this enumeration (DISABLED, EXCLUDED) (see below for more details). | ||
+ | * **Position** - String representation of contract. Typically name of contract. | ||
+ | * **Guarantees** - List of superiors, directly linked to the contractual relationship (see below for more details). | ||
+ | * **Work position** - Defines link to some tree node. Generally defines a place in an organization structure (see below for more details). | ||
+ | * **Valid from of contract** - Validity for the contractual relationship. Output value from attribute transformation must be ' | ||
+ | * **Valid till of contract** - Validity for the contractual relationship. Output value from attribute transformation must be ' | ||
+ | * **Externe** - If the contractual relationship for identity is set as extern, then the output value is (boolean true). | ||
+ | * **Description** - String for description the relation. | ||
+ | |||
+ | |||
+ | |||
+ | ==== Guarantees field ==== | ||
+ | List of superiors, directly linked to the contractual relation. Linked leader must exists in IdM. | ||
+ | Output from attribute transformation can be: | ||
+ | * Username of superior (String). | ||
+ | * Id of superior (UUID or String). | ||
+ | * List of usernames of superiors (List< | ||
+ | * List of Ids of superiors (List< | ||
+ | * Null value. If the value is not defined and in sync the configuration is set to ' | ||
+ | |||
+ | If some leader is not found the synchronization item will be marked as ' | ||
+ | |||
+ | < | ||
+ | ......................... | ||
+ | Finding guarantee [temslie7]. | ||
+ | ......................... | ||
+ | Warning! - Identity [temslie7] was not found for [temslie7]! | ||
+ | ......................... | ||
+ | </ | ||
+ | |||
+ | ==== Work position field ==== | ||
+ | Defines a link to some tree node. Generally defines place in an organization structure. | ||
+ | Output from attribute transformation can be: | ||
+ | * Id of a tree node (UUID or String). | ||
+ | * Code of a tree node. Node by code will be searched in default tree (define in sync configuration ' | ||
+ | * Null value. If the value is not defined and in sync the configuration is set to ' | ||
+ | |||
+ | If a node is not found the synchronization item will be marked as ' | ||
+ | |||
+ | < | ||
+ | ........................ | ||
+ | Work position - try find directly by transformed value [Divanoodle]! | ||
+ | ........................ | ||
+ | Work position - was not not found directly from transformed value [Divanoodle]! | ||
+ | ........................ | ||
+ | Work position - try find in default tree type [DEFAULT_ORG] with code [Divanoodle]! | ||
+ | ........................ | ||
+ | Warning - Work position - none node found for code [Divanoodle]! | ||
+ | </ | ||
+ | <note important> | ||
+ | If a work-position attribute is not defined in the mapping, then **no** default position will be set.</ | ||
+ | |||
+ | ==== State field ==== | ||
+ | State of contract. Output from the attribute transformation must be enumeration ContractState or String representation for this enumeration. | ||
+ | |||
+ | ContractState has these values: | ||
+ | * **[[..: | ||
+ | * **[[..: | ||