9.5.2       Scenarios Covered by the VTS

The VTS processes validations that are triggered in the following scenarios: cross-form checks, Mid-Study Changes, lab range changes, data imports, and patient moves.

Cross Form Checks

When the user saves a form, TrialMaster queues up all forms that have an edit check with a dependency on the form the user just saved. The VTS then processes those dependent forms in queue entry order and executes all edit checks on those dependent forms. If the execution causes any data change or fires any new validation, the VTS makes the appropriate change and saves the form, with appropriate audit entries ascribed to user “tmvalidation”.

This process may need to continue, for example if the VTS changes a data value and there are other forms with dependencies on the form being saved, then those other forms must be added to the queue. The VTS has “circuit breaker” logic to detect and stop loop conditions.

Mid-Study Changes (MSCs)

Changes can be made to forms in the middle of a trial. For example, new fields can be added, existing fields can be modified or removed; CodeLists can be modified; and/or edit checks can be changed. When an MSC is implemented, the VTS processes each specific form that has changed, and then finds all other forms that have dependencies on the changes and re-runs all validations.

Lab Range Changes

Lab ranges define the lowest and highest normal values for specific types of lab results. If results fall outside of a defined range, a validation is triggered and an “out of range” flag is raised. When a lab range is updated, the VTS queues all forms that reference that lab range, so that the out-of-range flag can be re-computed for each lab test.

The VTS does not change the status of the form to “Incomplete” after processing a lab range update, unless an “out of range” flag is triggered. If data is changed but remains within normal range, no flag is raised. However, a Change note is added.

Data Imports

When data is imported into TrialMaster, validations must be run on the imported data. If a form is created or modified by a file import, the VTS will process validations on that form. As long as no Invalid validations are triggered during the import, the VTS will mark the form as "Complete". Otherwise, the form will be left as “Incomplete”. Then the VTS will find all forms that depend on the new or modified form and process them as well.

Patient Moves

When a patient is moved from one site to another, the VTS will process all the forms for the moved patient and re-execute any edit checks referencing the new site. Typically, this includes the patient form, which usually generates a patient caption including the site number. If any validations on a given form come back as invalid, the form is set to “Incomplete”.

Discrepancies Task List

When a Valid or Required validation fails, a discrepancy is created and added to the Discrepancy task list in TrialMaster under Run > Tasks > Discrepancies. Users and/or roles assigned to this task list will be able to open each item in the list and address the invalid data. Once a user opens a form and corrects invalid data, the VTS re-queues the form and re-validates the data. If the discrepancy no longer exists on the form, it is removed from the Discrepancies task list.

Scenarios Not Covered by the VTS

The VTS does not validate forms with a status of “No Data”, “Deactivated”, or “Locked”. However, if the VTS determines that some change is required on a locked form (for example, new coding results), it adds that form to a task list “Locked iCRFs to Update”. An authorized user can then decide whether to allow the update to proceed or discard the pending update.