Правило Задать корневое соединение применяется для указания соединений, основывающихся на заданном классе соединений сети или таблицы объектов, в качестве корневых соединений сети, путем фильтрации этих соединений по атрибутам, если они есть.
Поскольку корневые соединения являются специфичными для компоновок дерева, это правило обычно настраивается для шаблонов, которые настроены на автоматическое выполнение компоновок дерева при построении схем.
Процесс правила Задать корневое соединение
Правило Задать корневое соединение должно быть задано для шаблона перед настройкой каких-либо древовидных компоновок — Развитого дерева, Дерева главной линии или Радиального дерева — чтобы корневые соединения шли в правиле первыми, а автоматическая компоновка дерева начинала работы с этих корневых соединений.
Чаще всего это правило последнее, заданное в последовательности правил шаблона, поэтому оно выполняется после выполнения всех изменяющих граф схемы правил. Однако при необходимости оно может быть добавлено в любом месте последовательности правил. При его установке в самом конце последовательности правил можно быть уверенным, что правило Задать корневое соединение обработает все соединения схемы. При его установке в определенном положении в последовательности правил обрабатываются только те соединения, которые существуют на схеме в данный момент. Действительно, оно не учитывает соединения схем, которые могут быть добавлены другими правилами, настроенными для применения позже в последовательности правил.
Настройка правила Задать корневое соединение
Можно добавить правило Задать корневое соединение в шаблон с помощью инструмента Добавить правило Задать корневое соединение по атрибуту.
Подсказка:
При настройке правил схемы с помощью атрибутов вы можете отфильтровать элементы схемы по значениям атрибутов источника сети относительно других значений атрибутов элементов схемы, используя следующее выражение SQL: WHERE 'OBJECT' = 'IN_DIAGRAM'. Например, чтобы запросить элемент схемы с минимальным значением атрибута в сгенерированной схеме, можно настроить любой инструмент Добавить <XXX> по правилу атрибута с помощью выражения SQL следующего синтаксиса: <attributeName> = (SELECT MIN(<attributeName>) FROM <networkClassName>) WHERE 'OBJECT' = 'IN_DIAGRAM'.
Представьте, что вы хотите создать схемы, которые будут автоматически компоноваться с использованием компоновки Smart Tree, при этом контроллер подсети будет находиться в самом нижнем местоположении схемы в качестве корневого узла древовидной структуры. В этом случае перед инструментом Добавить Smart Tree компоновку в модель конструктора геообработки шаблона схемы вы добавите инструмент Добавить правило Задать корневое соединение по атрибуту со следующим выражением SQL: SUBNETWORKCONTROLLER = 1 AND attributeElevation = (SELECT MIN(attributeElevation) FROM ElectricDevice) WHERE 'OBJECT' = 'IN_DIAGRAM'.
Корневые соединения, заданные вручную или с помощью правил
Схема может сочетать корневые соединения, заданные правилами, и указанные вручную инструментом Задать корневое соединение. То есть вы можете вручную задавать другие корневые соединения и удалять предустановленные существующие корневые соединения схемы во время их создания и обновления.
Но чаще всего корневые соединения, которые были вручную заданы, будут потеряны при обновлении схемы. Только корневые соединения, определенные инструментом Задать корневое соединение по атрибуту, будут сохранены по окончании обновления схемы. Единственным исключением является случай, когда в процессе выполнения правила не задано соединений. В такой ситуации добавленные на схему вручную корневые соединения перед обновлением схемы будут сохранены, как сетевые соединения, в обновленной схеме.