Resolver conflictos de sincronización con el servidor

En este artículo se proporciona información que le ayudará a resolver conflictos de sincronización móvil con el servidor.

Tabla de errores de sincronización

En caso de error de sincronización, el sistema genera automáticamente una nueva entrada en la tabla Error de sincronización en Dataverse. Esta tabla se estructura con las columnas siguientes.

Nombre de la columna Description Example
Hora de error Hora a la que se creó el error. 17/5/2024 7:16 AM
Mensaje de error Descripción del error. Entity Account With Id = <RowId> Does Not Exist
Tipo de error Tipo del error, como un conflicto o un registro no encontrado. No se encontró el registro
Registro Actualización de registro durante un error de sincronización. Contoso
Owner Usuario que actualizó el registro. John Doe
Acción Acción aplicada al registro que se va a sincronizar. Update
Datos de acción Json que contiene la carga útil de la acción. {"lastname":"Contoso2"}
Solicitar datos Json que contiene la consulta. {"lastname":"Contoso2","syncerror__regardingentityid":<syncerrorId>,"entitylogicalname":"account"}
Código de error Código del error. -2147015424

Nota:

Asegúrese de que el rol asignado al usuario concede privilegios de lectura en la tabla Error de sincronización . Más información: Creación o edición de un rol de seguridad para administrar el acceso

Recomendación sobre cómo usar la tabla de errores de sincronización

La tabla Error de sincronización es una tabla de Dataverse estándar. Se recomienda crear una aplicación controlada por modelos para administrar los errores de sincronización.

Si ejecuta la aplicación controlada por modelos, puede ver los errores de sincronización por cada usuario. Si selecciona una fila de error de sincronización, puede reintentar los cambios en la barra de comandos.

Error de sincronización en la página Estado del dispositivo

Los errores de sincronización se muestran de forma nativa en la página Estado del dispositivo . La página Estado del dispositivo está disponible de forma predeterminada en aplicaciones controladas por modelos, pero debe configurarse en la aplicación de lienzo. Para más detalles, vea 'Uso de la plantilla sin conexión y el icono de estado sin conexión' para obtener más información.

Uso de un flujo de nube para realizar acciones en los errores de sincronización

Puede crear un flujo de nube automatizado en Power Automate mediante el desencadenador dataverse cuando se agrega, modifica o elimina una fila. El flujo puede enviar automáticamente un correo electrónico o enviar una notificación en el dispositivo.

Nota:

Para recuperar la dirección de correo electrónico del usuario dentro del flujo, agregue la acción de Dataverse Obtener una fila por id mediante la columna Propietario de la fila Error de sincronización.

Conflicto de sincronización

Cuando hay un error de coincidencia de datos entre el cliente y el servidor, se producen errores de conflicto. De forma predeterminada, los cambios realizados por un usuario en modo sin conexión se sincronizan automáticamente con el servidor cuando el usuario vuelve a estar en línea.

Cómo se resuelven los conflictos de sincronización

Cuando un usuario realiza cambios en los datos de una aplicación sin conexión, las actualizaciones de cada columna se devuelven a Dataverse tan pronto como la red esté disponible. La última actualización de cada columna se almacena en Dataverse, por lo que esta sincronización no produce un error debido a cambios en conflicto.

Los complementos del lado servidor y la validación pueden invalidar los cambios. Esos cambios se revierten localmente y se escribe un error en la tabla Errores de sincronización de Dataverse.

Configuración de resolución de conflictos

Importante

La configuración de resolución de conflictos no se aplica a las aplicaciones de lienzo.

Si las actualizaciones realizadas mientras están sin conexión se rechazan con demasiada frecuencia, considere la posibilidad de cambiar la configuración de resolución de conflictos a su valor predeterminado.

  1. Inicie sesión en el Centro de administración de Power Platform.
  2. En el panel de navegación, seleccione Entornos.
  3. Seleccione un entorno.
  4. Seleccione Configuración en la barra de comandos.
  5. Seleccione Producto>Características.
  6. En la sección Configuración avanzada móvil sin conexión para aplicaciones controladas por modelos, desactive la opción Habilitar detección de conflictos para la sincronización sin conexión móvil .

Nota:

Cuando esta opción está activada (no recomendada), las actualizaciones en el servidor pueden impedir que se apliquen las actualizaciones de cliente. Los errores de conflicto se deben resolver manualmente.