@johnjohn123
You must check the Valid property of the form. A form will submit if you issue a SubmitForm regardless of the requirements. The difference is that the submit will then attempt to submit and then fail and then the for will show what is not valid.
But, there is nothing that stops you from submitting. But, checking if the form is Valid will allow you to check first. This is the primary purpose of the .Valid property of the form. .Value will be true if all of the fields in the form that have a Required property set to true also have something in the Update property. If the card is required and the update has a blank value, then the form will not be valid.
The formula provided should be setting your form property to Required. Simply setting to required will not stop the Submit. You need to check the .Valid.
The logic on the Required formula is this:
| CheckBox |
TextInput |
Radio |
Required |
| UnChecked |
Blank |
Unselected |
true |
| UnChecked |
Blank |
Selected |
false
|
| Checked |
Blank |
UnSelected |
true |
| Checked |
Filled |
UnSelected |
false |
This should set the required property based on your logic.
You WILL need to also make sure your Update property is supplying the proper value.
Your Update property should be:
Coalesce(yourRadio.Selected.Value, yourTextInput.Text)
However, there are some real questions on how this entire solution is going to work for you properly in your scenario - I mentioned this in your other post. You might want to look over that first!