Согласовать версии (Управление данными)

Краткая информация

Согласовывает версию или несколько версий с целевой версией.

Подробнее о согласовании и закреплении версий

Использование

  • Процесс согласования требует, чтобы вы были единственным пользователем, который в настоящее время редактирует версию, и единственным пользователем, который будет редактировать версию в процессе согласования вплоть до сохранения или закрепления.

  • Для процесса согласования требуется, чтобы у вас были полные права доступа ко всем классам пространственных объектов, которые были изменены в версии до редактирования.

  • Инструменты для работы с версиями работают с многопользовательскими базами геоданных. Файловые базы геоданных не поддерживают версии.

  • Этот инструмент поддерживает согласование/закрепление для данных, опубликованных из сервис-ориентированной рабочей области с включенными возможностями управления версиями. Согласование/публикация сервис-ориентированной версии через файл подключения к базе геоданных не поддерживается.

  • База геоданных разработана для эффективного управления и поддержки длинных транзакций, использующих версии.

  • Процесс согласования указывает на различия между редактируемой и целевой версиями и отмечает эти различия как конфликты. Если конфликты существуют, их необходимо разрешить.

  • После успешного завершения согласования с включенной опцией Согласовать все версии, все версии в базе геоданных станут одинаковыми.

Параметры

ПодписьОписаниеТип данных
Входная рабочая область

Многопользовательская база геоданных, содержащая версии для согласования.

