TIBCO EBX®
Rules Portfolio Add-on Documentation > User Guide
Navigation modeRules Portfolio Add-on Documentation > User Guide

Rules configuration

Administration domain

The 'TIBCO EBX® Rules Portfolio Add-on' data space is located in the Administration tab and allows you to configure rules and how they execute.

/Administration_Domain.png

Special Notation

/100002010000000E0000000E3C009B93.png

Rules do not execute through add-on configuration. They execute on a publication of the rule configuration. Before executing rules, you have to run the 'Publish rule portfolio' service to publish the current configuration.

D.E.C. Definition

The 'D.E.C. definition' group contains tables that declare a Data Element Concept (D.E.C.). The D.E.C. is an ISO-IEC 11179 concept that is used in other EBX® add-ons such as EBX® Information Governance Add-on and EBX® Insight Add-on. Rules can be executed on a D.E.C. which can be either a table, a field, a service, etc.

D.E.C. (Data Element Concept)

A Data Element Concept (D.E.C.) is a generic term defining any type of data asset that can be associated with rules. The primary D.E.C. used is 'Table'.

You can define the D.E.C. properties shown in the following table:

Property

Definition

Code

Any naming convention can be used except the prefix '[ON]' which is reserved by the add-on for predefined Data Element Concepts.

Example: [ON] Account

Business code

A business identifier.

Name

The D.E.C. name. Any naming convention is valid.

Description

The D.E.C. Description. Any naming convention is valid.

Type

The list of D.E.C. available types which is supplied by the reference table 'D.E.C. type' (Service, Data model, Table, Field). Note: After selecting a D.E.C. Type, you need to validate (Click 'Save') the form to display a type's associated properties.

If 'Type' is set to 'Data model', 'Table' or 'Field', the following properties are available:

Data model

The data model to which the Data Element Concept belongs.

If 'Type' is set to 'Table' or 'Field', the following property is available:

Table

A list of available tables contained in the selected 'Data model'.

If 'Type' is set to 'Field', the following property is available:

Field

A list of available fields contained in the selected 'Table'.

Mandatory

If 'Yes': this field is mandatory.

If 'No': it is not.

Computed value

If 'Yes': this field is a computed value.

If 'No': it is not.

Multi-valued

If 'Yes': this field is a multi-valued or under a multi-valued group.

If 'No': it is not.

If 'Type' is 'Service', the following property is available:

Service

A field that allows you to enter a 'Service' name.

D.E.C. creation service

You can automatically create all D.E.C.(s) for a selected data model. The 'D.E.C. creation' service is available in the D.E.C. table as illustrated below.

/DEC_Creation_Service.png

In configuration part of 'D.E.C. creation' service, you have to choose data model and table. The 'D.E.C. creation' service generates D.E.C.s based on your input data.

/DEC_Creation_Service_2.png

'Business rules' group

This group allows you to define business rules and their packaging.

Configuring a business rule

You can base rule configuration on business rules and implement their configuration using a script or Java. Predefined Java-implemented rules are ready-to-use and require no specific programming knowledge from end-users. However, using a script requires scripting language knowledge for implementation and requires end-users to possess at least basic programming knowledge. For more information about the scripting language see the Scripting Language.

The 'Rule' table contains settings that allow you to define rules. This table's view defaults to a hierarchy of D.E.C.'s under which associated rules display. You can use the 'View' drop down menu to change views. The following points outline the rule creation process:

The following table describes the 'Rule' table's properties that allow you to configure a rule:

Property

Definition

Code

Any naming convention can be used except the prefix '[ON]' which is reserved by the add-on for predefined rules.

Example: [ON] Rule 01

Implementation type

There are 2 ways to implement a business rule:

-Use script: you use a script to define the rule.

-Use Java implementation: you use Java implementation to define the rule.

Name

The rule name. You can use any naming convention.

Description

The rule description. You can use any naming convention.

Table

The Data Element Concept (D.E.C.) on which the rule executes. By default, this is a data model table. A control is applied by the add-on to check if the selected table is compliant with the rule definition.

Field attachment

The field on which the rule executes. The field specified by this property is only used if a constraint prompts execution of a validation rule. When you specify a field, the rule can only execute from a constraint attached to the specified field in the table selected above. The system returns either a warning, or an error based on the level of severity chosen. If this property is set to undefined, the rule can execute via constraint on any field in the selected table.

The rule can execute via trigger, regardless of the field specified here.

