I have a massive form but I was able to recreate this situation even on a simple form.
You have a group inside a repeat
The group has a relevant on it based on a calculation field
Inside that group is a Required field
If you are on repeat with the Required field showing it will always trigger even when the field is filled out. If you go back to a repeat that does not show this field it will submit. So say you have a field that shows up every other repeat. If the form is sitting in the +2 repeat it will never submit. If you go back to repeat 1 and submit it works! No changing of values or anything. It is like it is seeing it as '' when you are on that repeat.
See attached form. Bug is in 3.3 and 3.4 beta.
Solved! Go to Solution.
We have just updated new 3.4 beta builds to EAC which include fixes for required questions when using relevant, constraints, and validation in repeats, as well as supporting expressions for required in all question types. There are several other important fixes in these builds too. Please test them out and let us know if you still have any remaining issues.
We just did another update on EAC with more fixes to required, constraints and repeats. Can you please test out the latest 3.5 beta builds to see if this fixes the problem with your surveys and provide any feedback.
Latest 3.5 beta builds are here: New Survey123 3.5 Beta Builds Announcement on EAC
I have one that may not be right. I have 3 fields all with the same drop down list. I have a constraint on to stop the values from being used twice. So 1<>2<>3. If I select the first one, then the second I repeat the value - I get no error. If I then change 3 - still no error. Edit more fields - still no error. I go all the way to the end and submit - error.
I thought before it was checking as soon as another field changed. Is this diff now or not working right? Also I thought at one point tabing to the next field would do it but not anymore.
That is correct and the expected behaviour now. The constraint and required validation will occur on form validation (send button) or repeat navigation and not changing focus on each field. This is to support the new inline validation and new error checking that occurs, both inside and outside repeat. This will avoid inline error messages appearing all over the form as every expression and input changes or when the form is first loaded.