Prevención de conflictos

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.

Herramienta Modificar LRS, Prevención de conflictos habilitado
Habilite la opción Prevención de conflictos.

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

El siguiente ejemplo de flujo de trabajo de prevención de conflictos se muestra mediante el uso de Retirar ruta. RutaX, RutaY y RutaZ forman parte de LíneaXYZ. RutaX se retirará.

Prevención de conflictos y retirada de rutas
Las rutas forman parte de LíneaXYZ.
  1. Haga clic en el botón Identificar ruta Identificar rutas en la pestaña Referenciación de ubicación y en RutaX.

    Aparece el cuadro de diálogo Identificar ruta.

    Cuadro de diálogo Identificar ruta
    Identificador de ruta muestra que no existe ningún bloqueo.
  2. Verifique que no haya bloqueos en la ruta o línea seleccionada.

    En el ejemplo anterior no se muestran bloqueos, lo que confirma que no existen bloqueos para RutaX.

  3. Después de verificar que no existen bloqueos en la ruta, haga clic en Retirar Retirar en la pestaña Referenciación de ubicación.

    Aparece el panel Retirar ruta.

  4. En el panel Retirar ruta, haga clic en el botón Nombre de ruta inicial y 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.

    Panel Retirar ruta, bloqueo adquirido
    Las rutas adquiridas se confirman en el panel Retirar ruta.

    El mensaje de bloqueo proporciona la siguiente información:

    • Se adquirió el bloqueo en LíneaXYZ.
      Nota:

      RutaX forma parte de LíneaXYZ.

      Dado que RutaY y RutaZ forman parte de LíneaXYZ, también están bloqueadas para edición.

    • El bloqueo ha sido adquirido por el usuario del portal, Usuario11.
    • El bloqueo en LíneaXYZ 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.

  5. De manera opcional, asegúrese de que el bloqueo existe haciendo clic de nuevo en Identificar ruta en la pestaña Referenciación de ubicación y RutaX.
    Cuadro de diálogo Identificar rutas, sección Bloqueo de LRS
    El identificador de rutas muestra que la ruta ha sido bloqueada.

    El icono Bloqueado por usted Bloqueado por usted también confirma que tiene bloqueos en la ruta identificada y puede editar esa ruta.

  6. Si lo desea, identifique los bloqueos existentes con el botón Bloqueos de LRS Tabla de bloqueos de LRS de la pestaña Referenciación de ubicación.

    Aparece la tabla Bloqueos de LRS.

    Tabla Bloqueos de LRS
    La tabla Bloqueos muestra la existencia del bloqueo adquirido recientemente.

Evitar conflictos

Como se describió anteriormente, la lógica de prevención de conflictos solo permite que una persona edite una ruta o una línea y un evento en una única versión cada vez.

Por ejemplo, si Usuario22 intenta retirar la misma RutaX mientras RutaX se encuentra bloqueado por Usuario11, aparece el siguiente mensaje:

Panel Retirar ruta, bloqueo no adquirido
El usuario22 no puede editar la ruta cuando el usuario11 tiene los bloqueos.

El mensaje proporciona la siguiente información:

  • LíneaXYZ no se puede editar porque el bloqueo pertenece a otra persona.
    Nota:

    RutaX forma parte de LíneaXYZ.

  • El bloqueo ya ha sido adquirido por el usuario del portal, Usuario11.
  • El bloqueo en LíneaXYZ para la versión de la base de datos, Versión1, ya ha sido adquirido por el Usuario11.

El identificador de rutas Identificar rutas muestra el siguiente resultado:

Cuadro de diálogo Identificar ruta, bloqueos existentes
La ruta no se puede editar debido a bloqueos existentes.

Aparece la tabla Bloqueos de LRS con los bloqueos enumerados.

Tabla Bloqueos de LRS
La tabla Bloqueos de LRS aparece con los bloqueos enumerados.

Asegúrese de que se edita 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:

Cuadro de diálogo Adquirir bloqueos
Concilie con la versión predeterminada.

Al hacer clic en 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.

Más información sobre la conciliación y la publicación de ediciones en una versión en rama, la solución de conflictos y la publicación de cambios

Puede elegir conciliar automáticamente antes de adquirir bloqueos. Con la conciliación automática habilitada, puede adquirir un bloqueo sin la 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:

Gráfico de prevención de conflictos
Se muestra la prevención de conflictos en Referenciación de ubicación cuando comienza la edición.

Tipos de bloqueos

La prevención de conflictos en Location Referencing tiene dos tipos de bloqueo:

  • Bloqueos de ruta y línea
  • Bloqueos de evento

Bloqueos de ruta y línea

Los bloqueos de ruta y línea evitan que otras personas editen una ruta y eventos en esa ruta mientras se está editando la ruta.

Los bloqueos de ruta y línea tienen las siguientes propiedades:

  • El bloqueo se refiere a un bloqueo de ruta cuando se edita una ruta en una red continua.
  • Un bloqueo de línea se adquiere cuando se edita una ruta en una red de ingeniería que admite líneas. La línea completa y todas sus rutas se bloquean. Un bloqueo de línea significa que, si una persona está editando una de las diversas rutas que forman una línea, nadie más puede editar ninguna otra ruta en esa línea.
  • Una ruta bloqueada significa que solo la persona con el bloqueo puede editar la ruta y sus eventos en la versión en la que se adquirió el bloqueo, a menos que se cumplan las condiciones de transferencia de bloqueo.

Bloqueos de evento

Los bloqueos de evento impiden que otras personas editen una capa de eventos correspondiente a una ruta específica. Se adquiere un bloqueo de evento para la capa de eventos correspondiente a una ruta o una línea.

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.
  • Al editar un evento (punto o línea) que está registrado en una red que admite líneas, se adquiere un bloqueo de evento en una línea.
  • Al editar un evento (punto o línea) que está registrado en una red que no admite líneas, se adquiere un bloqueo de evento en una ruta.
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 de eventos de una ruta
Se muestra el gráfico de prevención de conflictos cuando hay eventos en 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:

Prevención de conflictos y edición de líneas de centro
Se muestra el bloqueo de rutas concurrentes.

  • 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.

Puede liberar manualmente los bloqueos en función de su estado reutilizable.

Si el valor de estado reutilizable es Sí, puede liberar el bloqueo haciendo lo siguiente:

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.

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 o línea en la misma versión (para la ruta o línea en la que se encuentra el evento).

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.