SSortOrder
適用対象: Outlook 2013 | Outlook 2016
テーブルの行の並べ替え方法、並べ替えキーとして使用する列、並べ替えの方向を定義します。
プロパティ | 値 |
---|---|
ヘッダー ファイル: |
Mapidefs.h |
typedef struct _SSortOrder
{
ULONG ulPropTag;
ULONG ulOrder;
} SSortOrder, FAR *LPSSortOrder;
メンバー
ulPropTag
並べ替えキーを識別するプロパティ タグ、または分類された並べ替えの場合はカテゴリ列。
ulOrder
データを並べ替える順序。 使用可能な値は次のとおりです。
TABLE_SORT_ASCEND: テーブルは昇順で並べ替える必要があります。
TABLE_SORT_COMBINE: 並べ替え操作では、 ulPropTag メンバーの並べ替えキー列として識別されるプロパティと、前の SSortOrder 構造体で指定された並べ替えキー列を組み合わせたカテゴリを作成する必要があります。
TABLE_SORT_COMBINEは、SSortOrder 構造体を SSortOrderSet 構造体のエントリとして使用して、分類された並べ替えに対して複数の並べ替え順序を指定する場合にのみ使用できます。 TABLE_SORT_COMBINEは、 SSortOrderSet 構造体の最初の SSortOrder 構造体では使用できません。
TABLE_SORT_DESCEND: テーブルは降順で並べ替える必要があります。
TABLE_SORT_CATEG_MAX: テーブルは、SSortOrderSet 構造体の前の並べ替え順序で指定されたカテゴリのデータ行の ulPropTag メンバーの最大値で並べ替える必要があります。
TABLE_SORT_CATEG_MIN: テーブルは、SSortOrderSet 構造体の前の並べ替え順序で指定されたカテゴリのデータ行の ulPropTag メンバーの最小値で並べ替える必要があります。
注釈
SSortOrder 構造体は、標準の並べ替え操作または分類された並べ替え操作を実行する方法を記述するために使用されます。 通常、SSortOrder 構造体は、複数の並べ替えキーと方向を記述するために SSortOrderSet 構造体に結合されます。 SSortOrderSet 構造体は、次の関数とインターフェイス メソッドで使用されます。
並べ替えキーとして使用できるテーブル内の許可される列の範囲は、プロバイダーによって異なります。 現在の列セットの一部である列は、常に並べ替えキーとして使用できます。 ただし、各プロバイダーは、現在の列セットにない使用可能な列を使用して並べ替えキーを定義できるかどうかを決定します。 使用可能な列は、TBL_ALL_COLUMNS フラグが設定されている場合に IMAPITable::QueryColumns から返される列です。
ulOrder メンバーは、メッセージ交換 (PidTagConversationTopic) など、方向順と分類情報の両方を示します。つまり、メッセージ交換スレッドは、一連のメッセージと応答です。 行は、すべての NULL エントリが最後に配置された昇順または降順のシーケンスで並べ替えることができます。
TABLE_SORT_COMBINE値は、 ulPropTag で指定された列を前のカテゴリ列と組み合わせて複合カテゴリを形成する必要があることを示します。 つまり、個々の列の一意の値に分類するのではなく、列の組み合わせの一意の値を分類TABLE_SORT_COMBINE。 たとえば、特定の件名の特定の送信者から受信したメッセージをグループ化するために、1 つのカテゴリを定義できます。 値を TABLE_SORT_COMBINE に設定すると、表示されるカテゴリ行の数が減ります。
複数値列の並べ替えは、すべてのテーブル実装で一般的にサポートされているわけではありません。 サポートされている場合は、MVI_PROP マクロを使用してMV_FLAGを ulPropTag メンバーのプロパティ タグに適用して、並べ替えキーを複数値列として識別します。 複数値列の並べ替えは、個々の値を使用して行います。
重要
ulOrder メンバー値TABLE_SORT_CATEG_MAXとTABLE_SORT_CATEG_MINは、現在使用しているダウンロード可能なヘッダー ファイルに定義されていない可能性があります。その場合は、次の値を使用してコードに追加できます。
#ifndef TABLE_SORT_CATEG_MAX
#define TABLE_SORT_CATEG_MAX ((ULONG) 0x00000004)
#endif
#ifndef TABLE_SORT_CATEG_MIN
#define TABLE_SORT_CATEG_MIN ((ULONG) 0x00000008)
#endif
標準並べ替えと分類の詳細については、「 並べ替えと分類」を参照してください。