Resolver conflitos de sincronização com o servidor
Este artigo fornece informações para ajudá-lo a resolver conflitos de sincronização móvel com o servidor.
Tabela de Erro de Sincronização
No caso de um erro de sincronização, o sistema gera automaticamente uma nova entrada na tabela Erro de Sincronização no Dataverse. Esta tabela está estruturada com as seguintes colunas.
Nome da coluna | Description | Exemplo |
---|---|---|
Hora do Erro | Horário no qual o erro foi criado. | 17/5/2024 7h16 |
Mensagem de Erro | Descrição do erro. | Entity Account With Id = <RowId> Does Not Exist |
Tipo de Erro | Tipo de erro, como um conflito ou erro de registro não encontrado. | Registro não localizado |
Registro | Registro atualizado em erro de sincronização. | Contoso |
Proprietário | Usuário que atualizou o registro. | John Doe |
Ação | Ação aplicada ao registro a ser sincronizado. | Atualizar |
Dados da Ação | Json contendo o conteúdo da ação. | {"sobrenome":"Contoso2"} |
Solicitar Dados | Json que contém a consulta. | {"lastname":"Contoso2","syncerror__regardingentityid":<syncerrorId>,"entitylogicalname":"account"} |
Código de Erro | Código do erro. | -2147015424 |
Observação
Verifique se a função atribuída ao usuário concede privilégios de leitura na tabela Erro de Sincronização. Saiba mais: Criar ou editar um direito de acesso para gerenciar o acesso
Recomendação sobre como usar a tabela de Erros de Sincronização
A tabela Erro de Sincronização é uma tabela padrão do Dataverse. Recomendamos que você crie um aplicativo baseado em modelo para gerenciar os erros de sincronização.
Se você executar o aplicativo baseado em modelo, poderá ver os erros de sincronização de cada usuário. Se selecionar uma linha de erro de sincronização, você poderá Repetir Alterações na barra de comandos.
Erro de sincronização na página Status do dispositivo
Os erros de sincronização aparecem nativamente na página Status do dispositivo. A página Status do dispositivo está disponível imediatamente em aplicativos baseados em modelo, mas deve ser configurada no aplicativo Canvas. Consulte Usando o modelo offline e o ícone de status offline para obter mais informações.
Usar um fluxo da nuvem para executar ações, em caso de erros de sincronização
Você pode criar um fluxo da nuvem automatizado no Power Automate usando o gatilho do Dataverse quando uma linha é adicionada, modificada ou excluída. O fluxo pode enviar um email automaticamente ou enviar uma notificação no dispositivo.
Observação
Para recuperar o endereço de email do usuário no fluxo, adicione a ação do Dataverse Obter uma linha por ID usando a coluna Proprietário da linha Erro de Sincronização.
Conflito de sincronização
Quando há uma incompatibilidade de dados entre o cliente e o servidor, ocorrem erros de conflito. Por padrão, as alterações feitas por um usuário no modo offline são sincronizadas automaticamente com o servidor quando o usuário estiver online novamente.
Como os conflitos de sincronização são resolvidos
Quando um usuário faz alterações nos dados em um aplicativo offline, as atualizações de cada coluna serão enviadas de volta para o Dataverse assim que a rede estiver disponível. A última atualização de cada coluna será armazenada no Dataverse, portanto, não há falha na sincronização devido a alterações conflitantes.
Os plug-ins e a validação no servidor podem invalidar as alterações. Essas alterações são revertidas localmente e um erro é gravado na tabela Erros de sincronização do Dataverse.
Configurações da resolução de conflitos
Importante
As configurações de resolução de conflitos não se aplicam a aplicativos de tela.
Se as atualizações feitas offline estiverem sendo rejeitadas com muita frequência, altere a configuração de resolução de conflito para seu valor padrão.
- Entre no centro de administração do Power Platform.
- No painel de navegação, selecione Ambientes.
- Selecionar um ambiente
- Selecione Configurações na barra de comandos.
- Selecione Produto > Recursos.
- Na seção Configurações avançadas do Mobile Offline para aplicativos baseados em modelo desative a opção Habilitar detecção de conflitos para sincronização do Mobile Offline.
Observação
Quando essa opção está ativada (não recomendada), as atualizações no servidor podem impedir que as atualizações do cliente sejam aplicadas. Erros de conflito devem ser resolvidos manualmente.