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

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

Атрибут Query (Запрос) представляет собой атрибут, значения которого возвращаются с помощью запроса. Настройка параметров атрибута схемы Query заключается в задании этого запроса.

Атрибуты Query могут быть настроены в классах объектов схемы или в шаблонах схематического представления. Если атрибут Query применяется к классу объектов схемы, а нужное вам поле возвращается пользовательским запросом, настроенным в этом классе объектов схемы, или поступает из самого класса объектов схемы, создавать атрибуты Query не требуется. Решением в этом случае будет настройка атрибута Field. То же самое можно сказать и об атрибуте Query, который применяется к шаблону схематического представления. Определение атрибута Query имеет смысл, только если входящее в запрос поле не возвращается запросом, настроенным в шаблоне схематического представления, ни в поле самого шаблона схематического представления. В представленной далее пошаговой инструкции поясняется, как настроить запрос для этого типа атрибутов.

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

Если в качестве типа (Type) нового атрибута схемы выбрать Query (Запрос), появляется следующая вкладка Свойства (Properties):

Пример атрибута Query – начальное содержимое вкладки Свойства (Properties).

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

Шаги:
  1. При работе с версионными данными в случае необходимости запросить другую таблицу на основе одинаковых версий для каждого загружаемого объекта проверьте поле Use Associated Feature Data Source (Использовать источник данных связанного объекта).

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

    ПримечаниеПримечание:

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

  2. Нажмите OK.
  3. Нажмите кнопку Edit Query/Identifier (Редактировать запрос/идентификатор).

    Откроется диалоговое окно Query/Identifier Editor (Редактор Запроса/Идентификатора):

    Пример атрибута Query – начальное содержимое вкладки Свойства (Properties).

  4. В раскрывающемся списке Data Source (Источник данных) (1) щелкните выбранный источник данных.
  5. В списке Таблицы щелкните таблицу, с которой будет работать запрос.

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

    Пример атрибута Query – Выбор таблицы, с которой будет работать запрос.

  6. В области Query (Запрос) наберите код SQL запроса.

    Поскольку атрибут запроса должен возвращать одиночное значение для любого объекта схемы или схематического представления, относящегося к классу объекта схемы или шаблону схематического представления, для которого определен этот атрибут, запрос часто нуждается в параметрах. Область Parameters (Параметры) автоматически выводится на экран при нажатии кнопки ‘?’ клавиатуры в поле параметра. Если в своем SQL-запросе вы ссылаетесь на новый параметр, в столбце Name (Имя) этой области появляется новая запись, соответствующая новому элементу.

    • В раскрывающемся списке Name (Имя), выводимом в разделе Parameters (Параметры), выберите существующие атрибуты класса объекта схемы или шаблона схематического представления, которые будут использоваться в качестве параметров запроса.
      ПримечаниеПримечание:

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

    • В поле Is Text (Текстовый) укажите тип значения параметра (флажок установлен, если параметр возвращает текстовые значения, и снят, если типы значений другие).
    • Перед тем, как нажать кнопку Show Results (Показать результаты) и проверить результат запроса, в поле Test Value (Тестовое значение) определите тестовое значение.

    Пример атрибута Query – Настройка параметра запроса

  7. Чтобы проверить возвращенный запросом результат, нажмите кнопку Show Results (Показать результаты).
  8. В раскрывающемся списке Идентификатор (Identifier) щелкните поле, которое будет возвращать значения атрибута.

    Пример атрибута Query – Настройка параметра Identifier

  9. Щелкните OK для проверки и остановите определение атрибута запроса.

Код SQL автоматически выдается в поле области Query (Запрос), из которой открывается Query/Identifier Editor (Редактор запроса/идентификатора).

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

5/10/2014