Major bug fixes relating to the Redis implementation in Reprocessing and Search Key Cache were identified and fixed as part of the rekeying development. Included functionality to stop the Exhaustive training. Fixed the Unsupervised learning functionality in Exhaustive Training. Embedded the Mock Data CSV data into a class to make it compatible with Docker without needing to modify the Dockerfile (i.e, build). Included a new table that stores training data to enhance support capabilities for Exhaustive. Reintroduced and validated the Multitenancy functionality. Postgres is now fully deprecated in place of Redis for cache, and all implementations of the Interfaces for Postgres have been removed. No migrations exist to support this deprecation, and Postgres as a cache is now wholly unsupported. Removed the Indexing background thread, as Redis does not require it, given that it is a key-value pair database. Created a RedisCommandFlag Environment Variable to support Fire and Forget write to Redis in Invocation. Implemented functionality to Export, Peek and Download configuration environments using a secure, encrypted scheme. Created a permission to access the functionality via the user interface. Extensive database-based logging is included to provide for a comprehensive audit. Created functionality to Import the encrypted Export file inside a database transaction to ensure consistency. As Docker is now the primary deployment model, log4net instantiation has been moved to an approach that primarily uses programmatic instantiation of the ConsoleLogger and RollingFileAppender given Environment Variables. Implemented functionality to support remote \ mounted Log4Net XML Serialisation files for more advanced log4net configurations. Reintroduced access to counters via the user interface and created a permission. Took the opportunity to implement ReSharper linter suggestions. Disabled the Lock button across the whole application, with that functionality being reserved for future use. It is intended that locking happens programmatically on the basis of dependencies in future commits. Fixed several significant end-use bugs which became apparent during testing of the refactored code relating to case management and visualisations. Fixed certain other minor bugs that came up during testing. Brought documentation up to date for this commit. Brought the Docker Compose file up to date for this commit. Removed Redundant Environment Variables for this commit. Made the README file less verbose and unnecessary.
2.7 KiB
layout, title, nav_order, parent
| layout | title | nav_order | parent |
|---|---|---|---|
| default | Rule and Code Builder | 8 | Navigation |
🚀Speed up implementation with hands-on, face-to-face training from the developer.
Rule and Code Builder
Several pages in the platform rely on the construction of code and in most cases this is facilitated by a point and click construction tool. In most cases the code constricted is of vb.net fragment dialect, unless it is used for reporting, case management or Exhaustive training, in which case it is an SQL query fragment:
In the following example the Rule and Code Constructor is embedded in the Activation Rules page and has a comprehensive range of data available:
There are oftentimes two modes to create rules, being Builder (which is point and click) and Coder (which is the handcrafting of the vb.net). Clicking on the Coder tab will allow for the VB.Net code fragment to be handcrafted:
The Builder and Coder is available for the creation of VB.Net fragments in:
- Gateway Rules.
- Activation Rules.
- Inline Functions.
- Abstraction Rules.
For reasons of creating SQL fragments and not VB.Net fragments. Only the Builder is available in:
- Case Workflow Filters.
- Cases Search.
- Exhaustive Adaptation Class Definition.
An example of only the builder being available is as follows for Models >> Cases Workflows >> Cases Workflow Filter:
Only the Coder is available for the creation of VB.Net fragments in:
- Inline Functions.
- Abstraction Calculations.
An example of only the coder being available is as follows for Models >> References >> Inline Functions:
The default Coder value will be taken from the Builder, being the VB.Net fragment equivalent:
As typing, the freehand code will be continually parsed for integrity:
With errors being displayed in the tool tip along the coder guttering. Parsing will happen on the conclusion of each typing burst, until such time as the rule compiles:
To facilitate the development of Coder rules, completions are populated on each keypress, returning model configurations:
If the Coder diverges from what was originally created in the Builder, then the Builder tab will be disabled:
Clicking the Reset link will restore the Builder contents to its Coder representation:
Upon clicking Reset, the Coder will be overwritten to the parsed contents of the Builder, and the tab will become enabled once again:











