Condividi tramite


IReplicaMetadata::GetUnreportedItemsByIndexedFields

Restituisce un elenco di elementi con il set specificato di valori di campo indicizzati che, oltre a non essere contrassegnati come attivi nell'archivio dei metadati, non sono ancora contrassegnati come eliminati.

HRESULT GetUnreportedItemsByFieldValue (
  LPCWSTR * ppcszCustomFieldNames,
  IFieldValue ** ppFieldValues,
  BYTE cCustomFields,
  IItemMetadataEnumerator ** ppItemMetadataEnumerator);

Parametri

  • ppcszCustomFieldNames
    [in, size_is(cCustomFields)] Set di nomi di campi indicizzati che definiscono gli elementi per cui eseguire la ricerca.
  • ppFieldValues
    [in, size_is(cCustomFields)] Set di valori di campi indicizzati che definiscono gli elementi per cui eseguire la ricerca. Questi valori devono trovarsi nello stesso ordine dei nomi in ppcszCustomFieldNames.
  • cCustomFields
    [in] Numero di voci in ppcszCustomFieldNames e in ppFieldValues.
  • ppItemMetadataEnumerator
    [out] Restituisce l'elenco di elementi con il set specificato di valori di campo indicizzati che oltre a non essere contrassegnati come attivi nell'archivio dei metadati, non sono ancora contrassegnati come eliminati.

Valore restituito

  • S_OK

  • E_POINTER

  • E_OUTOFMEMORY

  • SYNC_E_METADATA_QUERY_REQUIRES_INDEXED_FIELDS se un campo in ppcszCustomFieldNames non è stato specificato come campo di indice al momento dell'inizializzazione dei metadati.

  • SYNC_E_METADATA_FIELD_INVALID_NAME se non esiste un nome di campo in ppcszCustomFieldNames.

  • SYNC_E_METADATA_FIELD_INVALID_TYPE se un valore di campo in ppFieldValues non corrisponde al tipo del campo corrispondente.

Osservazioni

Se non esistono elementi inattivi con valori di campi indicizzati specificati, viene restituito un enumeratore vuoto.

Questo metodo fa parte del servizio di rilevamento delle eliminazioni. Un elemento è contrassegnato come attivo nell'archivio dei metadati se IReplicaMetadata::SaveItemMetadata viene chiamato per un elemento modificato o se IReplicaMetadata::ReportLiveItemByIndexedFields o IReplicaMetadata::ReportLiveItemByGlobalId viene chiamato per un elemento non modificato, ma ancora attivo. Un provider può chiamare IReplicaMetadata::GetUnreportedItems o IReplicaMetadata::GetUnreportedItemsByIndexedFields per ottenere elementi non segnalati come attivi esistenti nell'archivio dei metadati. Il provider può quindi contrassegnare tali elementi come eliminati nell'archivio dei metadati.

Vedere anche

Riferimento

Interfaccia IReplicaMetadata