Validations Screen

A comprehensive guide to the Validations Screen in Fynapse.

Overview

This article provides information on how to create custom validations for your data.

You can create validations for your data, which will allow for any set of source data to undergo simple validation or combination checking. Such user-defined validations are general, i.e. they refer to all Fynapse modules. You can define validations for Defined Entities and Protected Entities.

The subject of a validation can be:

  • Data within the given Entity
  • Data appended to the Entity by references in the process of enrichment

This means you can create validations verifying the reference criteria established for an Entity. Such validation references are sets of rules that determine which data from which Entity is used to enrich the base Entity is validated within a validation. This will create more complex validation rules for your data.

As a result, you can validate whether the relations you created within your data structure meet the defined criteria.

The aim of validations is to pre-empt failures that could occur later within the system, e.g.:

  • Catch the data validation errors or combination failures on the input source record
  • Re-check against the current set of rules when feeding external systems

For more details on how to configure validations refer to Validations.

Validations Screen

The Validations screen, which can be found after clicking the Configuration in the menu, allows you to browse through the list of validations you created in Fynapse.

The screen comprises a grid, which contains:

  • Name - a name of the validation
  • Entity - a name of the Entity for which the validation was created
  • Type - a type of the validation

    Note that Value type validation is denoted as ENUM in the JSON configuration.

  • Actions - this column contains a button that allows you to download the details of a given validation
1{
2 "baseEntity": "JournalLineUnposted",
3 "name": "Product Type allowed values",
4 "type": "ENUM",
5 "attributeName": "productType",
6 "values": [
7 "A"
8 ]
9}
  • Details - this column contains a chevron which will redirect you to the Details screen, where you can see the details of the given validation:
    • Validation setup - where you can see:
      • Validation name - a unique name of the validation
      • Validation entity - the Entity for which the validation was created
      • Validation type - a type of the validation
    • Rule syntax - a definition of the validation

A Mandatory type validation with the following definition:

1{
2"baseEntity": "simpleBusinessEvent",
3"name": "Cost Centre not empty for GL Account 4000",
4"type": "MANDATORY",
5"when": {
6 "logicalOperator": "AND",
7 "operands": [
8 {
9 "attributeName": "glAccount",
10 "attributeDetails": {
11 "attributeLabel": "GL Account"
12 },
13 "condition": "inList",
14 "values": [
15 "4000"
16 ]
17 }
18 ]
19},
20"attributeName": "costCentre",
21"attributeDetails": {
22 "attributeLabel": "Cost Centre"
23}
24}

would be represented on the Validation Details screen like this:

MandatoryValidation
Mandatory Type Validation Example

A Value type validation with the following definition:

1{
2"baseEntity": "simpleBusinessEvent",
3"name": "GL Account & Company matrix",
4"type": "ENUM",
5"when": {
6 "logicalOperator": "AND",
7 "operands": [
8 {
9 "attributeName": "glAccount",
10 "attributeDetails": {
11 "attributeLabel": "GL Account"
12 },
13 "condition": "inList",
14 "values": [
15 "5100"
16 ]
17 }
18 ]
19},
20"attributeName": "company",
21"attributeDetails": {
22 "attributeLabel": "Company"
23},
24"values": [
25 "AS"
26]
27}

would be represented on the Validation Details screen like this:

ValueTypeValidation
Value Type Validation Example

A Mandatory type validation with the following definition:

1{
2"baseEntity": "simpleBusinessEvent",
3"name": "Company validation for BILLING1 sourceSystem",
4"type": "LOOKUP",
5"when": {
6 "logicalOperator": "AND",
7 "operands": [
8 {
9 "attributeName": "sourceSystem",
10 "attributeDetails": {
11 "attributeLabel": "Source System"
12 },
13 "condition": "inList",
14 "values": [
15 "BILLING1"
16 ]
17 }
18 ]
19},
20"entity": "organisationUnit",
21"namespace": "fynapse",
22"reference": [
23 {
24 "type": "ATTRIBUTE",
25 "referenceAttributeName": "organisationUnitIdentifier",
26 "attributeDetails": {
27 "attributeLabel": "Company",
28 "referenceAttributeLabel": "Organisation Unit Identifier"
29 },
30 "attributeName": "company"
31 },
32 {
33 "type": "CONST",
34 "referenceAttributeName": "organisationUnitIdentifierType",
35 "attributeDetails": {
36 "referenceAttributeLabel": "Organisation Unit Identifier Type"
37 },
38 "value": "Legal Entity"
39 }
40]
41}

would be represented on the Validation Details screen like this:

LookupValidation
Lookup Type Validation Example

The Validations screen also comprises a navigation pane, which contains:

ButtonDescription
validations button download_allThe Download all button allows you to download the details of all validations defined in Fynapse
validations button refreshThe Refresh button allows you to refresh the screen and check if any new validations were created