Type

A rule's type. This value can be: Validation rule, Manual validation rule, Automated rule or Table set rule

  • A 'Validation rule' is an assertion without any impact on the system and outputs a Boolean value that indicates whether rule execution succeeded or failed. The 'Validation rule' executes upon creation, modification or deletion of a record.

  • A 'Manual validation' rule is an assertion without any impact on the system and outputs a Boolean value that indicates whether rule execution succeeded or failed. This type of rule is executed through an action taken by a user either at the data set or table level using the standard validation service.

  • An 'Automated rule' can modify data and outputs a Boolean value that indicates whether rule execution succeeded or failed. This type of rule executes upon creation, modification or deletion action of a record. If the automated rule raises an error, it interrupts the trigger, displays an error message and aborts the transaction.

  • A 'Table set' rule can create, modify or delete data. Alternatively, it can be an assertion without any impact on the data value. This type of rule is executed through the 'Execute rules' service either at the level of a data set or a table and outputs a Boolean value that indicates whether execution succeeded or failed.

Active

If set to 'True': the rule can execute.

If set to 'False': the rule is deactivated and cannot execute even if all other execution conditions are valid (execution context, rule set is active).

Mandatory

  • The field Mandatory is displayed only if the rule type is "Table set rule".

  • The default value of this field is "No".

  • If the value is set to "No", user can select/unselect the rule.

  • If the value is set to "Yes", the created table set rule is checked automatically and user cannot edit.

Severity

The type of error message displayed, either Warning or Error.

Message

The message displayed when an error or warning is raised.

Script

You enter the script for your rule here. The Scripting Language used by the add-on is based on JavaScript and simplifies the rule definition process. However, when running against a high volume of data, performance may be reduced. So, careful consideration must be put into the decision on whether to use Java or a script.

Java Implementation

This group field defines:

  • The implementation in java

  • This implementation's input/output

  • This implementation's parameters

Rule name

The list of available rules. This list populates automatically through a Java introspection of the rules implementation (refer to the Java doc).

Object class

Business object on which the rule can be applied. This information is for documentation only. This is not the table name. For example, the "Employee" Object class can be related to several tables, such as: Employee, Third party, Salaried employee, etc.

Input data

Read-only parameters controlled and used by the add-on to execute the rule.

Output data

The read-only result data.

Property data

These are parameters that can be modified at the configuration level, and used as input data for rule execution.

Dependency

This group defines all dependencies for this field.

Mode

You can choose from three dependency modes:

  • Local dependency: In this mode, the current constraint's validation result depends on the underlying node's local value. Only modification of this local value affects the validation result.

  • Explicit dependencies: In this mode, the current constraint's validation result depends on source node updates that you explicitly specify. Only local updates and not external events affect the validation result.

  • Unknown dependencies (default mode): In this mode, the current constraint's validation result depends on unknown sources or events (for example, data stored in an external system). This is the default mode and enabled if you do not use either of the other dependency types, or if the element containing this constraint is computed by a value function.

Explicit dependencies

This group allows you to define explicit dependencies. You can add multiple dependencies by clicking the '+' icon.

Dependency

This group is used for defining explicit dependencies only. It displays when you select the 'Explicit dependencies' mode.

Event

You can use the following seven events that define an explicit dependency:

  • Dependency to modify node: Specifies that the validation result of the current constraint depends on the value of the specified source node in the same record.

  • Dependency to insert and delete record: Specifies that the validation result of the current constraint depends on the insertions and deletions of the specified table node.

  • Dependency to insert delete and modify node: Specifies that the validation result of the current constraint depends on insertions, modifications and deletions on the specified node.

  • Dependency to insert and delete in other instance: Specifies that the validation result of the current constraint depends on the insertions and deletions of the specified table node of a given instance.

  • Dependency to insert delete and modify in other instance: Specifies that the validation result of the current constraint depends on the insertions, modifications and deletions on the specified node in a given data set.

  • Dependency to insert and delete in specific data space: Specifies that the validation result of the current constraint depends on the insertions and deletions of the specified table node of a given data set in a specific data space.

  • Dependency to insert delete and modify in a specific data space: Specifies that the validation result of the current constraint depends on the insertions, modifications and deletions on the specified node in a given data set in a specific data space.

The following four possible fields display depending on the event you select: 'Data space', 'Data set', 'Table' and 'Field'.

Data space

