Validation of Single Tables - Gnorion/BizVR GitHub Wiki
When you are looking at the DRD and invoke Validation, ALL the tables are sent in the export file (which is what VV needs) And, when you are looking at a single decision table on the screen and then invoke the validator, only that table should be in the json export file (along with the inputs[] array).
Anyway when dealing with large models its going to be essential to work your way through table by table:
- create a table
- syntax check a table
- validate a table
- generate test cases for a table
- execute a table
- and so on up the model hierarchy until you get to the top.
Also if we can validate an individual table it will be much faster (and could possibly be done as the user is editing the table - or when they save it). Parsing the json is by far the longest part of the process so if we can reduce that to just the table(s) of interest that would be good.
Same principal when the user is a bit higher in the hierarchy of tables - VV only needs the tables that are in the dependency tree for the decision table of interest (and only the inputs for those tables that are not supplied by other tables or expressions)
And when they finally get to the top of the tree they can do one last validation to ensure there are no conflicts across different branches of the tree.
This will also help to keep the number of messages to a manageable amount - if you validate an entire decision the number of messages can be overwhelming because a lot of the errors are interdependent. Fix one simple error at the bottom (like a typo on a variable name) and many messages will disappear if they were dependent on that variable.