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.
3.0 KiB
layout, title, nav_order, parent, grand_parent
| layout | title | nav_order | parent | grand_parent |
|---|---|---|---|---|
| default | Working Skim, Lock and Next | 12 | Case Management | Configuration |
🚀Speed up implementation with hands-on, face-to-face training from the developer.
Working Skim, Lock and Next
In practical life case management is intended for use by several users, and it is plausible that several user may try and take the case at exactly the same moment, thus causing duplication of work when users collide in the same case. For multi-user case working it is advisable to use the Skim function rather than the Fetch function. The skim function will automatically take the very first case qualifying for the Cases Workflow Filter, and open it in the case page, automatically setting the locked status and locked user to establish case ownership.
To invoke the Skim and Lock functionality, start by navigating to the Case page, selecting the All Open filter created elsewhere in this documentation:
When a Case Workflow Preset Filter is set (or it is expanded upon via the Advanced Filter) the filter is saved to the users session. The saving of the filter to the users session facilitates the functionality to move from case to case by clicking the Next button in the Case page, without needing to return to the cases page).
Notice the Skim button:
By clicking the Skim button, the filter will be applied in the background and the very first case record will be grabbed for presentation in the Case page:
Upon the presentation of the case in the Skim process, the case is immediately set to a Locked status, alongside the user having locked it:
Note that the Case Key Value combination is AccountID = Test5.
It should be noted that the cases workflow filter is showing only cases that have a Closed Status of Open, henceforth, if the Closed Status is changed to Closed, then it will no longer qualify for the cases workflow filter, nor Skim.
Closed Status is discussed in more detail later in the documentation, but for the purposes of this procedure, navigate to the drop down titled Closed Status:
Upon the Closed Status having been changed in the drop down, which will update the case record straight away, it should not no longer be eligible for that case preset filter:
Notice that the Next button is available, which had not been available on Fetch:
Click the Next button to run the cases workflow preset filter in the background and evaluate the next first matching case, fetching and immediately locking it:
Notice that the Case Key Value Combination has changed to AccountID = Test1, as the original case was updated to a closed status, thus no longer matching the cases workflow preset filter.
Locked can be used in a case workflow preset filter for the purpose of avoiding all but the most immediate concurrency on cases.