If you set the 'Event' field to one of values presented below, this field displays:

  • Dependency to insert and delete in other instances

  • Dependency to insert, delete and modify in other instances

  • Dependency to insert, and delete in a specific data space

  • Dependency to insert, delete and modify in a specific data space

Data set

If you set the 'Event' field to one of values presented below, this field displays:

  • Dependency to insert and delete in other instances

  • Dependency to insert, delete and modify in other instances

  • Dependency to insert and delete in a specific data space

  • Dependency to insert, delete and modify in a specific data space

Table

If you set the 'Event' field to one of values presented below, this field displays:

  • Dependency to insert and delete record

  • Dependency to insert, delete and modify node

  • Dependency to insert and delete in other instances

  • Dependency to insert, delete and modify in other instances

  • Dependency to insert and delete in a specific data space

  • Dependency to insert, delete and modify in a specific data space

Field

If you set the 'Event' field to one of values presented below, this field displays:

  • Dependency to modify node

  • Dependency to insert, delete and modify node

  • Dependency to insert, delete and modify in other instances

  • Dependency to insert, delete and modify in a specific data space

Classifying business rules

Rules can be organized into a classification scheme making their management easier. A rule can be associated to one to many domain of rules.

Property

Definition

Domain of rules

A domain of rules configured in the reference 'Domain of rules' table.

Rule

A rule configured in the 'Rule' table. This rule is attached to the domain.

Defining Rules set content

You can group individual rules into a 'Rules set' and execute multiple rules at the same time. The 'Rules set content' lets you define rules contained in a 'Rules set'.

Property

Definition

Rules set

A reference to a 'Rules set'.

Rule

A reference to a rule that is integrated into the 'Rules set'. All rules contained in a 'Rules set' must be attached to the same Data Element Concept (D.E.C.). Therefore, the list of rule selections is limited to those related to a single D.E.C. The referenced D.E.C. is determined by the first rule in the list.

Order

The order of rules contained in the 'Rules set'. This order manages the rule's execution sequence. You can rearrange rules using the 'move up', 'move down' and 'move to position' services in the 'Rule set hierarchy' data hierarchy.

Active rule

This property is inherited from the 'Is active' property configured in the 'Rule' table. It can be overwritten to adapt the property in the context of the rules set content.

If set to 'True': the rule can be executed.

If set to 'False': the rule is deactivated and cannot be executed even if all other execution conditions are valid (execution context, rule set is active).

'Business rules execution' group

The tables in the 'Business rules execution' group allow you to define the context for rule execution.

Using the 'Rule execution' table to configure business rule execution

A record in the 'Rule execution' table applies to either a business rule or multiple rules contained in a 'Rules set'. You can configure an event that determines when rule execution occurs (Ex. On demand, After create, etc.). The D.E.C. on which the rules execute is defined in the rule definition. The following table lists 'Rule execution' properties and their definitions:

Property

Definition

Code

Any naming convention can be used except the prefix '[ON]' which is reserved by the add-on for predefined rule execution.

Example: [ON] Create Account

Table

The Data Element Concept (D.E.C.) on which the rule executes.

The value of 'Rule' and 'Rule set' will be filtered accordingly.

Rule

The rule to execute. If this property is configured, you cannot define the 'Rules set' property.

After you select a rule, the 'Event' field's value filters accordingly.

Rules set

The 'Rules set' to execute. If this property is configured, you cannot define the 'Rule' property.

Execution context

This field allows you to choose: 'No context', 'Use Script' and 'Use Java implementation' for the execution context. The value 'Use simple expression' only pertains to old data and displays after the migration process.

Active

If set to 'True': the Rule execution can execute.

If set to 'False': the Rule execution is deactivated and cannot execute, even if all other execution conditions are valid.

Validity date

The first date that the Rule execution can be executed.

Expiry date

The date that you can no longer execute the Rule execution, even though its 'Is active' property is set to 'True'.

Event

The event that launches the Rule execution (refer to the reference table 'Event'). These events are aligned with triggers:

  • Before create → HandleBeforeCreate

  • Before update → HandleBeforeModify

  • Before delete → HandleBeforeDelete

  • After create → HandleAfterCreate

  • After update → HandleAfterModify

  • After delete → HandleAfterDelete

This means that 'before' is used to modify a record before the save, and 'after' is used to execute operations after the save. But if both are in same transaction and an error is raised the save is aborted.

