Is it possible to disable all the fields in an InfoPath 2010 form after it has been submitted to a SharePoint list? Any help will be greatly appreciated.
migrated from programmers.stackexchange.com Oct 31 '12 at 15:28
You can can add a field to your infopath form's data set that basically says "Form has been submitted" as a boolean. When you publish the form, promote that field.
Once promoted, the form status can look and update that field.
Then, your infopath form hides and shows information as needed based on the value of that field.
From your post I'm assuming you want to disable the fields in the actual form. In the submit rules, you can switch the form to a different view that contains some or all of the fields of the original view. In this view you can have some or all of the controls set to Read-Only. Or you can go into the properties of the view and set the entire view to Read-Only.
In our office we often automate common processes such as requests etc. An example is a request for telephone access. What happens here is the initial user opens the form and fills in all his details (actually pulled from a web service) and the details of the access he is requesting.
This form is the changed to a manager view and submitted. The manager the gets an email with a link to the form that opens in his view. All the details filled in by the user is in a Read-Only state in this view and the manager has his own specific fields to complete regarding approving or rejecting the request.
Needless to say the form opened in the browser and the ribbon is disabled and all means of switching of views by the user. The form goes through some more processing, including steps at the service desk and tele-communications. After the last step the form switches to a completed view where the whole view is set to Read-Only.