As I was working with one of the projects I had a customized InfoPath Form that has 100's of fields and multiple Views. As I was going though I had a concern that a lot of these fields were not used, so how to find which fields are used and which aren't. In this post I will give you some suggestions to tackle such issue.
Suggestion # 1
The easiest choice is to start with InfoPath "Rule Inspector" which will help you go through all the fields. However, using the Rule Inspector will not find fields that are not bound in the form (such as fields assigned using code behind), so if you have a custom development the "Rule Inspector" could be a good start for you but It will not be enough.
Suggestion # 2
In case you have some code behind in your InfoPath Form, you need to searching through the code as well. A good place to start is to open the "FormCode.cs" file using a development tool such as Visual Studio and start searching.
Suggestion # 3
Another suggestion to "Export Source Files" and search though the "manifest.xsf". To explain this approach let me start by explaining more about InfoPath Forms; The InfoPath Form ".XSN File" consist of more that one source file consolidated together in one single ".XSN File" for convenience purpose. What we aim in this approach is to extra these source files and start searching through them.
An example using InfoPath 2010,
After that open the "manifest.xsf" file in a development tool such as Visual Studio and start searching thought the fields names.
Suggestion # 4
This is an extension to the previous step where you would like to determine which field is used in which View. To do so start by Exporting the Form to Source Files as shown in the previous step and search through XSL files; each one of XSL files represents a View in InfoPath Form.
Hope you found this information useful.