In the current version of the add-on, you manually have to select the event. In a future version, automatic selection of possible events will be available.

To select the event:

  • 'After' for the 'Automated rule' rule type. This rule type can modify the record before it is saved by the system, and any other information beyond the current record. If the rule raises an error, the save is aborted.

  • 'Before' for the 'Validation rule' rule type. This type of rule cannot modify the record and is executed before the system saves the record. If a validation rule raises an error, the save is aborted.

  • 'On demand' is used with the 'Manual validation rule' and 'Table set rule' rule types. This event allows you to execute the rules through the ' validation service' and the 'Execute rules' service, respectively.

  • 'On constraint' is used with the 'Validation rule'. This event allows you to execute validation rules using a constraint set on a field.

Setting 'On demand' on a 'Automated rule' or 'Validation rule' type ensures that this rule is not automatically executed.

Setting 'After' or 'Before' on a 'Manual validation rule' or 'Table set rule' type ensures that this rule is not automatically executed.

When rule execution is configured in a rules set that includes different rule types, the event to select must be prioritized as shown below:

  • The 'Event' is selected by the priority first of the 'Automated rule', and then of the 'Validation rule'.

  • For example, a rules set can contain all four rule types: 'Manual validation rule', 'Validation rule', 'Automated rule' and 'Table set rule'. If the 'Event' in this case, is After or Before then only 'Automated rule' and 'Validation rule' are executed. If the 'Event' is 'On demand' then only 'Manual validation rule' and 'Table set rule' are executed.

Data set execution

One to many data sets can be selected as a execution context. This means that rule execution happens only if the execution is requested in the defined data set(s). It is possible to use the special tokens '[All data spaces]' and '[All data sets]'.

User profile

This property allows you to restrict rule execution for the selected user-profiles. This is not applied to 'Manual validation' rule types that are executed through the validation report service.

Script

You enter the script for your rule here. The Scripting Language used by the add-on is based on JavaScript and simplifies the rule definition process. However, when running against a high volume of data, performance may be reduced. So, careful consideration must be put into the decision on whether to use Java or a script. See the Scripting Language for more information.

Java Implementation

This group field defines:

  • The implementation in java

  • This implementation's input/output

  • This implementation's parameters

Rule name

The list of available rules. This list populates automatically through a Java introspection of the rules implementation (refer to the Java doc).

Object class

Business object on which the rule can be applied. This information is for documentation only. This is not the table name. For example, the "Employee" Object class can be related to several tables, such as: Employee, Third party, Salaried employee, etc.

Input data

Read-only parameters controlled and used by the add-on to execute the rule.

Output data

The read-only results data.

Property data

You can modify these parameters at the configuration level and use them as input data for rule execution.

Context

A context is used to associate a Rule execution with one to many Simple expression(s). Only simple expressions related to the same Data Element Concept as the 'Rule execution' can be selected in the configuration.

Special Notation

/100002010000000E0000000E86672C34.png

From version 1.3.0. of the add-on, the 'Context' table is only used for backward compatibility. Its permission level is set to read-only if it previously contained data, if not, it is hidden.

Property

Definition

Rule execution

A rule execution on which the context is defined.

Simple expression

A simple expression that defines a constraint applied to the fields of the Data Element Concept declared for rule execution.

Logical operator

A logical operator used to combine two simple expressions. The logical operator of the first simple expression is configured to 'Void' or 'Not'.

Order

Displays the simple expression order. When more than one simple expression is configured, their order and associated 'Logical operator' determine flow.

You can manage simple expression order in the data hierarchy view 'Context by D.E.C. and Rule execution'.

Simple expression

A 'Simple expression' is used by the 'Context' table and defines the conditions under which rules can be executed.

Special Notation

/100002010000000E0000000E86672C34.png

From version 1.3.0. of the add-on, the 'Simple expression' table is only used for backward compatibility. Its permission level is set to read-only if it previously contained data, if not, it is hidden.

Property

Definition

Code

Any naming convention can be used except the prefix '[ON]' which is reserved by the add-on for predefined simple expressions.

Example: [ON] Age greater than 50

Name

Any naming convention.

Table

The Data Element Concept on which the simple expression is built. By default, this is a table.

Field

A Data Element Concept field that is used to build the first part of the simple expression.

Comparison operator

A list of comparison operators. The selections populated in the list depend on the 'Field' selected.

Value