Для сервис-ориентированных версий это будет URL-ссылка на сервис объектов (https://mysite.mydomain/server/rest/services/ElectricNetwork/FeatureServer) или элемент портала - слой объектов.

Workspace
Согласовать режим

Определяет, какие из версий будут согласованы при запуске инструмента.

Если входная рабочая область - сервис-ориентированная, единственным допустимым значением этого параметра является согласование всех версий.

  • Согласовать все версииСогласует все версии базы геоданных с целевой версией. Это значение по умолчанию.
  • Согласовать только блокированные версииСогласовывает версии, которые мешают выполнить сжатие целевой версии. Эта опция использует рекомендованный порядок согласования.
String
Целевая версия
(Дополнительный)

Имя любой версии, которая является прямым предшественником редактируемой версии, например, родительская версия или версия по умолчанию.

Обычно она содержит правки из всех других версий, которые вы хотели включить в версию правки.

Если входная рабочая область - сервис-ориентированная, единственным допустимым значением этого параметра является согласование с версией по умолчанию.

String
Изменить версии
(Дополнительный)

Имя редактируемой версии или версий, которые согласовываются с выбранной целевой версией.

Отобразятся только версии, являющиеся прямыми предшественниками выбранной целевой версии.

String
Получить блокировки
(Дополнительный)

Укажите, будет ли требоваться блокировка.

Если входная рабочая область - сервис-ориентированная, в процессе согласования не возникает блокировки.

  • Отмечено: в процессе согласования требуется блокировка. Используется, когда необходимо выполнить закрепление правок. Это позволяет гарантировать, что целевая версия не изменялась между операциями согласования и закрепления. Это значение по умолчанию.
  • Не отмечено – в процессе согласования не требуется блокировка. Это позволяет нескольким пользователям выполнять согласование параллельно. Эта опция используется, если версия редактирования не будет закреплена в целевой версии, так как есть вероятность, что целевая версия могла быть изменена между операциями согласования и закрепления изменений.
Boolean
Прервать в случае конфликтов
(Дополнительный)

Определяет необходимость прерывания процесса согласования в случае обнаружения конфликтов между целевой и редактируемой версиями.

  • Отмечено – при нахождении конфликтов согласование будет прервано.
  • Не отмечено – при нахождении конфликтов согласование не будет прервано. Это значение по умолчанию.
Boolean
Выявление конфликтов
(Дополнительный)

Указывает, определяются ли условия, необходимые для возникновения конфликта, объектом (строкой) или атрибутом (столбцом).

  • Конфликты, определяемые по объекту (строке)Любые изменения в одной и той же строке или объекте в родительской и дочерней версиях будут конфликтовать в процессе согласования. Это значение по умолчанию.
  • Конфликты, определяемые по атрибуту (столбцу)Только изменения того же атрибута (столбца) той же строки или объекта в родительской и дочерней версиях будут отмечены как конфликт в процессе согласования. Изменения с различными атрибутами не будут считаться конфликтом в процессе согласования.
String
Разрешение конфликтов
(Дополнительный)

Описывает решение при обнаружении конфликта.

Если входная рабочая область - сервис-ориентированная, по умолчанию используется версия редактирования.

  • Решение конфликтов проводится в пользу целевой версииРешение всех конфликтов проводится в пользу целевой версии Используется по умолчанию для традиционных версий.
  • Решение конфликтов проводится в пользу редактируемой версииВсе конфликты разрешаются в пользу редактируемой версии Используется по умолчанию для версий с ветвлениями.
String
Закрепить версии после согласования
(Дополнительный)

Определяет, будет ли текущий сеанс редактирования закреплен в согласовываемой целевой версии.

  • Отмечено: текущая редактируемая версия будет закреплена в целевой версии после согласования.
  • Не отмечено: текущая редактируемая версия не будет закреплена в целевой версии после согласования. Это значение по умолчанию.
Boolean
Удалить версии после закрепления
(Дополнительный)

Определяет, будет ли согласовываемые версия правки удалена после закрепления. Этот параметр применим только в том случае, если отмечен параметр Закрепить версии после согласования.

  • Отмечено - текущая редактируемая версия, прошедшая согласование, будет удалена после закрепления в целевой версии.
  • Не отмечено - текущая редактируемая версия, прошедшая согласование, не будет удалена. Это значение по умолчанию.
Boolean
Согласовать журнал версий
(Дополнительный)

Имя и местоположение, где будет сохранен файл журнала. Файл журнала – это ASCII файл, в котором хранится содержимое сообщений геообработки.

File
Продолжить, если обнаружены непросмотренные конфликты
(Дополнительный)

Определяет необходимость продолжения согласования, если до начала процесса согласования существовали непросмотренные конфликты. Если вы выберите продолжить, конфликты, оставшиеся из предыдущих сессий, будут потеряны в ходе выполнения инструмента. Этот параметр применим только для сервис-ориентированных версий.

  • Отмечено — процесс согласования продолжается, если нерешенные конфликты не были просмотрены. Это значение по умолчанию.
  • Не отмечено — процесс согласования не продолжается, если обнаружены непросмотренные нерешенные конфликты.
Boolean
Согласовать версии открепленной реплики
(Дополнительный)

Определяет, будет ли согласование включать версии открепленных реплик. Если вы создаете открепленную реплику как часть рабочего процесса репликации базы геоданных, в базе геоданных создается связанная версия. Эта опция позволяет вам включать или удалять версии этих типов из списка версий, которые должны быть согласованы. Этот параметр не применим для версий ветвей.

  • Отмечено – процесс согласования включает версии открепленных реплик. Это значение по умолчанию.
  • Не отмечено—процесс согласования не включает версии открепленных реплик.

Boolean

Производные выходные данные

ПодписьОписаниеТип данных
Обновленная входная рабочая область

Обновленная входная рабочая область.

Рабочая область

arcpy.management.ReconcileVersions(input_database, reconcile_mode, {target_version}, {edit_versions}, {acquire_locks}, {abort_if_conflicts}, {conflict_definition}, {conflict_resolution}, {with_post}, {with_delete}, {out_log}, {proceed_if_conflicts_not_reviewed}, {reconcile_checkout_versions})
ИмяОписаниеТип данных
input_database

Многопользовательская база геоданных, содержащая версии для согласования. По умолчанию используется параметр среды геообработки рабочая область.

Для сервис-ориентированных версий это будет URL-ссылка на сервис объектов (https://mysite.mydomain/server/rest/services/ElectricNetwork/FeatureServer).

Workspace
reconcile_mode

Определяет, какие из версий будут согласованы при запуске инструмента.

Если входная рабочая область - сервис-ориентированная, единственным допустимым значением этого параметра является согласование всех версий.

  • ALL_VERSIONSСогласует все версии базы геоданных с целевой версией. Это значение по умолчанию.
  • BLOCKING_VERSIONSСогласовывает версии, которые мешают выполнить сжатие целевой версии. Эта опция использует рекомендованный порядок согласования.
String
target_version
(Дополнительный)

Имя любой версии, которая является прямым предшественником редактируемой версии, например, родительская версия или версия по умолчанию.

Обычно она содержит правки из всех других версий, которые вы хотели включить в версию правки.

Если входная рабочая область - сервис-ориентированная, единственным допустимым значением этого параметра является согласование с версией по умолчанию.

String
edit_versions
[edit_versions,...]
(Дополнительный)

Имя редактируемой версии или версий, которые согласовываются с выбранной целевой версией. Это может быть одно имя версии или список имен версий.

String
acquire_locks
(Дополнительный)

Укажите, будет ли требоваться блокировка.

  • LOCK_ACQUIREDВ процессе согласования требуется блокировка. Используется, когда необходимо выполнить закрепление правок. Это позволяет гарантировать, что целевая версия не изменялась между операциями согласования и закрепления. Это значение по умолчанию.
  • NO_LOCK_ACQUIREDВ процессе согласования не требуется блокировка. Это позволяет нескольким пользователям выполнять согласование параллельно. Эта опция используется, если версия редактирования не будет закреплена в целевой версии, так как есть вероятность, что целевая версия могла быть изменена между операциями согласования и закрепления изменений.
Boolean
abort_if_conflicts
(Дополнительный)

Определяет необходимость прерывания процесса согласования в случае обнаружения конфликтов между целевой и редактируемой версиями.

  • NO_ABORTПри нахождении конфликтов согласование будет прервано. Это значение по умолчанию.
  • ABORT_CONFLICTSПри нахождении конфликтов согласование будет прервано.
Boolean
conflict_definition
(Дополнительный)

Указывает, определяются ли условия, необходимые для возникновения конфликта, объектом (строкой) или атрибутом (столбцом).

  • BY_OBJECTЛюбые изменения в одной и той же строке или объекте в родительской и дочерней версиях будут конфликтовать в процессе согласования. Это значение по умолчанию.
  • BY_ATTRIBUTEТолько изменения того же атрибута (столбца) той же строки или объекта в родительской и дочерней версиях будут отмечены как конфликт в процессе согласования. Изменения с различными атрибутами не будут считаться конфликтом в процессе согласования.
String
conflict_resolution
(Дополнительный)

Описывает решение при обнаружении конфликта.

Если входная рабочая область - сервис-ориентированная, по умолчанию используется версия редактирования.

  • FAVOR_TARGET_VERSIONРешение всех конфликтов проводится в пользу целевой версии Используется по умолчанию для традиционных версий.
  • FAVOR_EDIT_VERSIONВсе конфликты разрешаются в пользу редактируемой версии Используется по умолчанию для версий с ветвлениями.
String
with_post
(Дополнительный)

Определяет, будет ли текущий сеанс редактирования закреплен в согласовываемой целевой версии.

  • NO_POSTТекущая редактируемая версия не будет закреплена в целевой версии после согласования. Это значение по умолчанию.
  • POSTТекущая редактируемая версия будет закреплена в целевой версии после согласования.
Boolean
with_delete
(Дополнительный)

Определяет, будет ли согласовываемые версия правки удалена после закрепления. Этот параметр применяется только в случае, если значением параметра with_post является POST

  • DELETE_VERSIONТекущая редактируемая версия, прошедшая согласование, будет удалена после закрепления в целевой версии.
  • KEEP_VERSIONТекущая редактируемая версия, прошедшая согласование, не будет удалена. Это значение по умолчанию.
Boolean
out_log
(Дополнительный)

Имя и местоположение, где будет сохранен файл журнала. Файл журнала – это ASCII файл, в котором хранится содержимое сообщений геообработки.

File
proceed_if_conflicts_not_reviewed
(Дополнительный)

Определяет необходимость продолжения согласования, если до начала процесса согласования существовали непросмотренные конфликты. Если вы выберите продолжить, конфликты, оставшиеся из предыдущих сессий, будут потеряны в ходе выполнения инструмента. Этот параметр применим только для сервис-ориентированных версий.

  • PROCEEDПроцесс согласования продолжается, если нерешенные конфликты не были просмотрены. Это значение по умолчанию.
  • NOT_PROCEEDПроцесс согласования не продолжается, если обнаружены непросмотренные нерешенные конфликты.
Boolean
reconcile_checkout_versions
(Дополнительный)

Определяет, будет ли согласование включать версии открепленных реплик. Если вы создаете открепленную реплику как часть рабочего процесса репликации базы геоданных, в базе геоданных создается связанная версия. Эта опция позволяет вам включать или удалять версии этих типов из списка версий, которые должны быть согласованы. Этот параметр не применим для версий ветвей.

  • RECONCILEПроцесс согласования включает версии открепленных реплик. Это значение по умолчанию.
  • DO_NOT_RECONCILEПроцесс согласования не включает версии открепленных реплик.
Boolean

Производные выходные данные

ИмяОписаниеТип данных
out_workspace

Обновленная входная рабочая область.

Рабочая область

Пример кода

ReconcileVersions, пример (автономный скрипт)

Следующий автономный скрипт демонстрирует, как использовать инструмент ReconcileVersions для согласования всех версий, которые есть у пользователя, и которые указаны в файле подключения SDE.

# Name: ReconcileVersions.py
# Description: Reconciles all versions owned by a user with SDE.Default

# Import system modules
import arcpy, os

# Set workspace
workspace = 'C:/Data/connections/bender@production.sde'

# Set the workspace environment
arcpy.env.workspace = workspace

# Use a list comprehension to get a list of version names where the owner
# is the current user and make sure sde.default is not selected.
verList = [ver.name for ver in arcpy.da.ListVersions() if ver.isOwner
           == True and ver.name.lower() != 'sde.default']

arcpy.ReconcileVersions_management(workspace,
                                   "ALL_VERSIONS",
                                   "SDE.Default",
                                   verList,
                                   "LOCK_ACQUIRED",
                                   "NO_ABORT",
                                   "BY_OBJECT",
                                   "FAVOR_TARGET_VERSION",
                                   "NO_POST",
                                   "KEEP_VERSION",
                                   "c:\RecLog.txt")
print('Reconciling Complete')

Параметры среды

Особые случаи

Информация о лицензиях

  • Basic: Нет
  • Standard: Да
  • Advanced: Да

Связанные разделы