Say you have a list of forms to create and as you gather their requirements you notice that there are sections that are common to multiple forms. You think to yourself "Gee... it’d be great if I could create a reusable component so I wouldn’t have to re-create that section 15 dozen times..."
That functionality actually existed in InfoPath 2003 - though very few people used it. The answer was to create an ActiveX control that you could insert into your form and then map it’s properties to xml data elements. The problem is... who wants to create ActiveX controls, especially when all you really want is to re-use a collection of InfoPath fields?
Luckily, InfoPath 2007 introduces a cleaner solution in the form of Template Parts. Think of Template Parts as mini-forms or snippets to be re-used across multiple forms meant to save you time as a forms builder. Here is an example of how to build a Customer Information Template Part:
1) When you open InfoPath 2007 in design mode, you will see two options for what type of form you would like to design - a traditional form template or a template part.
2) You can then design your Template Part just like you would any InfoPath Form, adding controls and layout tables to customize the user experience.
3) After saving, you can consume your Template Part by creating a new traditional Form Template.
4) In the task pane, choose Controls from the Design Tasks menu. At the bottom, you should see an empty "Custom" for custom controls. Click "Add or Remove Custom Controls..." to add your Template Part to the project
5) Choose Add, and then choose Template Part. Note that you can still use ActiveX Controls if you would like and the process to add them to your form is very similar.
6) Browse for the location of your Template Part (note the .xtp extension) and choose Finish.
7) Your custom Template Part will then show up in the Custom section of your Controls task pane, for the current form and future forms. Click and drag the control on to your form to add it.
One thing to note: If you update your Template Part it will not update your form. Any time you update your Template Part, you will have to re-add it to your Custom Controls. Once it has been updated in your Custom Controls, you will have to delete any instances of it in your forms and replace it with the new version to see your changes.