The 'Value' property can be used to build the second part of the simple expression and is a predefined value to compare against the 'Field' value. You cannot use the 'Value' property and the 'Field 2' property in the same simple expression.

Field 2

The 'Field 2' property can be used to build the second part of the simple expression and compares the value of the 'Field' property with the value specified in 'Field 2'. You cannot use the 'Value' property and the 'Field 2' property in the same simple expression.

Implementation - Sometimes configuration requirements for a simple expression go beyond using the 'Field', 'Comparison operator' and 'Field 2' properties. In this type of situation you can configure a rule as a simple expression. The rule's output data enforces a standard interface (refer to the Java doc).

Rule name

The name of the selected rule. This list populates automatically through a Java introspection of the rules implementation (refer to the Java doc).

Object class

Business object on which the rule can be applied. This information is for documentation only. This is not the table name. For example, the "Employee" Object class can be related to several tables, such as: Employee, Third party, Salaried employee, etc.

Input data

Read-only parameters used to execute the rule that are under the full control of the add-on.

Output data

Read-only results data.

Property data

Modifiable parameters used as input data for rule execution.

Logging level

This group contains logging mechanism configuration settings and is hidden in the rule portfolio snapshot (publication of rules' configuration).

Business rules logging

This record contains the properties to configure business rules logging.

Property

Definition

Trace activation

If set to 'True': Logging is active.

If set to 'False': Logging is not active.

This property's default value is 'False'.

Automatic archive

If set to 'True': archives are automatically created when the maximum number of logs allowed is reached.

If set to 'False': the system will not create automatically archives file after creating the log data.

This property's default value is 'False'.

Stack trace size (in records)

The maximum number of logs allowed before the automatic archive process begins archiving logs or overwriting older ones.

Permission rules logging

This record contains the properties to configure permission rules logging.

Property

Definition

Trace activation

If set to 'True': Logging is active.

If set to 'False': Logging is not active.

This property's default value is 'False'.

Automatic archive

If set to 'True': archives are automatically created when the maximum number of logs allowed is reached.

If set to 'False': the system will not create automatically archives file after creating the log data.

This property's default value is 'False'.

Stack trace size (in records)

The maximum number of logs allowed before the automatic archive process begins archiving logs or overwriting older ones.

'Permission rules' group

The tables in the 'Permission rules' group allow you to define permission rules, permission rules sets and permission rule classification.

Configuring a permission rule

You can base rule configuration on permission rules and use Java or a script to implement the configuration. Predefined Java-implemented rules are ready-to-use and require no specific programming knowledge from end-users. However, using a script requires Scripting Language knowledge for implementation and users should possess at least basic programming knowledge. See the Scripting Language for more information.

A 'Rule' allows you to set Hidden, Read-Only or Read-Write permissions and apply them to a table, record, field, data set or service.

Property

Definition

Code

Any naming convention can be used except the prefix '[ON]' which is reserved by the add-on to provide predefined rules.

Example: [ON] Rule 01

Implementation type

There are 3 implementation types:

  • Use script: you create the rule using a script.

  • Use Java implementation: you use Java implementation to create the rule.

  • Use Classic access rule: you use your own programmatic access rule to create a rule. This type is used to create access permission rule only.

Name

A required, editable field that displays the 'Rule' name. You can use any naming convention.

Description

An optional, editable field where you can enter a description for the 'Rule'.

D.E.C. attachment

The selected Data Element Concept (D.E.C.) on which the rule executes.

Scope

Scope of permission rule.

Type

There are 2 supported types for permission rules:

  • An 'Access permission rule' manages node permissions, namely a data set, table or field. This type of rule determines whether or not the node is Hidden, Read-Only or Read-Write.

  • An 'Action permission rule' manages service permissions. This type of rule controls whether or not a given service can be used in the current context (displays or hides the service).

Active

If set to 'True': the rule can execute.

If set to 'False': the rule cannot execute even if all execution conditions are valid (execution context, rule set is active).

Script

You enter the script for your rule here. The Scripting Language used by the add-on is based on JavaScript and simplifies the rule definition process. However, when running against a high volume of data, performance may be reduced. So, careful consideration must be put into the decision on whether to use Java or a script.

Java Implementation

This group field defines:

  • The implementation in java

  • This implementation's input/output

  • This implementation's parameters

Rule name

A list of the available rules. This list populates automatically through a Java introspection of the rule implementation (refer to the Java doc).

Object class

Displays the name of the business object class on which the rule implementation is applied. This information is for documentation only. This should not be a specific name of a table, field, record, data set or service on which the rule is applied, but a generic identification, namely: Table, Field, Service, etc.

Input data

These read-only parameters are used for rule execution and are fully under control of the add-on.

Output data

Read-only result data.

Property data

These parameters can be modified at the configuration level and used as input data for rule execution.

Classic access rule

Enter the class path of the programmatic access rule you want to execute.

Note: Your classic access rule has to satisfy the following conditions:

-It has to implement the AccessRule interface.

-It must have a no-argument constructor.

Access rule

Class path of your programmatic access rule.

Rule classification

A rule can be associated with one to many 'Domain of rules'. This enables you to organize rules into any classification scheme and simplifies their management.

Property

Definition

Domain of rules

A domain of rules configured in the 'Domain of rules' reference table .

Rule

A rule configured in the 'Rule' table. This rule is attached to the 'Domain of rules'.

Rules set content

You can group individual rules into a 'Rules set' which allows multiple rules to execute at the same time. The 'Rules set content' lets you define the rules contained in a 'Rules set'.

Property

Definition

Rules set

The name of the referenced 'Rule set'.

Rule

The name of the 'Rule' that is added to the rules set.

All rules in a 'Rules set' are attached to the same Data Element Concept (D.E.C.). Therefore, you can only select rules that are attached to the first listed rule's D.E.C.

Order

The order of rules contained in the 'Rules set'. This order manages the rule's execution sequence. You can rearrange rules using the 'move up', 'move down' and 'move to position' services in the 'Rule set hierarchy' data hierarchy.

Active rule

This property is inherited from the 'Is active' property configured in the 'Rule' table. It can be overwritten to adapt to the property in the context of the rules set.

If set to 'True': the rule can be executed.

If set to 'False': the rule is deactivated and cannot be executed even if all other execution conditions are valid (execution context, rule set is active).

'Permission rules execution' group

The 'Permission rules execution' group allows you to define contexts to execute a permission rule or a permission rules set.

Using the 'Rule execution' table to configure permission rule execution

A record in the 'Rule execution' table can be an executable permission rule or a 'Rules set'. The rule definition determines the D.E.C. on which the rules are executed.

Property

Definition

Code

Any naming convention can be used except the prefix '[ON]' which is reserved by the add-on for predefined rule execution.

Example: [ON] Create Account

D.E.C. attachment

The Data Element Concept (D.E.C.) on which the rule executes. The value of 'Rule' and 'Rules set' will be filtered accordingly.

Rule

Displays the rule to execute. This property cannot be used in combination with the 'Rules set' property.

Rules set

Displays the 'Rules set' to executed. This property cannot be used in combination with the 'Rule' property.

Execution context

This field allows you to choose: 'No context', 'Use Script' and 'Use Java implementation' for the execution context. The value 'Use simple expression' only pertains to old data and displays after the migration process.

Active

If set to 'True': this configuration can execute.

If set to 'False': this configuration is deactivated and cannot execute even if all other conditions of the execution are valid.

Validity date

The date that you can execute the "Rule execution".

Expiry date

The date that you can no longer execute the "Rule execution", even if its 'Is active' property is set to 'True'.

Data set execution

One to many data set(s) can be selected as an execution context. This means that the rule execution happens only if the execution is requested in the defined data set(s). It is possible to use the special tokens '[All data spaces]' and '[All data sets]'.

User profile

This property allows you to restrict the execution of rules based on the selected user-profile. This does not apply to 'Manual validation' type rules that are executed through the validation report service .

Script

You enter the script for your rule here. The Scripting Language used by the add-on is based on JavaScript and simplifies the rule definition process. However, when running against a high volume of data, performance may be reduced. So, careful consideration must be put into the decision on whether to use Java or a script. See the Scripting Language for more information.

Java Implementation

This group field defines:

  • The implementation in java

  • This implementation's input/output

  • This implementation's parameters

Rule name

The list of available rules. This list populates automatically through a Java introspection of the rules implementation (refer to the Java doc).

Object class

Business object on which the rule can be applied. This information is for documentation only. This is not the table name. For example, the "Employee" Object class can be related to several tables, such as: Employee, Third party, Salaried employee, etc.

Input data

Read-only parameters controlled and used by the add-on to execute the rule.

Output data

The read-only results data.

Property data

These parameters that can be modified at the configuration level, and used as input data for rule execution.

Context

A context is used to associate a Rule execution with one to many Simple expression(s). Only simple expressions related to the same Data Element Concept as the 'Rule execution' can be selected for configuration.

Special Notation

/100002010000000E0000000E86672C34.png

From version 1.3.0. of the add-on, the 'Context' table is only used for backward compatibility. Its permission level is set to read-only if it previously contained data, if not, it is hidden.

Property

Definition

Rule execution

The rule execution on which the context is defined.

Simple expression

The simple expression defining a constraint applied to the fields of the Data Element Concept that has been declared for rule execution.

Logical operator

A logical operator used to combine two simple expressions. The logical operator of the first simple expression is configured to 'Void' or 'Not'.

Order

The order of the simple expression. When many simple expressions are configured, their flow is defined by the order and the associated 'Logical operator' (refer to the next property).

The order is managed through the data hierarchy view 'Context by D.E.C. and Rule execution'. The 'move up', 'move down' and 'move to position' are available from this view.

Simple expression

A 'Simple expression' is used by the 'Context' table to define the rule execution conditions.

Special Notation

/100002010000000E0000000E86672C34.png

From version 1.3.0. of the add-on, the 'Simple expression' table is only used for backward compatibility. Its permission level is set to read-only if it previously contained data, if not, it is hidden.

Property

Definition

Code

Any naming convention can be used except the prefix '[ON]' which is reserved by the add-on for predefined simple expressions.

Example: [ON] Age greater than 50

Name

Any naming convention.

Table

The Data Element Concept on which the simple expression is built. By default, this is a table.

Field

The Data Element Concept field used to build the first part of the simple expression.

Comparison operator

A list of comparison operators automatically populated depending on the type of D.E.C. field selected.

Value

The 'Value' property is used to build the second part of the simple expression. This is a predefined value to compare with the 'Field' value. When this property is used then the 'Field 2' property is no longer available.

Field 2

The 'Field 2' property is used to build the second part of the simple expression. The value of the 'Field' property is compared with the 'Field 2' value. When this property is used then the 'Value' property is no longer available.

Implementation - Sometimes configuration requirements for a simple expression go beyond using the 'Field', 'Comparison operator' and 'Field 2' properties. In this type of situation you can configure a rule as a simple expression. The rule's output data enforces a standard interface (refer to the Java doc).

Rule name

A list of the available rules. This list populates automatically through a Java introspection of the rules implementation (refer to the Java doc).

Object class

Business object on which the rule can be applied. This information is for documentation only. This is not the table name. For example, the "Employee" Object class can be related to several tables, such as: Employee, Third party, Salaried employee, etc.

Input data

Read-only parameters used for rule execution and are fully controlled by the add-on.

Output data

Read-only results data.

Property data

These parameters can be modified at the configuration level and used as input data for rule execution.

Reference data

The 'Reference data' group contains the reference tables' definition.

Domain of rules

You can make rule management easier by using a 'Domain of rules' to classify rules. A 'Domain of rules' is differentiated from a 'Rules set' in that it is used only as a classification scheme and not at run-time to execute multiple rules at the same time.

Property

Definition

Code

Any naming convention can be used except the prefix '[ON]' which is reserved by the add-on for predefined 'Domain of rules'.

Example: [ON]Hyperion Account dimension

Name

The 'Domain of rules' name. You can use any naming convention.

Domain of rules hierarchy

You can use the 'Domain of rules hierarchy' to arrange 'Domain(s) of rules' and further facilitate classification.

Property

Definition

Parent domain

The 'Domain of rules' selected as the parent domain out of the available 'Domains of rules'.

Child domain

The 'Domain of rules' child. When there are many children, a child's position is configured through the data hierarchy view 'Domain hierarchy view' available on the 'Domain of rules' table. Their position can be adjusted using the 'move up', 'move down' and 'move to position' services.

Business rules set

A 'Business rules set' is a defined group of rules that can be executed together. 'Business rules set' content is defined in the 'Rules set content' table.

Property

Definition

Code

Any naming convention can be used except the prefix '[ON]' which is reserved by the add-on for predefined rules sets.

Example: [ON] Validate account

Name

The name of 'Business rules set'. You can use any naming convention

Description

Text defining the 'Business rules set' description. You can use any naming convention.

Active

If set to 'True': the rule set is active and the rules are executed if the execution context is valid.

If set to 'False': the rule set is inactive and cannot be executed even if the execution context is valid.

Permission rules set

A 'Permission rules set' defines a group of rules that can be executed together. 'Permission rules set' content is defined in 'Rules set content' table.

Property

Definition

Code

The name of the 'Rules set code'. Any naming convention can be used except the prefix '[ON]' which is reserved by the add-on for predefined rules sets.

Example: [ON] Validate account

Name

The name of 'Permission rules set'. You can use any naming convention

Description

Text defining the 'Permission rules set' description. You can use any naming convention.

Active

If set to 'True': the rule set is active and the rules are executed if the execution context is valid.

If set to 'False': the rule set is inactive and cannot be executed even if the execution context is valid.

Restriction mode

A property that allows you to combine the results of the rule set's permission rules:

  • Most restricted - takes the most restricted result in the rule set.

  • Most unrestricted - takes the most unrestricted result in the rule set.

Data set

You can use a data set to limit rule execution. The following table lists data set properties and their definitions:

Property

Definition

Code

The data set name. You can use any naming convention.

Data space

The data space in which the rules are executed.

This property is used as a context of the rules execution. Refer to the 'Rule execution' table.

Data set

The data set in which the rules are executed. This property is used as a context of the rules execution. Refer to the 'Rule execution' table.

Description

A description of the data set.

Event

An event initiates rule execution. The predefined events provided by the add-on allow you to manage any type of need. Refer to the 'Rule execution' table to see 'Event' definitions.

Property

Definition

Code

Any naming convention can be used except the prefix '[ON]' which is reserved by the add-on for predefined events. Example: [ON] Before create

Name

The 'Event' name. You can use any naming convention.

Description

Text defining the 'Event' description. You can use any naming convention.

Rule type

Refer to the online help for more information on the 'Rule type' table.

Property

Definition

Code

Any naming convention can be used except the prefix [ON] that is reserved by the add-on to provide predefined rule types. You can choose from four predefined rule types:

[ON] Validation rule: executed by a trigger. This type of rule cannot modify data.

[ON] Manual validation rule: executed by the user through the validation service.

[ON] Automated rule: executed by a trigger. This type of rule can modify data.

[ON] Table set rule: executed by the user through the 'Execute rules' service. This type of rule can modify the data.

[ON] Access permission rule: manages node (data set, table or field) permissions. This type of rule controls whether or not the node is Hidden, Read-Only or Read-Write.

[ON] Action permission rule: manages service permissions. This type of rule determines whether or not the given service can be used (displayed or hidden) in the current context.

Name

The 'Rule type' name. You can use any naming convention.

Description

Text defining the 'Rule type' description. You can use any naming convention.

Severity

The type of error message displayed, either Warning or Error.

Property

Definition

Code

There are two severity levels:

  • Warning: the error message displays as a warning. Only manual validation rules can rely on this error type.

  • Error: the error message displays as an error. Any type of rule can raise an error.

Name

You can use any naming convention.

Description

You can use any naming convention.

D.E.C. type

This table defines the type of data element concept.

Field

Definition

Code

Any naming convention can be used except the prefix '[ON]' that is reserved by the add-on to provide the default D.E.C. types.

Example: [ON] Table

Name

Name of the D.E.C. type.

Example: Table

Description

Text defining the 'D.E.C. type' description. You can use any naming convention.

Comparison operator

Defines the operator which is used to compare values.

Field

Definition

Code

Any naming convention can be used except the prefix '[ON]' that is reserved by the add-on to provide the predefined comparison operators.

Example: [ON] Greater than

Name

The 'Comparison operator' name. You can use any naming convention.

Description

The 'Comparison operator' description. You can use any naming convention.

Logical operator

Defines the operator that is used to combine the logic value.

Field

Definition

Code

Any naming convention can be used except the prefix '[ON]' that is reserved by the add-on to provide predefined logical operators.

Example: [ON] and

Name

The 'Logical operator' name. You can use any naming convention.

Description

The 'Logical operator' description. You can use any naming convention.

Deleting contexts and simple expressions

The 'Context' and 'Simple expression' tables remain to ensure backwards compatibility with versions of the add-on prior to the GA 1.3.0 release. Due to read-only or hidden access permissions, you cannot create new records in these tables. However, you can still delete these records as existing contexts and expressions become obsolete.

To delete a context or simple expression, navigate to the relevant table, open the 'Actions' drop-down menu, and select either the 'Delete context' or 'Delete simple expression' service.