OL97: Working with Form Definitions and One-Off Forms

ID: Q176567


The information in this article applies to:


SUMMARY

This article discusses how custom forms are implemented in Microsoft Outlook 97 and provides suggestions for addressing unexpected symptoms you may experience when creating a solution based on Outlook 97 forms.

The following topics are covered in this article:


MORE INFORMATION

Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs. If you have limited programming experience, you may want to contact a Microsoft Certified Solution Provider or the Microsoft fee-based consulting line at (800) 936-5200. For more information about Microsoft Certified Solution Providers, please see the following page on the World Wide Web:

http://www.microsoft.com/mcsp/
For more information about the support options available from Microsoft, please see the following page on the World Wide Web:

http://www.microsoft.com/support/supportnet/refguide/
This article assumes a general working knowledge of Outlook 97 custom forms. For information on getting started with customizing Outlook, refer to the Microsoft Knowledge Base articles listed in the References section of this article.

NOTE: There is a distinction between the terms "items" and "forms." An item refers to a "record" of information (a group of fields) in a folder. A form is basically a "front end" for the item and does not typically contain any data. Instead, it is published in a folder or forms library for use with items in the folder.

When creating custom form solutions with Outlook 97, it is important to be able to recognize how Outlook is using your custom form in relation to the items in a folder.

A "Typical" Custom Forms Solution

If you want to create a custom contact form to replace the default Outlook contact form, you would typically follow these steps:

  1. Start with a new, default Contact item to use as the basis for your custom form.


  2. Customize the form to suit your needs.


  3. Publish the form to the Contacts folder.


  4. Set the form as the default form for the Contacts folder by changing the folder properties.


Each Outlook item has a standard Message Class field to keep track of which form should be used to display the item. The default message class for a contact is IPM.Contact, and when the form is published, the message class is changed to reflect the name of the published form. So in the previous steps, if the form was called MyForm when it was published, it would have a message class of IPM.Contact.MyForm. When you create a new item based on the published form, the Message Class field of the item is set to IPM.Contact.MyForm.

For more information about working with Message Classes, please see the following article in the Microsoft Knowledge Base:
Q170301 OL97: How to Update Existing Items to Use a New Custom Form

One-Off Forms

In the typical scenario above, information about the form (the "form definition") is not saved with each item. The form is basically "linked" using the Message Class field. The size of a typical item may be 300 or 500 bytes.

NOTE: For purposes of simplicity, this article will use the term "linked form" to indicate a situation in which the form definition is not saved within an item and the Message Class field is set to use a custom form. However, it is possible to have the form definition saved with an item. Items that have a custom form definition stored within them are referred to as being "one-offed" or "a one-off."

When a form is one-offed, it will use the form definition that is stored with the item instead of the published form. If a form definition is saved with an item, the item's Message Class is changed back to the default message class for that form type, such as IPM.Contact.

Standard Ways Forms Become One-Offs

Forms become one-offs:

Items One-Offed Unexpectedly

Assume you have a linked forms scenario and you have 10 items already created that are using your published custom form. If you open one of the items, and the form definition is somehow changed for that one particular item, Outlook will automatically one-off the item (create a one-off form) and save the form definition with the item. The Message Class field will change back to the default message class for that type of item, and the size of the item will noticeably increase.

Following are known scenarios where items can be unexpectedly one-offed.

Additional Notes


REFERENCES

For more information about creating solutions with Microsoft Outlook 97, please see the following articles in the Microsoft Knowledge Base:

Q166368 OL97: How to Get Help Programming with Outlook
Q170783 OL97: Q&A: Questions about Customizing or Programming Outlook

Additional query words: OutSol OutSol97 workaround


Keywords          : OffVBS ScriptGnrl FmsOthr 
Version           : WINDOWS:97
Platform          : WINDOWS 
Issue type        : kbhowto 

Last Reviewed: July 2, 1999