Appreciate your inputs
3. You can’t dictate the order that a form is filled
You can, in a way. You make all the fields read-only, except for the first, and when the user fill in the first field you enable the second one, then the third, etc. Not ideal, but it could work.
... it does work and is relatively easy to set up. Start with an array of field names and work your way through them one by one changing the readonly property as you go and setFocus to put the cursor in the right field. Monitor the event.rc and event.willCommit properties to determine if the input is valid.
When I've created these in the past I've written a console script to inject the scripts I need into the fields to save time.