IReplicaMetadata::FindItemMetadataByUniqueIndexedFields
Retorna a entrada de metadados do item exclusiva que tem o valor especificado para o campo indexado.
HRESULT FindItemMetadataByUniqueIndexedFields(
LPCWSTR * ppcszCustomFieldNames,
IFieldValue ** ppFieldValues,
BYTE cCustomFields,
IItemMetadata ** ppItemMetadata);
Parâmetros
- ppcszCustomFieldNames
[in, size_is(cCustomFields)] O conjunto de nomes de campo indexados que definem os itens que serão pesquisados. Esses nomes de campo precisam estar na mesma ordem daquela usada para especificar o índice quando ISyncMetadataStore::InitializeReplicaMetadata foi chamado.
- ppFieldValues
[in, size_is(cCustomFields)] O conjunto de valores de campo indexados que definem os itens que serão pesquisados. Esses valores precisam estar na mesma ordem dos nomes em ppcszCustomFieldNames.
- cCustomFields
[in] O número de entradas em ppcszCustomFieldNames e em ppFieldValues.
- ppItemMetadata
[out] Retorna a entrada de metadados do item exclusiva que tem o valor especificado para o campo indexado.
Valor de retorno
S_OK
S_FALSE se nenhum item correspondente for encontrado.
E_POINTER
SYNC_E_METADATA_QUERY_REQUIRES_UNIQUE_INDEXED_FIELDS se um campo em ppcszCustomFieldNames não foi especificado como um campo de índice exclusivo quando os metadados foram inicializados.
SYNC_E_METADATA_QUERY_REQUIRES_INDEXED_FIELDS se um campo em ppcszCustomFieldNames não foi especificado como um campo de índice quando os metadados foram inicializados.
SYNC_E_METADATA_FIELD_INVALID_NAME se não houver um nome de campo em ppcszCustomFieldNames.
SYNC_E_METADATA_FIELD_INVALID_TYPE se um valor de campo em ppFieldValues não coincide com o tipo do campo correspondente.
Comentários
Os campos personalizados precisam ser estabelecidos quando os metadados da réplica são inicializados pela primeira vez passando uma lista de estruturas CUSTOM_FIELD_DEFINITION para ISyncMetadataStore::InitializeReplicaMetadata.
Os campos de índice precisam ser estabelecidos e marcados como exclusivos quando os metadados da réplica são inicializados pela primeira vez passando uma lista de estruturas CUSTOM_FIELDS_INDEX para ISyncMetadataStore::InitializeReplicaMetadata.