RDOFolderFields object

 

RDOFolderFields object represents user properties defined in a particular folder. A folder-level user property is available in the "Field Chooser" in Outlook when you select "User-defined fields in folder" when customizing a view or designing a form. Note that adding a property to the folder fields does not automatically make it visible as one of the columns in the folder view nor does it add it to any of the Outlook objects (such as a message or the folder itself); FolderFields is merely a list of property definitions.

Internally, folder fields are stored in one of the hidden messages with the message class of "IPC.MS.REN.USERFIELDS" in the PR_USERFIELDS property.

 

Returned by:

RDOFolder2.FolderFields

 

The example below enumerates all available folder fields in a given folder.

set FolderFields = Folder.FolderFields
for each Field in FolderFields
  Debug.Print Field.Name
next

 

Properties

Methods

 


Derived from: IDispatch


Properties


Count

integer, read-only. Returns the count of available folder fields.

 

 

RawMessage

Returns RDOMail object representing the "IPC.MS.REN.USERFIELDS" hidden message in the folder.

Note that if not folder fields were ever defined, there will be no such message and this property will return NULL

 

Methods


Add(Name, Type, GUID, DisplayFormat)

Adds a new user property to the collection and returns RDOFolderField object. You must call Save later to persist the changes.

 

Name - string. The name of the property

 

Type - optional, one of the rdoUserPropertyType enums. If not specified, defaults to olText.

 

olText (0x1)
olNumber (0x3)
olDateTime (0x5)
olYesNo (0x6)
olDuration (0x7)
olKeywords (0xB)
olPercent (0xC)
olCurrency (0xE)
olFormula (0x12)
olCombination (0x13)

olInteger (0x14)

 

GUID-  optional, string. The named property GUID. If not specified, PS_PUBLIC_STRINGS ("{00020329-0000-0000-C000-000000000046}") is used.

 

DisplayFormat, integer, optional. If not specified, defaults to 0.

The meaning and the possible values of the DisplayFormat parameter depend on the value of the Type parameter. This parameter is essentially a zero based index of the entry selected from the "Format" combobox in the "Field Chooser" dialog in Outlook:

 

olText (0x1)

0

olNumber (0x3)

0 - 8

olDateTime (0x5)

0 - 15

olYesNo (0x6)

0 - 3

olDuration (0x7)

0 - 3

olKeywords (0xB)

0

olPercent (0xC)

0 - 3

olCurrency (0xE)

0 - 1

olFormula (0x12)

0

olCombination (0x13)

0

olInteger (0x14)

0 - 3

 

'add two custom fields with the Inbox folder in the default profile

set Session = CreateObject("Redemption.RDOSession")
Session.Logon
set Folder = Session.DefaultFolder(olFolderInbox)

set FolderFields = Folder.FolderFields
set Field = FolderFields.Add("Redemption Text Prop")
set Field = FolderFields.Add("Redemption Number Prop", &HC, ,3) 'olNumber, 2 decimals
FolderFields.Save

Find(Name)

Returns RDOFolderField object with the given name or null if no folder field with that name exists.

 

Name - string. Name of the field.

 

 

Item(Index)

Returns an RDOFolderField object with the given index.

Index - integer, 1 through Count.

 

 

Remove(Index)

Removes a folder field with the given index. You must call Save later to persist the changes.

Index - integer, 1 through Count.

 

 

Save

Saves the folder fields definitions after the list was modified. The fields are stored in an "IPC.MS.REN.USERFIELDS" hidden message. If the message does not exist, it will be created.