取得篩選的變更批次,其中包含此複寫中所儲存之項目和變更單元的版本。這些項目和變更單元會對應到從其他提供者所傳送之變更批次中參考的項目和變更單元。
HRESULT GetFilteredItemBatchVersions(
ISyncChangeBatch * pRemoteSyncChangeBatch,
IChangeBatchCallback * pCallback,
IEnumSyncChanges ** ppLocalVersionsEnum);
參數
術語 |
定義 |
pRemoteSyncChangeBatch |
[in] 要套用到與此複寫關聯之項目存放區的另一個提供者所傳送的變更批次。 |
pCallback |
[in, unique] 回呼介面,呼叫時可判斷某個項目是否應加入到此批次。 |
ppLocalVersionsEnum |
[out] 傳回包含此複寫中所儲存之項目版本和變更單元的篩選變更批次。 |
傳回值
S_OK
E_POINTER
備註
當目的地提供者篩選變更時,這個方法可協助同步處理提供者實作它的 IKnowledgeSyncProvider::ProcessChangeBatch 方法。
變更套用者會使用這個方法所傳回之變更批次內的版本進行衝突偵測。
實作者注意事項
除非 pCallback 指出不應該包含項目,否則對於 pRemoteSyncChangeBatch 中的每一個項目 (包括變更單位項目) 而言,從這個方法傳回的變更批次都必須包含一個項目。如果項目存放區內有項目存在,而且篩選包含此項目,它的項目必須包含此複寫的版本資訊。如果篩選所包含的項目不存在,其版本的項目必須包含 0,而且必須設定其 SYNC_CHANGE_FLAG_DOES_NOT_EXIST 旗標。