Disponible con una licencia Standard o Advanced.
Se detectará cualquier conflicto cuando una versión con nombre se concilia con una versión principal. Si se detectan conflictos durante el proceso de conciliación, estos se resuelven inicialmente a favor de la versión de edición y se pueden revisar en la vista Conflictos.
Los conflictos se producen en los siguientes casos:
- La misma entidad se actualiza tanto en la versión de edición actual como en la versión de destino.
- La misma entidad se actualiza en una versión y se elimina en la otra.
- Una clase de relación o entidad relacionada topológicamente se modifica en la versión de edición actual y en la versión de destino.
La vista Conflictos contiene todas las clases de conflicto y las entidades o filas en conflicto, y le permite hacer lo siguiente:
- Determinar los campos o las filas que están en conflicto.
- Ver los conflictos.
- Marcar los conflictos como revisados o no revisados.
- Resolver conflictos designando la representación que se utilizará para remplazar entidades o atributos.
Una vez que termine de conciliar y revisar los conflictos, puede completar el proceso de fusión publicando los cambios en la versión de destino.
Abrir la vista Conflictos
Siga estos pasos para abrir la vista Conflictos:
- En el panel Contenido, haga clic en el botón Lista por fuente de datos .
- Asegúrese de tener conexión a una versión con nombre. Para cambiar las versiones, haga clic con el botón derecho en la fuente de datos de la geodatabase corporativa y haga clic en Cambiar versión .
- En la pestaña Versionado, haga clic en el botón Conciliar y complete el proceso de conciliación. Si se descubren conflictos durante la conciliación, aparece un mensaje que le pregunta si desea revisar los conflictos. Al hacer clic en Sí, se abre la vista Conflictos.
Es posible acoplar la vista Conflictos en cualquier lugar de la aplicación o posicionarla como ventana flotante. Le permite interactuar con una vista de mapa al mismo tiempo para ofrecer contexto y explorar más los datos.
Utilizar la vista Conflictos
La vista Conflictos contiene todas las clases de conflicto y las entidades o filas en conflicto. Los conflictos se organizan por la fuente de datos, la clase, la categoría de conflicto y el ObjectID. Los espacios de trabajo de todos los mapas del proyecto se enumeran en la vista Conflictos. Las clases de conflicto representan las clases en conflicto de toda la geodatabase.
La vista Conflictos consta de tres secciones principales para trabajar con conflictos. La lista Conflictos contiene todas las clases de conflictos y entidades en conflicto. La cuadrícula de información muestra los atributos y valores de todas las representaciones de la entidad en conflicto seleccionadas en la lista Conflictos. El visor de visualización de conflictos se utiliza para ver y comparar las distintas representaciones para ediciones de geometría en un mapa.
Haga referencia a la imagen y la tabla que aparecen a continuación para revisar los elementos de la vista Conflictos:
Elemento | Descripción |
---|---|
1 | Lista Conflictos: la sección de lista de conflictos contiene todas las clases de conflictos y entidades en conflicto. |
2 | Cuadrícula de información: la sección de cuadrícula de información muestra los atributos y valores de todas las representaciones de la entidad en conflicto. |
3 | Visor Visualización de conflicto: el botón Visualización de conflicto abre la sección del visor de conflictos en la parte inferior de la vista Conflictos. Esto permite ver los conflictos cuando aparecen en el mapa, así como desplazarse e identificar entidades en la visualización. |
4 | Filtrar conflictos revisados: si activa esta casilla en la parte superior de la vista, puede filtrar la lista para que muestre solamente los conflictos que aún no se han revisado. |
5 | Indicador rojo: un indicador rojo a la izquierda de la fila identifica un conflicto. Por ejemplo, si la geometría de la entidad se editó en cada versión, aparece un indicador rojo junto al campo Forma.
|
6 | Mostrar todo: le permite ver todos los campos. |
7 | Mostrar conflictos: le permite ver solo los campos que están en conflicto. |
8 | Mostrar créditos para capas de servicios: al hacer clic en este botón, se abre un cuadro de diálogo que enumera los proveedores y creadores del mapa base. |
9 | Herramientas de navegación de Visualización de conflictos: las siguientes herramientas permiten navegar y controlar la versión que se muestra y navegar por las ventanas de visualización de conflictos:
|
Lista de conflictos
Todas las entidades y clases en conflicto aparecen en la lista de conflictos del lado superior izquierdo de la vista Conflictos.
Haga clic en la flecha desplegable de un objeto para ver los conflictos de cada entidad. Se dividen en las siguientes categorías:
- Actualizar-Eliminar: la entidad se actualizó en la versión actual y se eliminó en la versión de destino.
- Eliminar-Actualizar: la entidad se eliminó en la versión actual y se actualizó en la versión de destino.
- Actualizar-Actualizar: la entidad se actualizó tanto en la versión actual como en la versión de destino.
Cuando selecciona un ObjectID de una entidad individual en la lista, los campos y los atributos de la versión Actual, Previa a la conciliación, Destino y Antecesora común de la entidad aparecen en la cuadrícula informativa ubicada en el lado derecho de la vista Conflictos.
Sugerencia:
Los conflictos que no se han revisado se muestran en negrita. Los conflictos revisados ya no están en negrita.
Cuadrícula de información
En la cuadrícula de información, puede visualizar las distintas representaciones de valores de atributo para una entidad seleccionada. Tener a su disposición los atributos y valores de todas las representaciones de una entidad en conflicto permite ver cómo varían los valores de atributos entre versiones y ayuda a determinar la representación de los datos que desea conservar. Todos los campos se muestran en la cuadrícula de información y aparece un indicador rojo a la izquierda de la fila de los atributos que están en conflicto.
Las siguientes columnas muestran valores de atributos para distintas representaciones de la entidad:
- Actual: representa el estado actual de las entidades y los atributos de la versión con nombre. Incluye cualquier edición que haya realizado.
- Previa a la conciliación: representa cómo aparecían las entidades en la versión anterior a la conciliación.
- Destino: representa las entidades y sus atributos en la versión de destino.
- Antecesora común: representa las entidades y los atributos cuando se creó inicialmente la versión o en el momento de la última operación de conciliación.
Si se ha eliminado una entidad en alguna versión, aparecerá <Deleted> para el valor de atributo de esa versión. Si se han insertado entidades en la versión con nombre y se promueven a un conflicto, aparece Did not exist en las columnas Destino y Antecesora común.
Sugerencia:
Todos los campos se muestran en la cuadrícula de información de la vista Conflictos; sin embargo, los campos con un filtro de conflicto de nivel de campo aplicado no se identifican como en conflicto y no muestran un indicador rojo.
Visualización de conflicto
El botón Visualización de conflicto abre la sección del visor de conflictos en la parte inferior de la vista Conflictos. El visor de visualización de conflictos le permite ver los conflictos cuando aparecen en el mapa, así como desplazarse e identificar entidades en la visualización. Los conflictos que se muestran se basan en el ObjectID de la entidad individual seleccionada en la lista de conflictos.
Las herramientas de navegación de la visualización de conflictos se encuentran debajo del visor Visualización de conflictos. Estas herramientas contienen dos menús desplegables que le permiten cambiar las versiones que se están comparando, siendo las opciones de versión las versiones Actual, Previa a la conciliación, Destino o Antecesora común.
El contenido de la visualización de conflictos difiere en función de si la clase de conflicto está presente en el mapa activo:
- Cuando la clase de conflicto está en el mapa activo, la visualización del conflicto muestra todas las capas del mapa, utiliza la simbología del mapa e incluye el mapa base.
- Cuando la clase de conflicto no está en el mapa activo, la visualización de conflictos solo muestra la capa en conflicto, utiliza la simbología predeterminada y no incluye el mapa base.
Marcar los conflictos como revisados o no revisados
Cuando determine los campos o las filas que están en conflicto, puede marcar una entidad como revisada. Puede llevar un registro de las entidades de la lista que ha revisado, ya que aquellas marcadas como revisadas dejan de aparecer en negrita.
Para volver a un conflicto de entidad más tarde, puede hacer clic con el botón derecho en el ObjectID en la lista Conflictos y hacer clic en Marcar como no revisado. Esto hace que la entidad vuelva a aparecer en negrita.
Si hace clic en la casilla de verificación Filtrar conflictos revisados en la parte superior de la vista, puede filtrar la lista para que muestre solamente conflictos que aún no se han revisado.
Resolver conflictos
Al resolver conflictos, usted decide qué representación de las entidades y atributos desea mantener. Con independencia de la versión para la que desee conciliar, la de destino o la versión editada, podrá especificar la representación que desea conservar: la representación actual (cómo aparecía en la versión antes de la conciliación), la representación de destino (cómo aparece en los cambios realizados por otro editor) o la representación antecesora común (cómo está la entidad o el atributo en la versión de destino).
En la vista Conflictos, haga clic con el botón derecho en una versión, un dataset, una entidad o un atributo y seleccione una de las siguientes opciones de sustitución:
- Reemplazar con versión previa a la conciliación
- Reemplazar con versión de destino
- Reemplazar por versión de antepasado común
A continuación, se muestran diferentes niveles en los que puede utilizar las opciones de sustitución para resolver conflictos:
- Reemplazo de atributo:
Esto ocurre en el nivel de campo. Si hay conflictos en atributos, puede reemplazar solo el valor del atributo en la versión actual por uno de la representación actual, previa a la conciliación, destino o antecesora común. Para hacer esto, haga clic con el botón derecho en el atributo en conflicto y haga clic en la opción que desea del menú.
- Reemplazo de entidad:
Ocurre en el nivel de fila. Puede reemplazar una entidad completa con la representación de la entidad en la versión actual, previa a la conciliación, la de destino o la antecesora común. Eso significa que cualquier campo en conflicto se reemplaza.
- Reemplazo de nivel de clase:
Puede elegir reemplazar la representación actual de la clase de entidad completa con la representación de la versión actual, la previa a la conciliación, la de destino o la antecesora común para resolver el conflicto. Esto reemplaza todas entidades y atributos en conflicto de una sola vez, lo que le permite actualizar y reemplazar con rapidez las entidades en conflicto. Si existen varias entidades en la lista Conflictos, todas se reemplazarán con la versión que elija.
Para elegir una opción de reemplazo de nivel de clase, haga clic con el botón derecho en el nombre de la clase de entidad en la lista Conflictos y haga clic en la versión que desee utilizar.
- Reemplazo completo:
Este es un reemplazo a nivel de raíz. Al utilizar esta opción de reemplazo, reemplaza todas las entidades y clases de entidad en conflicto de la lista con la representación designada. Si tiene varias clases de entidad y múltiples objetos en conflicto, todos ellos se reemplazan con la versión que elija.
Haga clic con el botón derecho en la información de versión y de conexión en la parte superior de la lista Conflictos y haga clic en la versión en la que desee reemplazar todos los conflictos.
- Fusionar geometrías:
Esto ocurre en el nivel del campo y se asocia específicamente con el atributo Forma. La opción para fusionar geometrías solo está disponible en el menú contextual Forma cuando hay un conflicto que involucra al campo Forma. Si dos editores editan la geometría de la misma entidad pero no la misma área de dicha entidad, tienen la opción de resolver el conflicto mediante la fusión de geometrías y de aceptar ambas ediciones. Una vez que se han fusionado las geometrías, el resultado final es una entidad que contiene las ediciones realizadas por los dos editores.
Si las ediciones realizadas por un editor comparten una región que también ha sido editada por otro editor, las áreas editadas se superpondrán. A pesar de que fusionar geometrías puede ser una opción, tratar de hacerlo generará fallos con los siguientes mensajes de error:
Error encontrado al fusionar geometrías. No puede fusionar las dos geometrías. Las regiones editadas se superponen.
Filtrado de conflicto de nivel de campo
Al trabajar con el versionado tradicional, en ocasiones puede querer que permanezcan las ediciones aplicadas a un campo o a un conjunto de campos cuando se detectan conflictos durante la conciliación. Los siguientes ejemplos muestran casos en los que puede desear descartar conflictos detectados en un campo al realizar la conciliación:
- Se realiza una actualización por lotes en un campo en diferentes versiones.
- Se escribe información en un campo en función de las ediciones realizadas en la versión.
Para evitar que se identifiquen conflictos cuando se actualiza el mismo atributo en las versiones principal y secundaria, puede utilizar la herramienta Agregar filtro de conflictos de campo para definir el conjunto de campos que se desea excluir de los conflictos. Un filtro de conflicto de campos permite etiquetar un campo o un conjunto de campos en una clase de entidad para excluirlos de la detección de conflictos. Los conflictos no se devuelven durante la operación de conciliación si solo se editan los campos con filtros de conflicto. Esto solo se puede usar cuando los conflictos se definen por atributo.
Nota:
Todos los campos se muestran en la vista Conflictos; sin embargo, los campos con un filtro de conflicto aplicado no se identifican como en conflicto y no muestran un indicador rojo.
Después de conciliar los cambios, el valor insertado en el campo que tiene un filtro de conflicto depende de si se elige conciliar a favor de la versión de destino o a favor de la edición. Si se decide conciliar a favor de la versión de destino, los campos con un filtro de conflicto tendrán el valor de la versión de destino. Si se decide conciliar a favor de la edición, los campos con un filtro de conflicto tendrán el valor de la versión de destino.
La herramienta Eliminar filtro de conflicto de campo puede eliminar esos filtros de conflicto de esos campos.
Puede usar la función Python de ListFieldConflictFilters para identificar cuándo una clase de entidad o tabla tiene definidos filtros de conflicto.
Nota:
Una vez que se haya definido un filtro de conflicto de campo para una clase de entidad o una tabla, se impide que los clientes de ArcGIS con versiones anteriores a la 10.2.1 abran la clase de entidad o la tabla. Es posible definir filtros de conflicto de campo en un campo y eliminarlos cuando las versiones se hayan conciliado, si es necesario que las versiones anteriores de ArcGIS tengan acceso a los datos.
Resolver conflictos con reglas de atributos
Las reglas de atributos mejoran la experiencia de edición y perfeccionan la integridad de los datos para los datasets de geodatabase. La conciliación de una clase de entidad versionada tradicional con reglas de cálculo inmediato o restricción evalúa estas reglas de atributos. Si se infringe una regla de restricción, el error de la regla de restricción se registra y la conciliación falla. Concilie conflictos por fila para evitar el error de la regla de restricción.
Resolver conflictos con clases de relación
Las clases de relación se pueden utilizar para ayudar a forzar la integridad referencial entre los objetos relacionados. Si las fuentes de datos versionadas participan en una clase de relación, el proceso de conciliación evalúa estos datos para la integridad referencial. Si se vulnera la integridad referencial, se reportan las entidades que participan como conflictos y se pueden revisar en la vista Conflictos.
Si se elimina una entidad de una clase de relación de origen, aparecerá un mensaje para que elimine una entidad de la clase de relación de destino. Por lo tanto, esté atento a las ramificaciones que se producen simplemente al reemplazar conflictos que involucran clases de entidades que participan en clases de relaciones.
El siguiente es un ejemplo de un conflicto que puede surgir entre clases de relación:
- En una versión principal, agrega una entidad de destino y la relaciona con una entidad en la clase de origen.
- En una versión secundaria, elimina la misma entidad de origen que se utilizó para relacionar la nueva entidad de destino.
- Cuando se concilian las ediciones, se detecta un conflicto de eliminación-actualización en la clase de origen.
Otro ejemplo es el siguiente:
- En el dataset de entidades de servicio eléctrico, elimina un polo que tiene relación con un transformador, lo que hace que también se elimine el transformador relacionado.
- En otra sesión de edición que se lleva a cabo al mismo tiempo, un editor altera los atributos del transformador que usted acaba de eliminar cuando eliminó el polo relacionado.
- Cuando se concilian las ediciones, se detecta un conflicto de actualización-eliminación en las clases de origen y destino.
En este último ejemplo, si el segundo editor elige reemplazar todos los conflictos por las representaciones de sesión de edición, se volverán a crear el polo y el transformador eliminados durante su sesión de edición.