Измененные области и работа с версиями наборов сетевых данных
Редактировать исходные объекты набора сетевых данных, хранящиеся в базе геоданных ArcSDE, могут одновременно несколько пользователей. В данном разделе и на различных рисунках показаны процессы, происходящие с измененными областями наборов сетевых данных при согласовании версий.
Перед началом работы с наборами сетевых данных в базе геоданных ArcSDE необходимо учитывать несколько моментов; к ним относится следующее:
Исходные объекты набора сетевых данных должны быть зарегистрированы как версионные до того, как вы сможете выполнить их редактирование.
Прежние версии:До ArcGIS 10 наборы сетевых данных не могут быть зарегистрированы как версионные. Это означает, что исходные классы объектов могут быть отредактированы, как и любые простые классы пространственных объектов. Это означает, что исходные классы пространственных объектов могут быть зарегистрированы как версионные и отредактированы с возможностью отмены и повтора правок. Они также могут быть оставлены в виде неверсионных данных и отредактированы без возможности отмены и повтора правок.
Однако, начиная с версии ArcGIS 10, вы больше не можете редактировать исходные объекты без их регистрации как версионных.
Когда набор сетевых данных зарегистрирован как версионный, изменения схемы невозможны. Перед внесением изменений в схему вы должны отменить регистрацию набора сетевых данных как версионного. (К изменениям схемы относится добавление или удаление источников сети; изменение правил связности, правил или опций высоты объектов сети; добавление, удаление или изменение атрибутов или оценок атрибутов; изменение настроек путевых листов.)
Вы можете удалить набор сетевых данных вне зависимости от того, был ли он зарегистрирован как версионный или нет.
Для полноты описания в данном разделе содержатся рисунки, которые показывают весь процесс от создания родительского и дочернего элемента до согласования и закрепления изменений и построений. Кроме того, вы не всегда будете начинать с создания родительской версии, поэтому вы можете думать о любом этапе создания дочерней версии как о моменте, когда существующая дочерняя версия и ее родительская версия имеют одно состояние.
Несмотря на то, что рисунки показывают процесс закрепления построенного набора сетевых данных в родительской версии, вы также можете закрепить сеть с измененными областями. При этом помните, что в данном случае для построения набора сетевых данных вам может потребоваться использовать пользователя с правами на редактирование родительской версии.
Следующая схема поможет вам лучше понять рисунки:
Согласование и закрепление без правок исходных объектов
Данный раздел описывает поведение измененных областей в различных ситуациях работы с версиями, включая редактирование, построение, согласование и закрепление наборов сетевых данных. Сюда не включен случай, когда происходит редактирование исходных объектов из процесса (следующий раздел включает редактирование). Цель заключается в обеспечении базового понимания того, какие рабочие потоки оказывают влияние на построение наборов сетевых данных, в которых нет измененных областей.
Ситуация 1: Измененная область создана и построена в родительской версии
Предположим, что дочерняя версия унаследовала измененную область из родительской версии. Далее происходит построение набора сетевых данных в родительской версии. В заключении выполняется операция согласования дочерней версией. Измененная область удаляется в дочерней версии (при условии, что не были сделаны другие правки).
Ситуация 2: Измененная область создана в родительской версии и построена в дочерней версии
Данный случай совпадает с последним в том, что дочерняя версия унаследовала измененную область из родительской версии. Однако далее происходит построение сети в дочерней, а не родительской версии. Согласование после операции построения вновь вносит измененные области из родительской версии. Для закрепления построенной сети в родительской версии необходимо выполнить повторное построение дочерней версии перед операцией закрепления.
Сценарий 3: Измененная область создана и построена в родительской и дочерней версиях
Данный случай является комбинацией двух последних сценариев. Дочерняя версия снова наследует измененные области из родительской версии. Перед согласованием построение дочерней и родительской версии выполняется раздельно. Процесс согласования оставляет дочернюю версию чистой.
Согласование и закрепление с правками исходных объектов
В предыдущем случае речь шла о построении набора сетевых данных без редактирования исходных объектов. В следующих случаях рассмотрено выполнение редактирования для исходных объектов, а полученные измененные области удаляются.
Ситуация 4: Редактирование различных исходных объектов в родительской и дочерней версиях
В данном случае построение сети выполняется до создания дочерней версии. После создания дочерней версии выполняется редактирование класса пространственных объектов источников сети улиц с целью добавления улиц в южной части карты. Одновременно происходит редактирование родительской версии для добавления улиц в северной части. Теперь обе версии имеют измененные области на противоположных частях карты. Процесс согласования переносит правки и связанные измененные области в дочернюю версию. Здесь происходит построение сети для того, чтобы она могла быть закреплена в родительской версии уже без измененных областей.
Набор сетевых данных на приведенном выше рисунке не был построен ни в родительской, ни в дочерней версиях сразу же до согласования. Однако, если в это время он был бы построен в обеих версиях, то согласование должно было бы повторно создать измененную область в южной части карты, как показано на рисунке ниже. Причиной этого является то, что процесс согласования делает видимым состояние родительской версии в дочерней, обеспечивая проведение процесса слияния. Так как правки дочерней версии являются новыми для родительской версии, то их связность с согласованными повторно родительскими данными должна быть построена еще раз.
Ситуация 5: Создание новых объектов-источников, пересекающихся в родительской и дочерней версиях
В данном случае показана другая причина необходимости повторного построения набора сетевых данных после выполнения редактирования исходных объектов в родительской и дочерней версиях. Здесь правки выполняются одном и том же географическом районе в родительской и дочерней версиях. Даже в том случае, если сеть является чистой в соответствующих версиях, повторное согласование вводит измененную область потому, что связность пересекающихся объектов все еще требует определения.