Export (0) Print
Expand All

Types of Tables

Last modified: January 16, 2009

Applies to: Office 2010 | Outlook 2010 | Visual Studio

There are many different types of tables, each type differentiated by the information that it presents. Tables enable client applications and service providers to readily access and manipulate the important properties of many types of objects.

Some tables, such as contents tables, provide an alternative way of accessing properties. For example, a client can retrieve the subject of a message — its PR_SUBJECT (PidTagSubject) property — either directly from the message by calling its IMAPIProp::GetProps method or through the message's contents table. Other tables provide the only way to access object properties. For example, a client cannot access an attachment's PR_ATTACH_METHOD (PidTagAttachMethod) property by calling IMAPIProp::GetProps; it must always retrieve the attachment table of the message to which it is attached. PR_ATTACH_METHOD is a required column in all attachment tables.

A table view can be static or dynamic. With a static table view, changes to the underlying data do not cause the view to be updated. Once the view has been instantiated, it does not change. Users of static tables can be informed of changes to data through table notifications. A dynamic table view is updated when changes are made to the data. There are two types of dynamic tables: one that updates the columns of each row, but the rows remain static and one that updates both the columns and rows. This latter type of table always reflects the underlying data exactly.

Tables have a default column set, the minimum set of columns that a client or service provider can expect to see when retrieving rows from a table that has not yet been affected by an IMAPITable::SetColumns call. Clients and service providers can add columns to or remove columns from this default set by calling the SetColumns method. Changes can be made either statically or dynamically, following a client request. Not all tables support dynamic column set modification.

The MAPI tables and their implementers and users are:

Table

Implementers

Attachment

Implemented by message store providers. Used by clients and transport providers.

Contents

Implemented by message store and address book providers. Used by clients.

Display

Implemented by MAPI and service providers. Used by MAPI and service providers.

Hierarchy

Implemented by message store and address book providers. Used by clients.

Message service

Implemented by MAPI. Used by clients.

Message store

Implemented by MAPI. Used by clients.

One-off

Implemented by address book providers. Used by MAPI.

Outgoing queue

Implemented by message store providers. Used by MAPI spooler.

Profile

Implemented by MAPI. Used by clients.

Provider

Implemented by MAPI. Used by clients.

Receive folder

Implemented by message store providers. Used by clients.

Recipient

Implemented by message store providers. Used by clients and transport providers.

Status

Implemented by MAPI and service providers. Used by clients.

Show:
© 2014 Microsoft