Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Para obter informações sobre como configurar regras de duplicados na aplicação, consulte Guia para Administradores: Configurar regras de deteção de duplicados para manter os seus dados limpos.
As regras de deteção de duplicados são definidas usando as seguintes tabelas:
- DuplicateRule: Para detetar duplicatas no sistema, crie uma regra de deteção de duplicados para um tipo de tabela específico. Pode criar várias regras de deteção de duplicados para o mesmo tipo de tabela. Contudo, pode publicar um máximo de cinco regras de deteção de duplicados por tipo de tabela ao mesmo tempo.
-
DuplicateRuleCondition: Uma regra pode ter uma ou mais condições de regra de deteção de duplicados representadas pela tabela. As condições são combinadas pelo sistema como numa operação lógica
AND. Uma regra de deteção de duplicados especifica um tipo de tabela base e um tipo de tabela correspondente. Uma condição de regra duplicada especifica o nome de uma coluna base e o nome de uma coluna correspondente. Por exemplo, especifique uma conta como uma tabela base e um contato como uma tabela correspondente para comparar sobrenomes e endereços. Os critérios de correspondência consistem em operadores como correspondência exata, primeiros n caracteres ou últimos n caracteres.
Essas duas tabelas estão relacionadas usando a relação DuplicateRule_DuplicateRuleConditions .
A deteção de duplicados funciona comparando códigos de correspondência de registos existentes gerados com cada novo registo que está a ser criado. Estes códigos de correspondência são criados à medida que cada novo registo é criado. Portanto, há potencial para que um ou mais registros duplicados sejam criados se forem processados no mesmo momento. Além de detetar duplicatas à medida que são criadas, você deve agendar trabalhos de deteção de duplicatas para verificar outros registros duplicados em potencial.
As regras de deteção de duplicados são aplicáveis a todo o sistema. Você deve publicá-los antes de executar um trabalho de deteção de duplicados para detetar duplicatas para dados em massa ou recuperar duplicatas para um registro de tabela específico. Para publicar uma regra de deteção de duplicados, use a mensagem PublishDuplicateRule (Ação PublishDuplicateRule ou PublishDuplicateRuleRequest). A publicação de regras duplicadas é uma operação assíncrona que é executada em segundo plano.
As seguintes colunas graváveis nestas tabelas controlam o comportamento das regras de deteção de duplicados.
DuplicateRule
| Coluna | Description |
|---|---|
| BaseEntityName | Tipo do registo que está a ser avaliado quanto a potenciais duplicados. |
| Descrição | Descrição da regra de deteção de duplicados. |
| DuplicateRuleId | Identificador exclusivo da regra de deteção de duplicados. |
| ExcludeInactiveRecords | Determina se os registos inativos devem ser sinalizados como duplicados. Nota: O valor predefinido é false. Defina-o como true se não quiser que os registros inativos sejam sinalizados como duplicados, mesmo que atendam aos critérios da regra de deteção de duplicação. Mais informações: Estados inativos |
| IsCaseSensitive | Indica se o operador é sensível às maiúsculas e minúsculas. |
| MatchingEntityName | Tipo dos registos que estão a ser avaliados como potenciais duplicados. |
| Nome | Nome da regra de deteção de duplicados. |
| OwnerId | O identificador exclusivo do utilizador ou equipa proprietário da regra de deteção de duplicados. |
| OwnerIdType | Se o proprietário é um utilizador ou uma equipa. |
| StatusCode | Razão do estado da regra de deteção de duplicados. |
Estados inativos
A maioria das tabelas do sistema e todas as tabelas personalizadas têm duas StateCode opções de coluna:
-
Value: 0InvariantName:Active -
Value: 1InvariantName:Inactive
O rótulo da escolha pode ser alterado, mas o valor InvariantName não.
Algumas tabelas do sistema têm mais de um estado ativo ou inativo. A tabela a seguir lista exemplos de tabelas com mais de um estado ativo ou inativo.
| StateCode | Estados Ativos | Estados Inativos |
|---|---|---|
| Appointment.StateCode |
Open, Scheduled |
Completed, Canceled |
| CampaignActivity.StateCode | Open |
Closed, Canceled |
| CampaignResponse.StateCode | Open |
Completed, Canceled |
| Contract.StateCode |
Draft, Invoiced, On Hold |
Canceled, Expired |
| ContractDetail.StateCode |
Existing, Renewed |
Canceled, Expired |
| Email.StateCode | Open |
Completed, Canceled |
| Fax.StateCode | Open |
Completed, Canceled |
| Incident.StateCode | Active |
Resolved, Canceled, Closed |
| Invoice.StateCode | Active |
Closed, Paid, Canceled |
| KbArticle.StateCode |
Draft, Unapproved, Published |
N/A |
| Lead.StateCode | Open |
Qualified, Disqualified |
| Letter.StateCode | Open |
Completed, Canceled |
| Opportunity.StateCode | Open |
Won, Lost |
| PhoneCall.StateCode | Open |
Completed, Canceled |
| Quote.StateCode |
Draft, Active |
Won, Closed |
| SalesOrder.StateCode |
Active, Submitted, Invoiced |
Canceled, Fulfilled |
| ServiceAppointment.StateCode |
Open, Scheduled |
Closed, Canceled |
| Task.StateCode | Open |
Completed, Canceled |
Por exemplo, se definir a coluna ExcludeInactiveRecords como true, só as ordens de venda Active, Submitted e Invoiced são consideradas para correspondência durante a deteção de duplicados.
Observação
Você pode revisar as opções disponíveis StateCode para uma tabela usando o Navegador de Metadados descrito em Procurar as definições de tabela e coluna para sua organização.
Para recuperar as StateCode opções de uma tabela, você pode usar a seguinte consulta de API da Web substituindo a LogicalName da tabela pela appointment usada abaixo:
GET [organization URI]/api/data/v9.0/EntityDefinitions(LogicalName='appointment')/Attributes(LogicalName='statecode')/Microsoft.Dynamics.CRM.StateAttributeMetadata/OptionSet?$select=Options
Mensagens especiais DuplicateRule
DuplicateRule é uma tabela de propriedade do usuário e operações normais de criação, recuperação, atualização, atribuição e exclusão são permitidas, bem como operações para controlar o acesso. Mais informações: DuplicateRule Messages.
Também podem ser usadas as seguintes mensagens especiais:
| Message | Operação API Web | Assemblagem SDK |
|---|---|---|
| CompoundUpdateDuplicateDetectionRule | Ação CompoundUpdateDuplicateDetectionRule | CompoundUpdateDuplicateDetectionRuleRequest |
| PublishDuplicateRule | Ação PublishDuplicateRule | PublishDuplicateRuleRequest |
| PublishXml | Ação PublishXml | PublishXmlRequest |
| UnpublishDuplicateRule | Ação UnpublishDuplicateRule | UnpublishDuplicateRuleRequest |
DuplicateRuleCondition
| Coluna | Description |
|---|---|
| BaseAttributeName | Campo que está a ser comparado. |
| DuplicateRuleConditionId | Identificador exclusivo da condição. |
| IgnoreBlankValues | Determina se os valores em branco devem ser considerados como valores não duplicados. Nota: O valor padrão desta coluna é false. Defina-o como true se não quiser que a regra de deteção de duplicados considere null valores como iguais. Importante: Para uma regra de deteção de duplicados com uma condição, se você definir o valor da coluna como false, ele será tratado pelo sistema como um true valor. |
| MatchingAttributeName | Campo que está a ser comparado com o campo base. |
| OperatorCode | Operador para esta condição de regra. Importante: Se você definir a OperatorCode coluna como ExactMatch, não defina a OperatorParam coluna com nenhum valor |
| OperatorParam | Valor do parâmetro de N se o operador for Mesmos Primeiros Carateres ou Mesmos Últimos Carateres. Importante: Não defina o OperatorParam como zero durante as operações de criação ou atualização. |
| Relativo a ObjectId | Identificador exclusivo do objeto a que a condição está associada. |
Mensagens especiais DuplicateRuleCondition
DuplicateRuleCondition é uma tabela filha de DuplicateRule. O acesso para obter ou modificar estas tabelas depende do acesso ao DuplicateRule a que está associado. Mais informações: Mensagens DuplicateRuleCondition.
Também podem ser usadas as seguintes mensagens especiais:
| Message | Operação API Web | Assemblagem SDK |
|---|---|---|
| CompoundUpdateDuplicateDetectionRule | Ação CompoundUpdateDuplicateDetectionRule | CompoundUpdateDuplicateDetectionRuleRequest |
Consulte também
duplicaterule EntityType
duplicaterulecondition EntityType
Detetar dados duplicados usando código
Ativar e desativar a deteção de duplicados
Executar deteção de duplicados
Mensagens de deteção de duplicados
Amostra: Ativar a deteção de duplicados e obter duplicados
Exemplo: Use a deteção de duplicados ao criar e atualizar registros
Amostra: Detetar vários registos duplicados