Использование правил разбиения класса отношений

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

В зависимости от типа созданного класса отношений, простой или составной, есть разные опции правила разбиения, которые можно задать:

В дополнение к определению модели разбиения класса объектов вы также можете задать правила разбиения для линейного или полигонального класса объектов. Правила разбиения класса объектов определяют, как геометрия и атрибуты будут разбиваться в случае, когда разбивается класс пространственных объектов в ходе редактирования. Обновить/Вставить - это модель разбиения класса объектов по умолчанию, в которой после разбиения бОльшая часть исходного объекта обновляется, а новый объекты вставляется для оставшейся части. Однако если у вас есть специальные требования к моделирования, можно изменить поведение модели разбиения на Удалить/Вставить/Вставить, в которой исходный объект удаляется, а два новых вставляются.

См. Модель разбиения для получения более подробной информации о настройке и использования этого свойства класса отношений.

В разделе ниже подробнее описана каждая из опций правил разбиения наряду с примером полученных результатов при использовании моделей разбиения класса объектов с каждым из правил разбиения класса отношений.

По умолчанию (простая)

Правило разбиения по умолчанию для простых классов отношений предусматривает сохранение большей части объекта, полученной в ходе разбиения. В классе отношений, если исходный класс объектов использует модель разбиения класса объектов по умолчанию, Обновить/Вставить, то простой и составной классы отношений используют то же поведение для того, как связанные записи будут связаны после разбиения. Иными словами, после разбиения будет сохранен больший объект в классе отношений.

Модель разбиения класса отношений, которая использует настройки по умолчанию для типа простого класса отношений:

По умолчанию (сложный)

Правила разбиения по умолчанию для сложного класса отношений зависят от модели разбиения объектов, которая задана для исходного класса объектов. Если моделью разбиения класса является Обновление/Вставка, будут сохранены отношения для наибольшего итогового объекта после разбиения. Если же модель разбиения для класса объектов задана как Удалить/Вставить/Вставить, то когда объект разбивается в исходном классе, то исходный объект удаляется наряду с разбитыми частями и их отношениями друг с другом.

Модель разбиения класса отношений, которая использует настройки по умолчанию для типа составного класса отношений:

Дублировать связанные объекты

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

Модель разбиения класса отношений, которая использует дублирование связанных объектов

Настройка правил разбиения класса отношений

Вы можете определить политику разделения для связанных объектов в классе отношений, используя один из следующих двух методов:

  • Свойства класса отношений – На вкладке Общие диалогового окна Свойства класса отношений прокрутите вниз до раздела Политика разбиения. Если щелкнуть ячейку рядом с разделом Политика разбиения, открывается ниспадающий список. При выборе политики разбиения из списка инструмент геообработки Задать политику разбиения класса отношений заполняется и запускается в фоновом режиме.

    Опции ниспадающего списка Политика разбиения класса отношений

  • Инструмент Задать политику разбиения класса отношений – используйте инструмент геообработки Задать политику разбиения класса отношений, чтобы изменить политику разбиения для класса отношений.

    Инструмент геообработки Задать политику разбиения класса отношений

Требования

При подготовке к использованию инструмента геообработки Задать политику разбиения класса отношений, надо учитывать следующее:

  • Если входной класс отношений хранится в многопользовательской базе геоданных, для использования инструмента необходимо подключиться к ней как владелец данных.
  • Классы отношений, в которых исходных класс объектов использует модель разбиения Удалить/Вставить/Вставить не поддерживаются в версиях ранее ArcGIS Pro 2.6 или ArcGIS Enterprise 10.8.1.
  • Классы отношений с моделью разбиения Дублировать связанные объекты не поддерживаются в версиях ранее ArcGIS Pro 2.6 или ArcGIS Enterprise 10.8.1.

Примечание:
Инструменты геообработки Задать политику разбиения класса отношений и Задать политику разбиения класса объектов не работают в рабочей области сервисов объектов. Задайте эти модели поведения для своих данных до публикации.

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

  • По умолчанию (простая)
    • Если входной класс отношений по типу является простым, то будут доступны опции По умолчанию (простая) и Дублировать связанные объекты.
    • Простые отношения могут иметь кардинальность «один к одному» (1:1), «один ко многим» (1:М) или «многие ко многим» (М:N).
  • По умолчанию (сложный)
    • Если входной класс отношений по типу является составным, то будут доступны опции По умолчанию (сложная) и Дублировать связанные объекты.
    • Сложные отношения всегда работают по принципу один-ко-многим, когда вы их создаете, но с помощью правил отношений могут быть ограничены до действия один-к-одному (1:1).
  • Дублировать связанные объекты
    • Кардинальность для класса отношений может быть либо (1:1), либо один-ко-многим (1:M).
      Примечание:
      Эта политика разбиения недоступна для классов отношений с кардинальностью многие-ко-многим.
    • Исходный класс должен быть классом полилинейных или полигональных объектов.
    • Основной ключ для класса объектов-источников должен быть задан для поля GlobalID.
    • Класс-источник не может иметь дополнительного класса с пользовательской политикой разбиения отношений.
    • Класс назначений - это класс объектов, например, таблица; классом пространственных объектов он быть не может.
    • Класс назначений не является исходным классом для другого класса отношений один-к-одному (1:1) или один-ко-многим (1:М), в котором исходный основной ключ задан для поля, отличного от GlobalID.
    • Класс назначений не является классом назначений для другого класса объектов с кардинальностью один-к-одному (1:1).

Подсказка:
Использование опции копирования и вставки XML поддерживает правила разбиения, заданные для класса отношений.

Просмотр свойств класса отношений

Следуйте инструкциям ниже, чтобы посмотреть правила разбиения, заданные для класса отношений, в диалоговом окне Свойства класса отношений:

  1. Запустите ArcGIS Pro.
  2. На панели Каталога в папке Базы данных щелкните на подключении базы геоданных, чтобы его развернуть.
  3. Щелкните правой кнопкой мыши по классу отношений и выберите Свойства.

    Свойства класса отношений

  4. На вкладке Общие правила разбиения для класса отношений находятся внизу диалогового окна Свойства класса отношений.