Создание описателя из двух таблиц, одна из которых является справочником через запрос

Таблица street.db – это справочник улиц города. При создании описателя такие таблицы можно описывать как отдельный тип объектов – Справочники. Выделение отдельных таблиц или группы таблиц, связанных между собой в качестве справочников позволяет упростить процедуру создания запроса, что будет показано ниже.

Шаг 1. Открытие описателя базы данных

  1. Откройте структуру слоя Дома, для этого выберите пункт меню Слой|Структура слоя или нажмите на панели инструментов кнопку (слой при этом НЕ должен быть редактируемым).

  2. В открывшемся диалоговом окне Структура слоя в дереве слева выделите пункт Базы данных.

  3. Справа в открывшейся вкладке выделите созданную ранее базу База по домам, нажмите кнопку Конструктор....

Шаг 2. Изменение структуры таблицы

  1. В редакторе баз данных выделите таблицу street.db.

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

  3. Нажмите кнопку Добавить поле и в свободной строке введите имя поле L_street, установите для него тип - Короткое целое.

  4. Для сохранения таблицы нажмите кнопку Сохранить.

  5. Закройте окно изменения таблицы – кнопка Закрыть.

Шаг 3. Создание объекта - справочника (через запрос)

  1. В редакторе баз данных нажмите кнопку Справочники.

  2. Нажмите кнопку Создать....

  3. В окне Новый справочник укажите тип справочника – Справочник через запрос, нажмите кнопку ОК.

  4. Добавьте в справочник таблицу street, для этого выделите ее и нажмите кнопку Добавить. Закройте окно добавления таблиц.

  5. Добавьте в список полей справочника поля Name_street и L_street.

  6. Задайте пользовательские поля для полей справочника Название улицы и Длина улицы соответственно.

  7. В строке поле связи нажмите кнопку Выбор и укажите поле — Cod_Street.

    Справочник

    Рисунок 655. Справочник


  8. Сохраните справочник под именем Улицы.

  9. Закройте окно создания справочника.

Шаг 4. Создание запроса с использованием таблицы - справочника

  1. В редакторе баз данных нажмите кнопку Запросы.

  2. Нажмите кнопку Создать....

  3. В появившемся диалоговом окне Добавить таблицы выделите таблицу address, нажмите кнопку Добавить.

  4. Закройте это окно кнопкой Закрыть.

  5. Добавьте в список полей запроса все поля, кроме поля Street выбранной таблицы.

  6. Дайте полям пользовательские названия.

  7. C помощью стрелок или мыши переместите поле Cod_street в самый верх списка полей запроса.

  8. Укажите поле связи – Sys.

  9. В списке полей запроса выделите поле Cod_street и нажмите кнопку (свойства). В открывшемся окне свойств установите флажок значение поля выбирать из справочника и в открывающемся списке выберите справочник – Улицы. Нажмите кнопку ОК.

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

    Рисунок 656. Диалоговое окно Свойства


  10. Для сохранения запроса нажмите кнопку Сохранить....

  11. Укажите имя запроса, например - Адреса со справочником, нажмите кнопку ОК.

Шаг 5. Выбор основного запроса

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

  1. В окне описателя для объектов типа Запрос в строке Основной запрос выберите из ниспадающего списка запрос Адреса со справочником.

  2. Сохраните описатель – кнопка Сохранить и закройте окно редактора баз данных.

Шаг 6. Открытие окна семантической информации

Для проверки правильности создания и подключения базы данных откройте окно семантической информации, для его открытия:

  1. На панели навигации нажмите кнопку информация .

  2. Сделайте активным слой Дома.

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

    Окно семантической информации

    Рисунок 657. Окно семантической информации