SRestriction

The SRestriction structure describes a filter for limiting the view of a table to particular rows.

Quick Info

Header file: MAPIDEFS.H

typedef struct _SRestriction 
{ 
     ULONG     rt;  
     union 
     { 
          SComparePropsRestriction    resCompareProps; 
          SAndRestriction             resAnd; 
          SOrRestriction              resOr; 
          SNotRestriction             resNot; 
          SContentRestriction         resContent; 
          SPropertyRestriction        resProperty; 
          SBitMaskRestriction         resBitMask; 
          SSizeRestriction            resSize; 
          SExistRestriction           resExist; 
          SSubRestriction             resSub; 
          SCommentRestriction         resComment; 
     } res; 
} SRestriction; 
 

Members

rt
The restriction type. Possible values are:
RES_AND
SRestriction structure describes an AND restriction, which applies a bitwise AND operation to a restriction.
RES_BITMASK
SRestriction structure describes a bitmask restriction, which applies a bitmask to a property value.
RES_COMMENT
SRestriction structure describes a comment restriction, which associates a comment with a restriction.
RES_COMPAREPROPS
SRestriction structure describes a compare properties restriction, which compares two property values.
RES_CONTENT
SRestriction structure describes a content restriction, which searches a property value for specific content.
RES_EXIST
SRestriction structure describes an exist restriction, which determines if a property is supported.
RES_NOT
SRestriction structure describes a NOT restriction, which applies a logical NOT operation to a restriction.
RES_OR
SRestriction structure describes an OR restriction, which applies a logical OR operation to a restriction.
RES_PROPERTY
SRestriction structure describes a property restriction, which determines if a property value matches a particular value.
RES_SIZE
SRestriction structure describes a size restriction, which determines if a property value is a particular size.
RES_SUBRESTRICTION
SRestriction structure describes a subobject restriction, which applies a restriction to a message's attachments or recipients.
res
Union of restriction structures describing the filter to be applied. The specific structure included in the res member depends on the value of the rt member. The mapping between restriction type and structure is listed in the following table.

Restriction type Restriction structure
RES_AND SAndRestriction
RES_BITMASK SBitMaskRestriction
RES_COMMENT SCommentRestriction
RES_COMPAREPROPS SComparePropsRestriction
RES_CONTENT SContentRestriction
RES_EXIST SExistRestriction
RES_NOT SNotRestriction
RES_OR SOrRestriction
RES_PROPERTY SPropertyRestriction
RES_SIZE SSizeRestriction
RES_SUBRESTRICTION SSubRestriction

Remarks

Clients use an SRestriction structure to limit the number and type of rows in their view of a table and to search for specific messages in a folder. To impose the limitation on a table, clients call either IMAPITable::Restrict or IMAPITable::FindRow. To impose the limitation on a folder, clients call the folder's IMAPIContainer::SetSearchCriteria method.

For information about using restrictions with tables, see About Restrictions. For information about using restrictions with folders, see Search-Results Folders.

See Also

Restriction Structures, SAndRestriction, SBitMaskRestriction, SCommentRestriction, SComparePropsRestriction, SContentRestriction, SExistRestriction, SNotRestriction, SOrRestriction, SPropertyRestriction, SSizeRestriction, SSubRestriction, IMAPIContainer::SetSearchCriteria, IMAPITable::FindRow, IMAPITable::Restrict