ГЕОИНФОРМАЦИОННАЯ СИСТЕМА "КАРТА 2011" БАЗА ДАННЫХ Пример проекта базы данных “Поселения Ногинского района” Руководство пользователя Часть III. Версия 11.7 ã Панорама 1991-2011 Ногинск www.gisinfo.ru -2- Содержание 1 2 3 3.1 3.2 4 5 Состав проекта базы данных “Поселения Ногинского района”...................... 3 Таблицы проекта ...................................................................................................... 6 Запросы к таблицам БД .......................................................................................... 9 Именованные запросы....................................................................................................... 9 Запросы, созданные с использованием компонентов Конструктора Форм. ................ 10 Формы пользователя проекта ............................................................................. 11 Стандартная форма для просмотра таблиц...................................................... 21 -3- 1 Состав проекта базы данных “Поселения Ногинского района” Проект “Поселения Ногинского района” (Noginsk_district.dbp) позволяет узнать возможности работы с таблицами базы данных в режиме База ГИС Карты 2011 . Данный проект состоит из таблиц формата dBase for Windows, запросов, форм пользователя, отчетов. Для создания проекта активизируется режим База – Создать проект. Таблицы, которые расположены в тематических разделах Ногинский район, Перепись населения Ногинского района, Список справочников созданы с помощью режима Создать в закладке Источники данных. Таблицы раздела Данные для геокодирования предварительно созданы с помощью прикладной задачи Экспорт атрибутов в файл DBF и затем добавлены в проект. -4- Для формирования отчетов созданы шаблоны Список поселений.xlt, Список объектов.xlt, Население.xlt, Поселение.dot. Для шаблонов с расширением XLT используется MS Excel, с расширением DOT – MS Word. Шаблон документа состоит из описательной части, которая остается в документе в том виде, как ее создали и полей данных (ключевых полей), которые в процессе создания отчета заменяются на соответствующие им значения из таблицы. Поля данных представляют собой имена полей таблицы в виде набора заглавных букв, заключенных между символами “#”. Например, NUM1 – имя поля таблицы , # NUM1 # - имя поля данных в шаблоне. Отчеты могут быть двух видов (табличный отчет и отчет по форме). Табличный отчет создается на основе шаблона MS Excel и содержит данные в виде таблицы. Отчет может создаваться как для одной записи, так и для группы записей. Для создания отчета по группе записей, в первой строке шаблона отчета, где необходимо начать печать данных в виде таблицы, должны быть перечислены имена полей данных. Имена полей данных не могут повторяться. В качестве примера табличный отчет на основе шаблона представлен на рисунке. -5- Отчет по форме (для текущей записи) представляет собой документ, в котором имена полей данных задаются в любом выбранном пользователем месте, причем они могут повторяться. Отчет по форме создается на основе шаблона MS Word или MS Excel. В качестве примера отчет по форме представлен на рисунке. -6- 2 Таблицы проекта Список таблиц проекта сформирован в Администраторе проекта – закладка Источники данных. В соответствии с информацией, хранящейся в таблицах, созданы четыре тематических раздела: 1. Ногинский район – содержит информацию о территории Ногинского района (поселения, населенные пункты, улицы, дома). Таблица Поселения Ногинского района (district.dbf) имеет следующую структуру: Имя поля POSEL_ID NAME_POSEL ADM_CENTR NASEL PLOTNOST PLOSHAD GERB STRUCTURE ABOUT Тип N C C N N N В М М Размер 10 50 50 11.0 12.2 12.2 Описание Идентификатор записи Название поселения Название административного центра Население Плотность Площадь Изображение герба поселения Состав поселения Информация о поселении Таблица Населенные пункты Ногинского района (locality.dbf) структуру: Имя поля ID POSEL_ID SEM9 KLADR LINKSHEET Тип N N C N С Размер 10 10 40 15 24 имеет следующую Описание Идентификатор записи Ссылка на таблицу district.dbf Название населенного пункта Классификатор адресов России Поле связи записи с картой. Название листа карты -7- LINKOBJECT N 11.0 Поле связи записи с картой. Номер объекта карты Таблица Список улиц Ногинского района (street.dbf) имеет следующую структуру: Имя поля ID ID_LOC NAMESTR IMAGESTR LINKSHEET Тип N N C B С Размер 10 10 50 LINKOBJECT N 11.0 24 Описание Идентификатор записи Ссылка на таблицу locality.dbf Название улицы Изображение улицы Поле связи записи с картой. Название листа карты Поле связи записи с картой. Номер объекта карты Таблица Список домов Ногинского района (house.dbf) имеет следующую структуру: Имя поля ID ID_STREET NUMBER IMAGE LINKSHEET Тип N N C B С Размер 10 10 25 LINKOBJECT N 11.0 24 Описание Идентификатор записи Ссылка на таблицу street.dbf Номер дома Изображение дома Поле связи записи с картой. Название листа карты Поле связи записи с картой. Номер объекта карты 2. Перепись населения Ногинского района – содержит информацию о населении и жилых помещениях Ногинского района. Таблица Население (people.dbf) имеет следующую структуру: Имя поля ID ID_HOUSE FIO DATA_BIRTH EDUCATION Тип N N C D N Размер 10.0 10.0 100 5.0 Описание Идентификатор записи Ссылка на таблицу house.dbf Фамилия Имя Отчество Дата рождения Ссылка на таблицу-справочник education.dbf Таблица Жилые помещения (descrhouse.dbf) имеет следующую структуру: Имя поля ID ID_HOUSE TYPE_HOUSE Тип N N N Размер 10.0 10.0 100 Описание Идентификатор записи Ссылка на таблицу house.dbf Фамилия Имя Отчество -8- DATA_BUILD MATERIAL N N 5.0 5.0 Ссылка на таблицу-справочник databuild.dbf Ссылка на таблицу-справочник education.dbf 3. Список справочников – содержит справочную информацию, на которую ссылаются таблицы, описанные выше. Таблицы-справочники Тип жилища (housetype.dbf), Время постройки дома (databuild.dbf), Материал наружных стен дома (materwall.dbf), Уровень образования населения (education.dbf) имеют одинаковую структуру: Имя поля ID VALUE Тип N C Размер 10.0 100 Описание Идентификатор записи Значение 4. Данные для геокодирования – содержит данные об объектах карты Noginsk.sit, классификатор 200T.RSC. Таблицы приведены в качестве примера для режимов Геокодирование точечных объектов и Расширенное геокодирование. Таблица Расширенное геокодирование (anygeonk.dbf) имеет следующую структуру: Имя поля N OBJECT SUBJECT POINT NAME OBJECTKEY LAYER LOCAL LENGHT SQUARE X Y BGRAD LGRAD SEM4 SEM214 SEM130 SEM9 SEM45 SEM32 SEM5 SEM250 SEM15 LINKSHEET Тип C C C N C C C C N N N N С С С С С C С С С С С С Размер 8 12 8 8 32 16 32 16 20.4 20.4 20.4 20.4 8 8 8 8 8 254 8 8 8 8 8 24 LINKOBJECT N 11.0 Описание Идентификатор записи Ссылка на таблицу district.dbf Название населенного пункта Классификатор адресов России Имя объекта Ключ объекта Слой Локализация Длина Площадь Координата Х Координата Y Широта Долгота Абсолютная высота Высота шрифта Место расположения здания Название собств.текст подписи Плотность,тип застройки Признак судоходства Тип водотока ( водоема ) Тип подписи Ширина по шкале Поле связи записи с картой. Название листа карты Поле связи записи с картой. Номер объекта карты -9- Таблица Геокодирование точечных объектов (pgeonk.dbf) имеет следующую структуру: Имя поля N OBJECT SUBJECT POINT NAME OBJECTKEY LAYER LOCAL LENGHT SQUARE X Y BGRAD LGRAD SEM102 LINKSHEET Тип C C C N C C C C N N N N С С С С Размер 8 12 8 8 32 16 32 16 20.4 20.4 20.4 20.4 8 8 8 24 LINKOBJECT N 11.0 3 3.1 Описание Идентификатор записи Ссылка на таблицу district.dbf Название населенного пункта Классификатор адресов России Имя объекта Ключ объекта Слой Локализация Длина Площадь Координата Х Координата Y Широта Долгота Важность объекта Поле связи записи с картой. Название листа карты Поле связи записи с картой. Номер объекта карты Запросы к таблицам БД Именованные запросы Для использования результатов SQL-запросов при проектировании форм пользователя создается перечень запросов, созданных на Модуле данных (закладка Источники данных Администратора проекта БД ). - 10 - В проект включены следующие запросы: - Запрос "Список населенных пунктов". Текст запроса: SELECT locality.SEM9,locality.KLADR, district.NAME_POSEL FROM locality INNER JOIN district ON locality.POSEL_ID = district.POSEL_ID Результатом выполнения запроса является набор данных, содержащий информацию из таблиц Поселения Ногинского района и Населенные пункты Ногинского района. В списке для каждого населенного пункта указано название поселения, которому он принадлежит. - Запрос "Список домов" Текст запроса: Select * from house where house.ID_STREET = 1 Результатом выполнения запроса является набор данных, содержащий информацию из таблицы Список домов Ногинского района. В списке содержатся дома, которые находятся на улице с идентификатором записи равным 1 (ул.Рыбхоз). 3.2 Запросы, созданные с использованием компонентов Конструктора Форм. - 11 - При проектировании форм пользователя запрос Население был создан в Модуле данных, Данные, полученные в результате выполнения данного запроса, используются в нескольких формах пользователя. Текст запроса: Select people.FIO,house.NUMBER,people.DATA_BIRTH,house.IMAGE,people.EDUCATION, street.NAMESTR,locality.SEM9,Descrhouse.TYPE_HOUSE,Descrhouse.DATA_BUILD,Descrhous e.MATERIAL,house.LINKSHEET,house.LINKOBJECT from people,house,street,locality,Descrhouse where people.ID_HOUSE = house.ID Результатом выполнения запроса является набор данных, содержащий информацию из таблиц Население , Поселения Ногинского района и Населенные пункты Ногинского района, Список улиц Ногинского района, Список домов Ногинского района, Жилые помещения . В списке для жителя Ногинского района указаны соответствующие данные из разных таблиц (Фамилия, имя, отчество, дата рождения и др.). Запросы, параметризованные запросы, результирующие данные которых используются в конкретных формах будут рассмотрены при их описании. 4 Формы пользователя проекта В состав проекта входят следующие формы пользователя: - Состав района; Население Ногинского района; Список улиц и домов; Гистограмма “Население Ногинского района”; Круговая диаграмма “Плотность населения”; Создание тематических картограмм и диаграмм. - 12 - Форма пользователя “Состав района”. Форма пользователя “Состав района” отображает данные о населенных пунктах Ногинского района. В состав формы входят компоненты: БД_Текст, Фаска, Фрейм, Текст, Строка, Сетка, БД_Изображение, Рабочая панель, Мемо поле, Кнопка, Запрос,Список макросов. Для получения информации из таблиц базы данных используется запрос: Select district.*, locality.* from district, locality WHERE district.POSEL_ID = locality.POSEL_ID ORDER BY locality.SEM9 Результатом выполнения запроса является набор данных, содержащий информацию из таблиц Поселения Ногинского района и Населенные пункты Ногинского района. Список отсортирован по полю Название населенных пунктов. Кнопка Отчет предназначена для формирования документа в Microsoft Excel на основе шаблона Список поселений.xlt. - 13 - Кнопка Выход предназначена для закрытия формы пользователя. Для данной функции предварительно создали макрос Закрыть (закладка Макросы Администратора БД). Для данной формы установлена связь со слоем карты Населенные пункты (layer10). Форма пользователя “Население Ногинского района”. Форма пользователя “Население Ногинского района” отображает данные о жителях Ногинского района: фамилия, имя отчество, место жительства, дата рождения, описание и фотография жилища. В состав формы входят компоненты: Таблица, Список макросов, Рабочая панель, Панель, БД_Изображение, Текст, Строка, Сетка, Выпадающий список-Классификатор. - 14 - Для получения информации из таблиц базы данных используется запрос, созданный в Модуле данных - Население. Для данной формы установлена связь со слоем карты Населенные пункты(кварталы) (layer11). Форма пользователя “Список улиц и домов”. Форма пользователя “Список улиц и домов ” отображает данные об улицах, жилых зданиях и жителях Ногинского района. В состав формы входят компоненты: Запрос, Параметризованный запрос, Список макросов, Панель, Текст, Панель, БД_Изображение, Сетка, Кнопка. Список улиц Ногинского района сформирован с помощью запроса: Select locality.SEM9,locality.ID,street.ID_LOC,street.ID,street.NAMESTR,street.IMAGESTR from locality, street where street.ID_LOC = locality.ID order by street.NAMESTR Для получения списка жильцов домов используется запрос, который формируется во время просмотра формы (кнопка Формирование списка): Select * From house,people where (people.ID_HOUSE = house.ID) AND (house.ID_STREET = 2) Для данной формы установлена связь с объектом карты Улицы магистр. и гл. с заливкой (l00452000001). Форма пользователя “Гистограмма Население Ногинского района”. - 15 - Форма Гистограмма Население Ногинского района графически (в виде гистограммы) отображает соотношение количества проживающих в поселениях района. В состав формы входят компоненты: Таблица,Панель, Сетка, Диаграмма. Компонент Диаграмма настроен на источник данных – таблица Поселения Ногинского района (district.dbf) . - 16 - Форма пользователя “Круговая диаграмма Плотность населения Ногинского района”. Форма Круговая диаграмма Плотность населения Ногинского района графически (в виде диаграммы) отображает соотношение плотности населения в поселениях района. В состав формы входят компоненты: Таблица, Панель, Сетка, Диаграмма, Список макросов, Кнопка. Компонент Диаграмма настроен на источник данных – таблица Поселения Ногинского района (district.dbf) . - 17 - Кнопка Отчет предназначена для формирования документа в текущей записи на основе шаблона Поселение.dot. Microsoft Word для Форма пользователя “Создание тематических картограмм и диаграмм”. Форма “Создание тематических картограмм и диаграмм” позволяет строить тематические картограммы и диаграммы с помощью прикладных задач ГИС Карта 2011 . - 18 - Процедура создания тематических картограмм предназначена для формирования графических изображений, наглядно иллюстрирующих соотношение значений выбранной характеристики для отдельных объектов электронной карты. Настройки для построения картограмм указываются в диалоге процедуры. - 19 - Исходными данными для построения тематической карты является электронная карта с выделенными на ней объектами. На рисунке приведен пример построения тематической картограммы. а) б) Построение тематических картограмм: а) исходная карта, б) результат. Допускается сохранение/восстановление всех текущих настроек сеанса создания тематических картограмм. - 20 - Пример созданной картограммы приведен на рисунке. Настройки для построения диаграмм указываются в диалоге процедуры. Пример созданной диаграммы приведен на рисунке. - 21 - Кнопка Установить фильтр предназначена для формирования списка определенным критериям отбора с помощью Параметризованного запроса. Текст запроса: SELECT * FROM anygeonk WHERE (anygeonk.NAME = $'Ввод_значения1'$) #Выбор_оператора1#(anygeonk.LAYER = $'Ввод_значения2'$) по В режиме просмотра формы в запрос добавляются данные из полей ввода значений: SELECT * FROM anygeonk WHERE (anygeonk.NAME = 'КВАРТАЛЫ ЗАСТР.КРУП.ГОР.') AND(anygeonk.LAYER = 'НАСЕЛЕННЫЕ ПУНКТЫ(КВАРТАЛЫ)') ПЛОТ. Результат запроса отображается в Списке объектов карты. 5 Стандартная форма для просмотра таблиц Стандартная форма предназначена для отображения и редактирования данных таблиц БД. В данном режиме возможно установить соотношения один ко многим между несколькими таблицами. Две таблицы могут быть связаны друг с другом по ключу. Одна из этих связанных таблиц является главной или управляющей, а другая – вспомогательной, детализирующей. Например, таблица Жилые помещения (descrhouse.dbf) является основной таблицей, справочники Тип жилища (housetype.dbf) и Материал наружных стен дома (materwall.dbf) – подчиненные. При просмотре отображаются данные из трех таблиц: - 22 -