Доступно с лицензией Standard или Advanced.
Набор данных участков поддерживает редактирование в версиях первого дочернего уровня по отношению к версии default. Набор данных участков не поддерживает редактирование в дочерних версиях.
Состояния версий и набор данных участков
Набор данных участков должен быть зарегистрирован как версионный до того, как он сможет быть отредактирован в многопользовательской базе геоданных. Как только набор данных участков зарегистрирован как версионный, вы можете выполнять создание версий для редактирования набора участков. Версия является видом базы геоданных, позволяющим редактировать этот вид и сразу видеть все внесенные изменения. Другие пользователи, подключенные к версии, будут видеть все изменения после выполнения обновления. Однако пользователи, подключенные к другим версиям, не будут видеть изменения, которые были выполнены в дочерней версии, пока они не будут закреплены в версии по умолчанию.
Когда набор данных регистрируется как версионный, создаются две дельта-таблицы (delta table): таблица A (или Adds – добавления) – для добавления данных и изменений и таблица D (или Deletes – удаления) для удаления. Каждый раз, когда вы обновляете или удаляете записи в наборе данных, строки будут добавляться в одну или обе таблицы, и новое состояние версии будет создано. Таким образом, в версионный набор данных входит исходная таблица (она называется основная или базовая) и все изменения в дельта-таблицах.
При редактировании набора данных участков каждое изменение выполняется в XML-потоке задачи. Когда сеанс редактирования сохраняется, XML-поток закрепляется в наборе данных участков в виде одиночной правки и создается новое состояние версии.
Версии набора данных участков и блокировка редактирования
При редактировании набор данных участков блокируется. Когда набор данных участков заблокирован на редактирование, он не может быть открыт в этой или в другой версии до тех пор, пока блокировка не будет снята. Однако поля в таблицах атрибутов участков, точек, линий и опорных точек заблокированного набора участков все же могут быть изменены в других версиях. Если одинаковое поле будет отредактировано в нескольких версиях, то потребуется выполнить разрешение конфликтов, когда версии будут согласованы.
Просмотреть, какие поля можно редактировать при наличии блокировки таблиц атрибутов участков
Если участок редактируется в другой версии, этот участок отображается заблокированным для редактирования, с помощью специального значка (заблокировано) в окне Обозреватель участков. Таким образом, участок, который редактируется, будет заблокирован для правки в других версиях. Блокировки на редактирование участков будут сняты, как только версия, в которой редактировался участок, будет закреплена в версии по умолчанию.
Ниже представлен обзор правил, управляющих поведением заблокированных участков в многопользовательской среде:
- Вы не можете открыть участки, которые редактируются в другой версии. Вы можете получить доступ к участкам с блокировками на редактирование только после того, как версия будет закреплена в версии по умолчанию. Когда версия согласовывается с версией по умолчанию, все обновления и изменения, выполненные в версии, будут закреплены в версии по умолчанию и блокировки участков будут сняты.
- Если участок был ранее отредактирован в той же версии, с которой вы сейчас работаете, он будет отмечен специальной иконкой (не заблокирован)
в окне Обозреватель участков.
- Если участок был ранее отредактирован в другой версии, которая была закреплена, он будет отмечен специальным значком (не заблокирован)
в той версии, с которой вы работаете.
- Если участки были отредактированы в другой версии, и версия была закреплена в версии по умолчанию, вы можете выполнять редактирование этих участков в вашей версии после согласования с версией по умолчанию.
- Если участок есть в списке заблокированных в окне Обозреватель участков, вы можете выбрать этот участок в окне Обозреватель участков, чтобы увидеть какой пользователь и в какой версии редактирует участок. Имя пользователя и имя версии отображаются в правой части панели статуса в окне ArcMap.
Общая информация об иконках блокировок редактирования
Участок доступен для редактирования. | |
Участок сейчас редактируется. | |
Участок был отредактирован и сейчас не заблокирован. | |
Участок заблокирован и редактируется в этой версии, или редактировался в другой версии данных. |
Разрешение конфликтов между версиями наборов данных участков
После завершения редактирования версии, вы можете синхронизировать изменения с версией по умолчанию. Это может быть выполнено в процессе согласования и закрепления. Разрешение конфликтов обнаруживает конфликты между вашей версией и версией по умолчанию. Конфликты возникают, когда версия по умолчанию была изменена после создания версии и изменения конфликтуют с вашими правками. Например, для набора данных участков, уравнивание, запущенное для перекрывающихся областей, приведет к конфликту координат. Разрешение конфликта всегда производится в пользу дочерней версии.
Более подробно о разрешении конфликтов версий
Рекомендуется выполнять частое разрешение конфликтов наборов данных участков. Когда дочерняя версия закрепляется в версии по умолчанию и производится согласование, дочерняя версия получает обновления, которые были внесены после закрепления других дочерних версий в версии по умолчанию.
Правки и обновления данных об участках обычно производятся в виде длинных транзакций. В наборе данных участков правки участков могут производиться в течении долгого времени. Разрешение конфликтов версий будет производить обновление версий, перенося новые актуальные данные из версии по умолчанию. Это очень важно для продолжительного редактирования версионных наборов данных участков.
Ниже приведены несколько примеров обновлений, которые могут быть получены при разрешении конфликтов версионного набора данных участков с версией по умолчанию:
- Обновленные координаты для точек участков (уравнивание по методу наименьших квадратов, запущенное в версии по умолчанию или закрепленное из другой дочерней версии)
- Новые участки, созданные в версии по умолчанию или закрепленные в другой дочерней версии
- Обновленные или новые опорные точки, созданные в версии по умолчанию или закрепленные в других дочерних версиях
Разрешение конфликтов
При разрешении конфликтов версий набора данных участков с версией по умолчанию, конфликты будут обнаружены в следующих случаях:
- Координаты точек изменились по сравнению с версией по умолчанию.
- Значения атрибутов в полях отличаются между версией по умолчанию и дочерней версией.
Конфликты в координатах точек могут произойти по нескольким причинам:
- В версии по умолчанию и в дочерней версии было выполнено уравнивание набора данных участков.
- Уравнивание набора данных участков было выполнено в двух дочерних версиях, одна из которых уже прошла процесс согласования с версией по умолчанию, а другая проходит его в настоящий момент.
В наборе данных участков, конфликты координат всегда разрешаются в пользу последнего набора уравненных координат. Таким образом, если дочерняя версия был уравнена, то следующее будет являться истиной:
- Уравненные координаты в версии по умолчанию будут заменены координатами из дочерней версии.
- Конфликты в координатах опорных точек будут разрешены в пользу дочерней версии.
Синхронизация версий и набора данных участков
Когда версия с набором данных участков закрепляется, снимаются все блокировки участков. Если существуют задания, созданные в этой версии, статус задания будет изменен на Выполнено. Выполненная задача может быть удалена из рабочего журнала. Выполненная задача не может быть открыта снова, но свойства задачи, такие как участки, которые были использованы в задаче, остаются видимыми.
Для навигации к выполненной задаче, вам потребуется добавить следующие пустые поля BLOB к таблице задач:
- CommittedObjs
- LocalControl
Как только эти поля присутствуют в таблице заданий, вы можете выполнять масштабирование и перемещение к выполненным заданиям.
Разрешения, версии и набор данных участков
Когда набор данных участков создается в версионной среде базы геоданных, следует осторожно выдавать права на редактирование набора участков, для любой версии базы данных, в которой могут быть выполнены правки участков. Так как процессы, выполненные в версии, такие как разрешение конфликтов или ее удаление могут повлиять на набор данных участков. Так как права на версию не зависят от прав на набор данных участков, пользователь должен иметь права на согласование, закрепление или удаление версий при отсутствии прав на редактирование набора в этой версии. Когда происходит несовпадение прав, могут завершиться с ошибкой операции над версией (согласование или закрепление) или набор данных участков может быть поврежден (например, при удалении версии).
Любая многоверсионная система, содержащая набор данных участков, должна иметь следующие выражения, всегда установленные на True (Истина): Любой пользователь, выполняющий операции над версией, затрагивающие набор данных участков внутри этой версии, обязан иметь права доступа на изменение данного набора участков, и любого связанного с ним класса пространственных объектов.
Разрешения для версий
Версия может быть создана с одной из следующих трех возможных настроек разрешений.
- Частный доступ – Только владелец версии может просматривать и редактировать наборы данных в версии. Только владелец версии может выполнять операции над версией (такие как удаление или закрепление).
- Защищенный доступ – Любой пользователь может просматривать наборы данных в версии, но только владелец может выполнять их редактирование. Только владелец версии может выполнять операции над версией.
- Общий доступ – Все пользователи могут просматривать и редактировать наборы данных в версии. Все пользователи могут выполнять операции над версией.
Настройка прав доступа действует дополнительно к настройкам прав доступа для отдельных наборов данных. Например, пользователь может редактировать объекты в наборе данных в версии, если он имеет возможность обновления и версии и набора данных.
Права для наборов данных
Набор данных участков должен быть создан в наборе классов. Пользователь, создавший набор данных участков, автоматически получает права доступа на обновление. Другие пользователи могут получить права доступа для набора данных участков, если эти права будут изменены для набора классов, в котором располагается набор данных участков.
Следующие права доступа могут быть предоставлены для набора данных:
- Нет доступа (None) – Пользователь не может просматривать или редактировать набор данных.
- Select – Пользователь может выполнять чтение данных и запросы к ним.
- Select, Update, Insert, Delete – Пользователь имеет полные привилегии на чтение/запись набора данных.
Типы правок в наборе данных участков
Правки в наборе данных участков могут быть следующих двух видов:
- Правки классов набора данных участков (например, участков, линий или опорных точек).
- Правки классы объектов, связанных с набором данных участков. Уравнивание объектов наборов данных участков применяется для изменения векторов от уравнивания набора данных объектов к связанным классам объектов, соответственно изменяя их геометрию.
При редактировании классов набора данных участков пользователь, выполняющий редактирование, должен обладать правами доступа на набор классов объектов, который содержит этот набор данных участков. При запуске уравнивания объектов наборов данных участков пользователь должен обладать правами доступа на обновление и набора данных участков и связанных классов объектов.
Получение прав доступа на обновление набора данных участков не обязательно, если не предполагается редактировать набор данных участков или связанные с ним классы объектов в версии, которая будет согласована, закреплена или удалена.
В следующей таблице показаны все требуемые разрешения и права доступа, которые должны быть выданы пользователю для выполнения операций с версией, в которой присутствует набор данных участков.
