There are a variety of ways to accomplish what you describe in your first question. One thing you can do is the following:
-
Create a new view that is similar to the original view, but make it read-only
-
Change the original view's properties and uncheck "Show on the View menu when filling out the form" (you may want to do this for the new view as well)
-
Create a boolean field "submitted" in your data source with a default of false, and set it to true when the user submits the form (but before the actual submit is performed).
-
Then add a form rule to the form opening behavior to switch the form to the read-only view when the submitted field is equal to true
If you only want to lock parts of the form, instead of making the new view read-only, you could just represent those parts with read-only controls (expression boxes instead of text boxes, repeating sections that the user can't modify). Alternatively, you could create two versions of these sections in your main view, and hide one or the other depending on the value of the submitted field.