OL98: Text That You Insert into Field Is Missing

ID: Q216980


The information in this article applies to:


SYMPTOMS

When you enter a large number of characters into a field on an Outlook form, Outlook seems to save the information properly, but the next time you open the item, the field is blank.


CAUSE

Depending on where an item is stored Outlook can typically retrieve either 16 KB or 32 KB of data from either the total of all standard fields, or the total of all user-defined fields. However, it is possible the limit may be as small as 4 KB and this should be taken into account when designing your form solution. The amount of data that Outlook can retrieve may also be limited by your network configuration. This limit has to do with how much data a single Remote Procedure Call (RPC) can handle.


RESOLUTION

When designing an Outlook form solution, do not assume that a text field can store an infinite amount of text. You should test the upper limits of the fields since there is no definitive way to determine an exact limit in all situations.


STATUS

Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article.


MORE INFORMATION

When an item is stored in a Microsoft Exchange Server mailbox, the number of characters is typically limited to 32 KB, whereas if the item is stored with a Personal Folders (.pst) file, the limit is typically 16 KB. For example, on an Exchange Server, the limit would be 32 KB characters for the sum of all user-defined fields. Also, the total data for the sum of all standard fields must not exceed 32 KB. Note that text stored using a double-byte character set (DBCS) used in various localized versions of Outlook will reduce the amount of text stored by one-half. Outlook does not generate a warning when the item is saved. It will appear to save without any problems. However, when the item is opened, the text is missing and not accessible using either the Outlook interface or the Outlook object model.

Steps to Reproduce Problem

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 engineers 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 the Microsoft fee-based consulting line at (800) 936-5200. 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/
To create a sample contact form that you can use to test the limits in your environment, follow these steps:
  1. Open a new contact.


  2. On the Tools menu, point to Forms, and then click Design This Form.


  3. Click the P.2 page of the form.


  4. Use the Field Chooser to create two new fields of type Text and then drag those fields onto the form. These two fields should be named Field1 and Field2.


  5. Right-click the first text box and then click Properties. On the Display tab, click to select the Multi-line option and click OK. Repeat this process for the second textbox control.


  6. Use the Field Chooser to drag the Mileage field onto the form. The Mileage field is listed in the "All Contact Fields" list at the top of the Field Chooser.


  7. On the Form menu, click Control Toolbox. Drag a command button control from the Control Toolbox. Right-click the command button and click Properties. On the Display tab, change the name of the control to cmdCheckSizes and change the caption to Check Sizes.


  8. On the Form menu, click View Code. Enter the following Visual Basic Scripting Edition (VBScript) code and then close the Script Editor:


  9. 
    Sub cmdCheckSizes_Click()
    
       Set F1 = Item.UserProperties.Find("Field1")
       Set F2 = Item.UserProperties.Find("Field2")
    
       L1 = Len(F1)
       L2 = Len(F2)
       Total = L1 + L2
    
       strMsg = "Custom fields: " & L1 & " + " & L2 & " = " & Total
       strMsg = strMsg & Chr(13) & "Mileage field: " & Len(Item.Mileage)
       MsgBox strMsg
    
    End Sub 
  10. Resize and move the three textbox controls so that the three fields take up most of the form page.


  11. On the Tools menu, point to Forms, and then click Publish Form.


  12. Verify that the form is set to publish in the Contacts folder, enter Field Size Tester as the Display Name, and then click Publish.


  13. Close and do not save changes to the form.


  14. On the Actions menu, click New Field Size Tester.


You can then enter various amounts of data into the fields on the P.2 page of the form and use the Check Sizes button to keep track of how much data is being placed into the fields.


REFERENCES

For more information about creating solutions with Microsoft Outlook 98, please see the following article 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 98


Keywords          : kbdta 
Version           : WINDOWS:
Platform          : WINDOWS 
Issue type        : kbbug 

Last Reviewed: March 9, 1999