This query is in the context of OpenMRS HTML forms on 2.12 RefApp/ core 2.5.8. A form submission fails if the value of a Numeric concept is outside a specific range (which is part of the concept definition).
Setting the value of the Global property “validation.disable” to “true” is supposed to prevent server side validations of concept values during a form submit but it doesn’t seem to be working in spite of a server restart.
I was trying to avoid altering the concept definitions since quite a few of them have been imported from standard dictionaries. But, looks like that’s the only possible alternative.
Now, as suggested, the way forward would probably be to alter the concept definitions and handle the Data validation logic at the client end.
I would assume this validation is ensuring observations for concepts with absolute ranges defined don’t receive values outside of the absolute range (i.e., non-sensical values). In nearly all cases, absolute ranges should be liberally defined – i.e., avoid preventing edge cases that, although improbable, are physiologically possible and only prevent garbage data (e.g., a negative pulse or a respiratory rate of 1000 breaths per minute).
Can you provide the specific concept(s) causing your problem, their current absolute ranges, and the values you are trying unsuccessfully to submit?
The concepts being used are mostly from the CIEL dictionary, for instance, ‘CIEL:1132’.
The problem is not really with the ranges defined in the dictionary but with the handling of the logic when an incorrect value gets entered. In the case of single page HTML forms the in-built logic of OpenMRS works well. But, since we are using forms with multiple tabs, the in-built logic is insufficient. During form submission there is no way to know on which tab/ page the faulty entries are located.
As a solution, this is now being handled through additional Data validation scripts at the client end without altering the original concept definitions in any way.
Excellent. Validation at form submission helps ensure quality data. Adding client-side validation – preferably as the data are entered into the field for immediate feedback – makes for a better user experience.