IReplicaMetadata::ReportLiveItemByIndexedFields
Meldet, dass das durch den indizierten Feldwert identifizierte Element aktiv ist und nicht als gelöscht angesehen werden sollte.
HRESULT ReportLiveItemByIndexedFields(
LPCWSTR * ppcszCustomFieldNames,
IFieldValue ** ppFieldValues,
BYTE cCustomFields);
Parameter
- ppcszCustomFieldNames
[in, size_is(cCustomFields)] Der Satz von indizierten Feldnamen, die die Elemente definieren, die als aktiv gemeldet werden sollen.
- ppFieldValues
[in, size_is(cCustomFields)] Der Satz von indizierten Feldwerten, die die Elemente definieren, die als aktiv gemeldet werden sollen. Diese Werte müssen die gleiche Reihenfolge wie die Namen in ppcszCustomFieldNames aufweisen.
- cCustomFields
[in] Die Anzahl von Einträgen in ppcszCustomFieldNames und in ppFieldValues.
Rückgabewert
S_OK
E_POINTER
SYNC_E_METADATA_QUERY_REQUIRES_INDEXED_FIELDS, wenn ein Feld in ppcszCustomFieldNames beim Initialisieren der Metadaten nicht als Indexfeld angegeben wurde.
SYNC_E_METADATA_FIELD_INVALID_NAME, wenn ein Feldname in ppcszCustomFieldNames nicht vorhanden ist.
SYNC_E_METADATA_FIELD_INVALID_TYPE, wenn ein Feldwert in ppFieldValues nicht mit dem Typ des entsprechenden Felds übereinstimmt.
SYNC_E_METADATA_ITEM_NOT_FOUND, wenn im Metadatenspeicher kein übereinstimmendes Element gefunden wird.
Hinweise
Diese Methode ist ein Teil des Diensts zum Verfolgen von Löschungen. Ein Element wird im Metadatenspeicher als aktiv markiert, wenn IReplicaMetadata::SaveItemMetadata für ein geändertes Element aufgerufen wurde, oder wenn IReplicaMetadata::ReportLiveItemByIndexedFields oder IReplicaMetadata::ReportLiveItemByGlobalId für ein nicht geändertes, jedoch noch aktives Element aufgerufen wurde. Ein Anbieter kann IReplicaMetadata::GetUnreportedItems
oder IReplicaMetadata::GetUnreportedItemsByIndexedFields aufrufen, um Elemente im Metadatenspeicher abzurufen, die nicht als aktiv gemeldet sind. Anschließend kann der Anbieter diese Elemente im Metadatenspeicher als gelöscht markieren.