Предположим, что необходимо подключить базу данных следующего вида:
- Имя каждого файла кодируется как t<код региона>.dbf
- В каждом файле записаны данные по выбросам различных веществ, по различным отраслям промышленности и годам в виде:
где поля означают следующее:
- CODE - коды загрязнителей
- T - данные по выбросам загрязнителей в год
- DEPCODE - коды отраслей промышленности
Тогда последовательность действий следующая:
В панели псевдонимов
- Выбираем каталог, где расположены таблицы БД
- В поле псевдонимов пишем, например industry, и добавляем в список
- В списке файлов выбираем любой файл БД
- В поле кодов стираем в названии файла все цифры, оставляя только первый символ (t)
- В списке панелей выбираем панель выбросов PolPanel и дважды нажимаем на нее
- Аналогично в списке координат выбираем территории - Region
- В поле кодов получаем: t(PolPanel), добавляем этот код в список кодов
Переходим к выбору панели, для которой формируем правила считывания из БД
- В данном случае - это панель выбросов - выбираем ее, нажав на соответствующую кнопку
В установках панели выбросов
Форматы координат
- Выбираем координату "ВРЕМЯ", так как эта координата используется не как полная дата, а только как год.
- Формат координаты устанавливаем как integer
- Уникальности у значений этой координаты нет
- В форме установок координаты нажимаем на кнопку календаря и переходим к форме установок времени
- В форме установок времен и и слева, и справа, одинаково устанавливаем
- Дата как "Другое"
- Форма представления даты как "Год"
- Формат года как "Длинный"
Переходим к описанию циклов считывания и устанавливаем поледовательность циклов следующим образом:
- Территории (Region)
- Отрасли (Industry) - нажимаем кнопку выбора типа цикла, вибираем SQL-запрос и начинаем его формировать (см. ниже)
- Загрязнители (Pollutant)
- Время (Time)
Формирование SQL-запроса
- Необходимо открыть любой файл из БД
- В полях таблицы (формируются автоматически после открытия файла) выбрать поле кодов загрязнителей CODE, по правой кнопке выбрать "Выбрать как поле поиска"
- CODE добавится в список соответствия, выбрать этот параметр
- В списке координат выбрать Pollutant (загрязнители), по правой кнопке выбрать "Установить соответствие"
- В списке типа координат выбрать Value (так как коды загрязнителей находятся в клетках таблицы, а не в заголовках полей)
- В списке соответствия должно получиться: CODE,:Pollutant,Value
- Аналогичные действия повторям для двух полей, содержащих значения выбросов; например для t1986 и t1987 (в данных полях записаны выбросы по годам)
- Так как время в для этих полей фигурирует в виде года в заголовках колонок таблицы, то тип координаты будет Title и сама координата будет :Year
- В списке соответствия должно получиться: t1986,:Year,Title и t1987,:Year,Title
Далее необходимо сформировать непосредственно сам запрос:
- При открытии таблицы БД автоматически формируется следующее начало запроса SELECT * FROM <имя файла таблицы без пути и расширения> WHERE
Далее необходимо вручную дописать условие выбора по запросу для этого
- Нужно из списка полей БД выбрать DEPCODE (код отрасли, и цикл у нас будет тоже по всем отраслям), по одинарному нажатию это поле отразится в списке запроса на месте курсора
- Из списка разделителей выбрать =, и из координат - :Industry (отрасль)
- В поле запроса должно получиться что-то типа: SELECT * FROM <имя файла таблицы без пути и расширения> WHERE DEPCODE = :Industry
То, что должно получиться в результате можно посмотреть здесь.
- Все, можно нажимать "ОК", останется только присвоить название модели (например federal) для выбора из БД, по которой данные будут считываться из таблиц.
- В результате наших действий в файле Local.ini должен получиться следующий текст.
[Главная]