The information in this article applies to:
SUMMARY
This article discusses how custom forms are implemented in Microsoft
Outlook 98 and provides suggestions for addressing unexpected symptoms you
may experience when creating a solution based on Outlook forms.
MORE INFORMATIONMicrosoft 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/overview/overview.aspThis article assumes a general working knowledge of Outlook 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 Microsoft Outlook, 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 SolutionIf you want to create a custom contact form to replace the default Outlook contact form, you would typically follow these steps:
For more information about working with message classes, please see the following article in the Microsoft Knowledge Base: Q182274 OL98: How to Update Existing Items to Use a New Custom Form One-Off FormsIn 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-OffsYou can specify that a form is a one-off by selecting the "Send form definition with item" check box on the form's Properties page when in design mode. You would typically do this when the form is not registered in a form library where the recipient has access to it. Selecting this option ensures that the person will see the custom form when the item is opened.NOTE: In Outlook 97, this option was on by default for mail message forms, but in Outlook 98 the setting is off by default. Items One-Offed UnexpectedlyAssume 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.
Typical SymptomsAlthough solutions and situations vary greatly, there are some signs you should be aware of that can indicate that items are becoming one-offed.
One-off forms are a common cause of the "Enable/disable" security warning Outlook displays if a form contains VBScript code. Because the code is not in a "registered" form, but actually in the item itself, Outlook will always display the warning. Ideally, you should try to avoid the scenario that is causing the item to be one-offed in the first place. For more information about the security warning, please see the following article in the Microsoft Knowledge Base: Q182376 OL97: Why Outlook Displays a Security Warning Opening an Item Identifying a One-Off ItemIf an item is unexpectedly one-offed and then you notice that the "Send form definition with item" check box is not selected, that does not necessarily mean the form definition is not saved with the item.An item is a one-off it its Message Class field is the default message class for that type of item, but when the item is opened, the form used to display the item is a custom form. When developing a folder-based solution, you may want to display the Message Class and Size fields in a table view so you can be sure that the items in the folder are behaving as you expect. Also, a change in the icon for an item oftentimes indicates a status change, but you should restart Outlook to be sure the proper icon is being displayed. Steps to Reproduce the ProblemThe following steps illustrate how the HideFormPage and ShowFormPage methods can one-off an item.
WorkaroundIf you need to have a scenario where an item will become a one-off, you can work around around the side effects of a one-off item by resetting the message class field and then saving the item in code. As an example, use the following code instead of the code given in the "Steps to Reproduce the Problem" section, and the item will not disable the macro warning message. NOTE: If you programmatically change the message class of an item, the size
of the item is not reduced. There is no way to truly remove the unwanted
form definition from an item other than creating a new item without the
form definition and copying the data from the old item to the new one.
REFERENCESFor more information about creating solutions with Microsoft Outlook 98, please see the following articles in the Microsoft Knowledge Base: Q180826 OL98: Resources for Custom Forms and Programming Q182349 OL98: Questions About Custom Forms and Outlook Solutions Additional query words: OutSol OutSol98 workaround
Keywords : kbdta OffVBS ScriptGnrl FmsOthr |
Last Reviewed: July 14, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |