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允許將數據行組合的唯一值分類。 例如,單一類別可以定義為群組從特定主旨上特定寄件者接收的訊息。 將值設定為 TABLE_SORT_COMBINE可減少顯示的類別目錄資料列數目。
所有數據表實作都不支援對多重值數據行進行排序。 如果支援,請使用 MVI_PROP 宏將MV_FLAG套用至 ulPropTag 成員中的屬性標記,以將排序索引鍵識別為多重值數據行。 多重值數據行的排序是以使用個別值為基礎。
重要事項
TABLE_SORT_CATEG_MAX和TABLE_SORT_CATEG_MIN的 ulOrder 成員值可能未定義在您目前擁有的可下載頭檔中,在此情況下,您可以使用下列值將其新增至程式代碼:
#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
如需標準和分類排序的詳細資訊,請參閱 排序和分類。