4. Verifying the data model and uploading it
To upload a tag configuration to Litmus Production Record Database or, if in offline mode, create a SQL file, the Configurator will always verify the configuration done by the user first to make sure that on a technical level all values are correctly formatted.
NOTE: The Configurator will not verify if the event monitoring configuration makes sense or configured correctly according to what the user wanted to define.
The configurator will always verify the configuration first before publishing.
Users can run the verification also as a stand alone operation without publishing the data model using the Verify Configuration button.
In Online Modus, the user can be prompted multiple times, throughout the verification, to provide the SQL Authenticated Login user name and password.
The verification process for the event monitoring configurations is very complex and is conducted for each sheet individually.
The first sheet verified is the sheet Event_and_Trigger_Definition, as it is the basis for the sheet Event_Item_Definition.
The verification process will verify in the sheets:
- Event_and_Trigger_Definition
that data model node names are defined in the column labeled Production Record Data Model Node Name.
In the case that no data model node names are found, a prompt is shown to the user.
In case a specific row has no data model name set, a prompt is shown to the user.
As data model node names are required, the verification will be stopped.
The verification process will verify in the sheets:
- Event_and_Trigger_Definition
that event names are defined in the column labeled Event Name.
In the case that no event names are found, a prompt is shown to the user.
In case a specific row has no event name set, a prompt is shown to the user.
As event names are required, the verification will be stopped.
The verification process will verify in the sheets:
- Event_and_Trigger_Definition
that trigger condition names are defined in the column labeled Trigger Condition Name.
In the case that no trigger condition names are found, a prompt is shown to the user.
In case a specific row has no trigger condition name set, a prompt is shown to the user.
As trigger condition names are required, the verification will be stopped.
The verification process will verify in the sheets:
- Event_and_Trigger_Definition
that trigger tags are defined in the column labeled Trigger Tag.
In the case that no trigger tags are found, a prompt is shown to the user.
In case a specific row has no trigger tag set, a prompt is shown to the user.
As trigger tags are required, the verification will be stopped.
The verification process will verify in the sheets:
- Event_and_Trigger_Definition
that trigger conditions are defined in the column labeled Trigger Condition.
In the case that no trigger conditions are found, a prompt is shown to the user.
In case a specific row has no trigger condition set, a prompt is shown to the user.
As trigger conditions are required, the verification will be stopped.
The verification process will verify in the sheets:
- Event_and_Trigger_Definition
if combinations of data model name, event name and trigger condition name are unique.
While it is possible to reuse a Trigger Condition name for different events.
A specific Trigger Condition Name has to be unique in its combination with a specific Event Name and Data Model Node Name.
If the configurator does detect, that a specific combination has already be used, the user is prompted.
As combinations of data model name, event name and trigger condition name have to be unique, the verification will be stopped.
The duplicate row will have the three columns Production Record Data Model Node Name, Event Name and Trigger Condition Name be marked in red.
This allows the user to find the duplicate entry and correct it.
The verification process will verify in the sheets:
- Event_and_Trigger_Definition
if any entry has invalid ASCII characters. To learn more about which ASCII characters are allowed, review the section Restrictions on ASCII characters allowed to be used.
In the case that invalid characters are found, a prompt is shown to the user to inform them about the fact and request from the user to select the next action.
Users can either stop the verification using the No option or replace all invalid characters with and underscore "_".
Note: In Offline Mode, additional columns (Trigger Tag) are verified for invalid ASCII characters. If invalid characters are found in Offline Mode, the user will be inform them about the fact and request from the user to select the next action.
The verification process will verify in the sheets:
- Event_and_Trigger_Definition
the length of specific strings if they exceed the allowed maximum length.
Sheet | String | Maximum Length |
---|---|---|
Event_and_Trigger_Definition | Event Name | 50 |
Event_and_Trigger_Definition | Event Description | 256 |
Event_and_Trigger_Definition | Trigger Condition Name | 50 |
If a long string is found, the user is prompted.
The user can define if they want to auto trim the strings using the Yes option or stop the verification using the No option.
The verification process for the event monitoring configurations is very complex and is conducted for each sheet individually.
After the first sheet Event_and_Trigger_Definition has been verified with no errors, the sheet Event_Item_Definition is verified.
The verification process will verify in the sheets:
- Event_Item_Definition
that trigger condition names are defined in the column labeled Trigger Condition Name.
In the case that no trigger condition names are found, a prompt is shown to the user.
In case a specific row has no trigger condition name set, a prompt is shown to the user.
As trigger condition names are required, the verification will be stopped.
The verification process will verify in the sheets:
- Event_Item_Definition
that data model items and their hierarchy level are defined in the column labeled Hierarchy Level and Item.
In the case that no data model items are found, a prompt is shown to the user.
In case a specific row has no data model item set, a prompt is shown to the user.
As data model items are required, the verification will be stopped.
The verification process will verify in the sheets:
- Event_Item_Definition
that sources for the item values are defined in the column labeled Source of Item Value.
In the case that no sources for item values are found, a prompt is shown to the user.
In case a specific row has no source for the item value set, a prompt is shown to the user.
As a source for the item value is required, the verification will be stopped.
The verification process will verify in the sheets:
- Event_Item_Definition
that each item has a setting for their identifier status in the column labeled isIdentifier.
In the case that no item has a setting for its Identifier status, a prompt is shown to the user.
In case a specific row has no setting for the identifier status, a prompt is shown to the user.
As it is required to define if an item is an identifier or not, the verification will be stopped.
The verification process will verify in the sheets:
- Event_Item_Definition
that each item has a setting for when it will be collected in the column labeled Is the Item recorded for the NewEvent or the PreviousEvent .
In the case that no setting for when an item is to be collected has been found, a prompt is shown to the user.
In case a specific row has no setting for when the item is to be collected, a prompt is shown to the user.
The user can define if they want to set the default value of NewEvent or in case it is a calculation PreviousValue using the Yes option or stop the verification using the No option.
The verification process will verify in the sheets:
- Event_Item_Definition
that each item has either:
- a fixed value if the source is isConstant
- a tag item defined in Litmus Production Record Database if the source is ValeuFromTag or isCalcualtion
in the column labeled Item Value / Calculation .
In case a specific row has no value set, a prompt is shown to the user.
As it is required to know where the value is taken from for an item, the verification will be stopped.
The verification process will verify in the sheets:
- Event_Item_Definition
that each item which has a source set as isCalcualtion has a calculation type set in the column labeled Type of Calculation.
In case a specific row for an item which is a calculation has no calculation type set, a prompt is shown to the user.
As it is required to have the type of the calculation set, the verification will be stopped.
Test if an item set as calculation have a setting for which item is used to get the start time for the calculation duration
The verification process will verify in the sheets:
- Event_Item_Definition
that each item which has a source set as isCalcualtion has another item set which is used to get the start time of the duration required by the calculation set in the column labeled Item which provides the Start of the Time frame for a Calculation.
In case a specific row for an item which is a calculation has no setting for this column, a prompt is shown to the user.
As it is required to have an item set to provide the start time for the calculation set, the verification will be stopped.
Test if an item set as calculation have a setting for which item is used to get the end time for the calculation duration
The verification process will verify in the sheets:
- Event_Item_Definition
that each item which has a source set as isCalcualtion has another item set which is used to get the end time of the duration required by the calculation set in the column labeled Item which provides the End of the Time frame for a Calculation.
In case a specific row for an item which is a calculation has no setting for this column, a prompt is shown to the user.
As it is required to have an item set to provide the end time for the calculation set, the verification will be stopped.
The verification process will verify in the sheets:
- Event_Item_Definition
if any entry has invalid ASCII characters. To learn more about which ASCII characters are allowed, review the section Restrictions on ASCII characters allowed to be used.
In the case that invalid characters are found, a prompt is shown to the user to inform them about the fact and request from the user to select the next action.
Users can either stop the verification using the No option or replace all invalid characters with and underscore "_".
Note: In Offline Mode, additional columns (Hierarchy Level and Item, Item which provides the Start of the Time frame for a Calculation, Item which provides the End of the Time frame for a Calculation) are verified for invalid ASCII characters. If invalid characters are found in Offline Mode, the user will be inform them about the fact and request from the user to select the next action.
The verification process will verify in the sheets:
- Event_Item_Definition
the length of specific strings if they exceed the allowed maximum length.
Sheet | String | Maximum Length |
---|---|---|
Event_Item_Definition | Item Value / Calculation Note: Only if the source is set to isConstant | 256 |
If a long string is found, the user is prompted.
The user can define if they want to auto trim the strings using the Yes option or stop the verification using the No option.
To upload the configuration for new internal event monitoring or update an existing event monitoring configuration, the user will need to have a connection to the SQL Server as well as the databases LE_ProductionRecord in place.
To upload the configuration, the user does press the button Verify and Upload.
In Online Modues, throughout the process, the user can be prompted multiple times, throughout the verification, to provide the SQL Authenticated Login user name and password.
The Configurator will first run the verification process which was explained in the previous section.
Progress is shown by a progress bar.
Only if the Verification has found no errors or was stopped, will the configurator upload the configuration to Litmus Production Record Database.
Up on completing the upload, the user will be shown a summary of the SQL logs to be able to review if all items where correctly added to Litmus Production Record Database or if any errors occurred on the SQL side.
This log extract can be saved as a file using the Save Output to File button. The file will be stored in the same folder, where the file Litmus_Production_Record_Internal_Event_Configurator_V1.0.0.xlsm is located. The name includes the name of the user as well as the date and time of the upload.
Close SQL Out Put window to finish the configuration.
In offline mode, the user can create a SQL file which can be later executed using applications like SQL Management studio to create a new internal event monitoring or update an existing event monitoring configuration in Litmus Production Record Database.
To create the SQL file, the user does press the button Verify and Upload.
The Configurator will first run the verification process which was explained in the previous section.
Only if the Verification has found no errors or was stopped, will the configurator create the content of the file.
The user is then prompted to select the path where the file is stored as well as being able to modify the file name before saving it.
The result is a file with the ending ".sql".
Which can be executed using applications like SQL Server Management Studio.