This article introduces how expressions – similar to formulae in Excel – can be used to populate property values.
A separate article provides Code snippets for common Expressions.
Common requirements for expressions include:
- Generating new properties from existing properties, e.g.:
- Combining “first name” and “family name” to create “full name”
- Adding individual compensation components to calculate total compensation
- Projecting “future compensation” based on “current compensation”
- Maintaining up-to-date values, e.g.:
- Calculating "employee age" from "date of birth"
- Calculating “tenure” from “start date”
- Specifying default values for new positions, e.g.:
- Assigning an FTE value of 1 when a new position is added
- Flagging or categorizing nodes according to logic, e.g.:
- Categorizing positions as “below target”, “on-target”, “above target” based on values of a given property
Note: Orgvue’s template packs for organizational analysis, and the Organization Modelling Guided Experience provide pre-built, configurable expressions. These solutions are recommended starting points for organizational analysis and modelling.
Should my expression be saved as a Pack Property or a Dataset Property?
Expressions can be saved as a Pack Property or as a Dataset Property.
- Save your expression as a Dataset Property when it is needed across multiple packs
For example ‘tenure group’ might be used to categorise employees consistently across multiple types of analysis using different packs. -
Save your expression as a Pack Property when it is needed in only a single pack which is used with multiple datasets
For example, a property which helps identify data errors which is only ever used in a dedicated Data Quality Review Pack, and used with multiple datasets.
How to save an expression as a Dataset Property
TIP: Run your expression in the Gizmo Editor to check it works as intended. (See steps 1-4 in the section below “How to save an expression as a Pack property”).
- Open Manage Properties from either Workspace or Settings
- a) Select the property to be populated by the expression; or
b) Add a new property to be populated by the expression - Select the ‘Values’ tab
- Select ‘Populate values using an expression’
- Select the arrow to expand the ‘Expression’ option
- Enter the expression (see Code snippets for common Expressions)
- Select how the expression is to be run (see below for an explanation of the options)
- Select ‘Save’
- Close ‘Manage Properties’
- Reload Orgvue
How to save an expression as a Pack Property
- Select ‘Gizmo editor’
- Enter the expression (see Code Snippets for Common Expressions for)
- Select Run to preview the result of the expression
- Preview the output of the expression (The value will be returned for the top node in the hierarchy (if no node has been selected), or for a selected node
- Select ‘Save as property’
- Enter a display name for the property
- Enter a property key
- Select the appropriate property type (this will be auto detected)
- Select how the expression is to be run (see below for an explanation of the options)
- Select ‘Save’
- Reload Orgvue
How and when should my Expression be run?
When an expression is applied, you can specify how and when it is run:
The effects of each these selections is summarized below. Additional detail is provided in the Orgvue User Guide Property Manager · orgvue settings user guide
-
Empty cells
- The expression is only applied to populate cells which have no pre-existing value.
- The value returned by expression can be over-written by users.
- Example use: Applying the value “No absence” in a property recording “Absence reason” for employees who have no recorded absence instances.
-
New Nodes
- The expression is only applied to populate cells when a node is created.
- The value returned by the expression can be over-written by users.
- Example use: Assigning a default FTE value of 1 when a position is added.
-
All Nodes
- The expression applied to all nodes regardless of whether a cell is empty or has pre-existing value.
- The value returned by the expression cannot be over-written by users.
- Example use: If a performance assessment rating results in a specific outcome which needs to be recorded and protected.
-
Pre-Filter
- Values are generated before data is filtered or paged and do not change after filters or pages take effect.
- Example use: Calculating total compensation by adding compensation components and paging to compare organizational subgroups.
-
Post-Filter
- Values are generated after data is filtered and/ or paged. Values are based on nodes included in subgroups defined by filtering and paging.
- Values returned by the expression are dynamic: they change to respect filters or paging being applied.
- Example use: Calculating aggregate team cost and seeing the ‘to-be’ cost of the organization with positions flagged for removal filtered-out.
-
On-Demand
- Values do not change until a user triggers the running of the expression.
- This avoids performance loss through complex calculations running unnecessarily
- Example use: An expression used across linked datasets to perform validation checks during a talent selection process.
Related articles:
Comments
0 comments
Please sign in to leave a comment.