Disponible con licencia de Location Referencing.
La prevención de conflictos mejora la compatibilidad con la edición multiusuario mediante la coordinación de ediciones de rutas y eventos en un sistema de referenciación lineal (LRS) de la geodatabase corporativa. ArcGIS Location Referencing edita las coordenadas implementando un conjunto de condiciones y comportamientos que exigen a los editores adquirir un bloqueo antes de editar una ruta o un evento.
El principio principal de la prevención de conflictos de Location Referencing es: si una ruta o un evento están bloqueados para su edición por parte de un editor en una versión de base de datos, esas rutas o eventos no pueden ser editados por la misma persona en otra versión de base de datos, ni por otra persona en ninguna versión.
Habilitar la prevención de conflictos
La prevención de conflictos solo se admite en un dataset LRS que esté versionado en rama.
El versionado tradicional se admite en Location Referencing, pero la prevención de conflictos no está disponible en los datasets con versionado tradicional.
Una vez que su dataset esté versionado en rama, ejecute la herramienta Modificar LRS con la opción Prevención de conflictos establecida en Habilitar.
Si la prevención de conflictos está habilitada, cada herramienta de edición adquiere automáticamente bloqueos, si están disponibles, o alerta cuando no es posible adquirir bloqueos.
Editar una ruta y crear un bloqueo para la prevención de conflictos
Se muestra un ejemplo de flujo de trabajo de prevención de conflictos con Retirar ruta. La RutaY se retirará.
- Haga clic en el botón Identificar ruta y haga clic en RutaY.
Aparece el cuadro de diálogo Identificar ruta.
- Verifique que no haya bloqueos en la ruta seleccionada.
Como los resultados no muestran ningún bloqueo, sabemos que no existen bloqueos para esa ruta.
- Después de verificar que no existen bloqueos en la ruta, haga clic en Retirar en la pestaña Referenciación de ubicación.
Aparece el panel Retirar ruta.
- En el panel Retirar ruta, haga clic en el botón Nombre de ruta inicial y haga clic en la ruta que desee retirar.
Una vez seleccionado el nombre de una ruta, aparece un mensaje de adquisición de bloqueo en la parte superior del panel.
El mensaje de bloqueo proporciona la siguiente información:
- El bloqueo se ha adquirido correctamente en la RutaY.
- El bloqueo ha sido adquirido por el usuario del portal, Usuario11.
- El bloqueo en la RutaY para la versión de la base de datos, Versión1, ha sido adquirido por el Usuario11.
Nota:
Transferirá automáticamente un bloqueo de ruta o línea existente de otra persona a sí mismo si se cumplen las siguientes condiciones:
- La versión que es propiedad de otra persona es pública.
- Está realizando la solicitud en la misma versión en la que otra persona tiene el bloqueo.
- Si la versión de bloqueo es una versión secundaria, entonces el propietario del bloqueo no tiene una sesión de edición abierta al mismo tiempo en esa versión. Si la versión de bloqueo es la predeterminada, entonces el propietario del bloqueo no tiene una sesión de lectura abierta simultáneamente en la versión predeterminada.
- También puede confirmar la existencia del bloqueo haciendo clic de nuevo en Identificar ruta y RutaY.
El icono Bloqueado por usted también confirma que tiene bloqueos en la ruta identificada y puede editar esa ruta.
- También puede identificar bloqueos existentes con el botón Bloqueos de LRS en la pestaña Location Referencing.
Aparece la tabla Bloqueos de LRS.
Mensajes de prevención de conflictos
Como se describió anteriormente, la lógica de prevención de conflictos solamente permite editar una ruta y un evento a una única persona y en una sola versión a la vez.
Por ejemplo, si el Usuario22 intenta retirar la RutaY mientras la misma RutaY está bloqueada por el Usuario11, aparece el siguiente mensaje:
El mensaje proporciona la siguiente información:
- La RutaY no se puede editar porque el bloqueo pertenece a otra persona.
- El bloqueo ya ha sido adquirido por el usuario del portal, Usuario11.
- El bloqueo en la RutaY para la versión de la base de datos, Versión1, ya ha sido adquirido por el Usuario11.
El identificador de rutas muestra el siguiente resultado:
Aparece la tabla Bloqueos de LRS con los bloqueos enumerados.
Asegúrese de que se edite la versión más reciente del dataset
Edite la versión más reciente de la base de datos para que todos los cambios recientes de los datos estén presentes en la versión que se está editando. Para confirmar la versión más reciente, Location Referencing comprueba si se necesita una conciliación con la versión predeterminada antes de adquirir un bloqueo. Cuando es necesario conciliar una versión con la predeterminada, aparece el siguiente mensaje:
Al hacer clic en Sí cuando aparece Adquirir bloqueos, la versión del editor se concilia con la versión predeterminada.
Nota:
Asegúrese de que cualquier conflicto con la versión predeterminada se concilie antes de editar las rutas o eventos.
Puede elegir conciliar automáticamente antes de adquirir bloqueos. Con la conciliación automática habilitada, puede adquirir un bloqueo sin conciliación, a menos que se detecten conflictos durante la conciliación.
La lógica general de prevención de conflictos al editar una ruta se muestra en el siguiente gráfico:
Tipos de bloqueos
La prevención de conflictos en Location Referencing tiene dos tipos de bloqueo:
- Bloqueos de ruta
- Bloqueos de evento
Bloqueos de ruta
Los bloqueos de ruta impiden que otras personas editen una ruta y los eventos de esa ruta mientras se está editando la ruta. Los bloqueos de ruta tienen las siguientes propiedades:
- Un bloqueo se conoce como bloqueo de ruta cuando se edita una ruta en una red.
- Cuando se bloquea una ruta, solo el propietario del bloqueo puede editar la ruta y los eventos de la ruta en la versión en la que se adquirió el bloqueo.
Bloqueos de evento
Los bloqueos de evento impiden que otras personas editen una capa de eventos de una ruta específica. Un bloqueo de evento se adquiere para la capa de eventos de una ruta.
Si el Usuario1 ha bloqueado la Capa de eventos1 correspondiente a la Ruta1 en la Versión1, se aplica lo siguiente:
- Nadie más puede editar la Capa de eventos1 correspondiente a la Ruta1 en ninguna versión.
- El Usuario1 no puede editar la Capa de eventos1 correspondiente a la Ruta1 en ninguna otra versión que no sea la Versión1.
- Otras personas pueden adquirir bloqueos en otras capas de eventos (excepto la Capa de eventos1) correspondientes a la Ruta1 o a cualquier otra ruta si no existe ningún bloqueo de ruta para esa ruta.
- Nadie puede adquirir un bloqueo de ruta si más de una persona tiene bloqueos de evento para esa ruta.
- Otras personas pueden adquirir bloqueos en la Capa de eventos1 para cualquier otra ruta para la que se puedan adquirir bloqueos.
- Si la edición de un evento requiere un bloqueo de evento en una ruta, se adquiere.
Nota:
- Si existen varios intervalos de tiempo de una ruta o un evento, el bloqueo adquirido es válido para todos los intervalos de tiempo.
- Las herramientas de geoprocesamiento adquieren bloqueos según sea necesario.
En el siguiente gráfico se muestra la lógica de prevención de conflictos cuando hay eventos para una ruta:
Prevención de conflictos durante la edición de líneas de centro
Cuando existen rutas concurrentes, las rutas se bloquean basándose en las líneas de centro comunes. La siguiente figura muestra este concepto:
- Si se edita Ruta X, el bloqueo se adquiere en la Ruta X y nadie más puede adquirir un bloqueo en la Ruta Y porque comparten una línea de centro común: C2.
- Si se edita Ruta Y, el bloqueo se adquiere en la Ruta Y y nadie más puede adquirir un bloqueo en la Ruta X porque comparten una línea de centro común: C2.
- Si se edita la línea de centro C1 (realineación cartográfica o dividir línea de centro), solo se bloquea la Ruta X.
- Si se edita la línea de centro C3, solo se bloquea la Ruta Y.
- Si se edita la línea de centro C2, tanto la Ruta X como la Ruta Y se bloquean porque C2 es una línea de centro compartida entre esas dos rutas.
Liberar bloqueos
Los bloqueos se liberan automáticamente cuando ocurre lo siguiente:
- La versión que contiene los bloqueos se publica en la versión predeterminada.
- Se elimina la versión que contiene los bloqueos.
- Los bloqueos adquiridos en la versión predeterminada como resultado de utilizar la edición de rutas, la edición de líneas de centro o las herramientas de geoprocesamiento se liberan una vez completada la ejecución.
Los bloqueos se pueden liberar manualmente en función de su estado liberable.
Si el valor de estado reutilizable es Sí, puede liberar el bloqueo haciendo lo siguiente:
- Haga clic en el botón Liberar bloqueos en la pestaña Location Referencing.
- Haga clic en el botón Liberar bloqueos disponible en la tabla de Bloqueos de LRS.
Si el valor de estado reutilizable es No, no se puede liberar el bloqueo.
Si el valor de estado reutilizable es En publicación, el bloqueo solo se puede liberar después de la publicación en la versión predeterminada.
Nota:
Transferirá automáticamente un bloqueo de ruta o línea existente de otra persona a sí mismo si se cumplen las siguientes condiciones:
- La versión que es propiedad de otra persona es pública.
- Está realizando la solicitud en la misma versión en la que otra persona tiene el bloqueo.
- Si la versión de bloqueo es una versión secundaria, entonces el propietario del bloqueo no tiene una sesión de edición abierta al mismo tiempo en esa versión. Si la versión de bloqueo es la predeterminada, entonces el propietario del bloqueo no tiene una sesión de lectura abierta simultáneamente en la versión predeterminada.
Resumen de las reglas de prevención de conflictos
Si se habilita la prevención de conflictos, puede editar una ruta después de adquirir un bloqueo en esa ruta en estas condiciones:
- Nadie tiene un bloqueo en esa ruta en ninguna versión de la base de datos.
- La misma persona ya tiene un bloqueo de ruta en esa ruta en la misma versión de la base de datos en la que actualmente están trabajando.
Cuando se habilita la prevención de conflictos y no se cumplen las condiciones de transferencia de bloqueos, no se puede editar una ruta en estas condiciones:
- La conciliación con el valor predeterminado es necesaria.
- Existen conflictos de geodatabase en la versión actual.
- La ruta ya está bloqueada por otra persona.
- La misma persona ya tiene un bloqueo de ruta en esa ruta en otra versión de la base de datos en la que están trabajando actualmente.
- Otra persona tiene bloqueos de evento en esa ruta (siempre que no se cumplan las condiciones de transferencia de bloqueo).
- La misma persona tiene bloqueos de evento en esa ruta en otra versión de la base de datos.
Si la prevención de conflictos está habilitada, puede editar un evento después de adquirir un bloqueo en esa capa de eventos en estas condiciones:
- Nadie tiene un bloqueo en esa capa de eventos para la ruta en la que se encuentra el evento en ninguna versión de la base de datos (siempre y cuando no se cumplan las condiciones de transferencia de bloqueo).
- La misma persona ya tiene un bloqueo de evento en la misma versión de la base de datos en la que están trabajando actualmente (para la ruta en la que se encuentra el evento).
- La misma persona ya tiene un bloqueo de ruta (para la ruta en la que se encuentra el evento) en la misma versión.
Cuando la prevención de conflictos está habilitada, no se puede editar un evento en estas condiciones:
- La conciliación con el valor predeterminado es necesaria.
- Existen conflictos de geodatabase en la versión actual.
- La capa de eventos ya está bloqueada por otra persona para la ruta en la que se encuentra el evento (siempre que no se cumplan las condiciones de transferencia de bloqueo).
- La capa de eventos ya está bloqueada por la misma persona para la ruta en la que se encuentra el evento, pero en una versión diferente.
- La ruta en la que se encuentra el evento ya está bloqueada por otra persona (siempre que no se cumplan las condiciones de transferencia de bloqueo).
- La ruta en la que se encuentra el evento ya está bloqueada por la misma persona, pero en una versión diferente.