Настройка параметров для атрибута схемы Associated Field

Предварительное условие:

Атрибут Associated Field (Связанное поле) можно настроить в классе объектов схемы, для которого указан связанный класс объектов. Значения этого типа атрибутов извлекаются из поля, хранимого в классе объектов или таблице, с которыми связан класс объектов схемы. Настройка параметров атрибута схемы Associated Field (Связанное поле) заключается в задании этого поля связанного класса объектов. В представленной далее пошаговой инструкции поясняется, как настроить это поле.

Прежние версииПрежние версии:

Новый атрибут связанного поля заменяет атрибуты Dynamic and Static из Schematics до 10 версии. Статистические атрибуты в предыдущих версиях ArcGIS Schematics оценивались при каждом создании/обновлении схем, теперь в Schematics при создании атрибута Associated Field (Связанное поле) в режиме оценки On Generate/Update (При создании/обновлении) функции будут совершенно аналогичны функциям ArcGIS Schematics 10 с атрибутом Static. Атрибуты Associated Field (Связанное поле) в режиме оценки On Start Editing (При начале редактирования) также очень похожи на старые атрибуты Dynamic, которые повторно оцениваются при каждом открытии схемы. В этом случае чтобы иметь точный эквивалент, следует настроить схемы так, чтобы при открытии они автоматически загружались в память .

Для создания атрибута схемы Associated Field (Связанное поле) необходимо начать с шагов, указанных в разделах Создание атрибутов класса объектов схемы, а затем на шаге 6 задания типа атрибута нужно выбрать Associated Field. Далее описываются конкретные способы настройки атрибута Associated Field, которые могут быть нужны на шаге 7 в этом разделе.

Если в качестве типа нового атрибута схемы выбирается Associated Field (Связанное поле), появляется следующая вкладка Свойства:

Пример атрибута Associated Field – содержимое вкладки Свойства (Properties).

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

Шаги:
  1. В раскрывающемся списке Field (Поле) выберите поле, которое будет использоваться для возвращения значений атрибута.

    Поля в раскрывающемся списке Field (Поле) соответствуют всем полям класса или таблицы объектов, с которыми связан класс объектов схемы, к которому применяется этот атрибут.

Для задания конечной точки созданного атрибута схемы Associated Field установите параметры, доступные в разделах Storage Mode (Способ хранения) и Evaluation Mode (Способ оценки), как указано в шагах от 8 до 11 в разделе Создание атрибутов класса объектов схемы.

ВниманиеВнимание:

Как любые атрибуты схемы на базе других типов атрибутов, атрибут Associated Field (Связанное поле) может непосредственно использоваться для условного обозначения объектов схемы, независимо от режима оценки. Однако атрибут схемы Associated Field (Связанное поле) не может непосредственно использоваться для надписывания при режиме оценки On Redraw/refresh (При перерисовке/обновлении). В этом специфическом случае механизмы надписывания ArcMap не вызывают загрузку значений связанного поля, однако можно принудительно загрузить эти значения, указав следующее выражение надписи:

Правильное расширенное выражение для получения надписей на основе атрибута схемы Связанное поле (Associated Field) в режиме оценки При перерисовке/обновлении (On Refresh/Redraw).

Входные параметры:

  • [ATTR_AS_LABEL]: атрибут схемы, который будет использоваться для надписывания.
  • [PROPERTYSET], [DATASOURCEID], [UCID] и [UOID]: поля классов пространственных объектов схемы, которые должны быть загружены, чтобы значение связанного поля поддерживалось в актуальном состоянии.

Поля [DATASOURCEID], [UCID] и [UOID] доступны в списке полей диалоговом окне Выражение надписи (Label Expression), их можно выбирать из этого списка при построении следующего дополнительного выражения. Однако поскольку поле [PROPERTYSET] в этом списке недоступно, его надо ввести в окне выражений в ручном режиме.

Function FindLabel([PROPERTYSET],[DATASOURCEID], [UCID], [UOID], [ATTR_AS_LABEL])
			FindLabel = [ATTR_AS_LABEL]
End Function

5/10/2014