Материал: Разработка систем сбора и отображения данных систем теплоснабжения

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

в) вывод на печать, предварительный просмотр.

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

данные какого узла выводить в отчете (выделив мышкой узел учета или таблицу данных);

какой шаблон использовать при печати (выбрав наименование отчета из контекстного меню);

за какой период должны быть представлены данные.

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

Дополнительный сервис, предоставляемый пользователю - просмотр значений параметров, содержащихся в отчете в виде графиков, что позволяет визуально оценивать корректность данных. Для этого в окне "Параметры отчета" предусмотрена кнопка "График". В открывающемся после нажатия этой кнопки окне, представлены собственно графики, легенда и ползунок для масштабирования по оси абсцисс. Наряду с ползунком для изменения масштаба можно использовать клавиши управления курсором. Имеется также возможность увеличения масштаба любой части графика с помощью манипулятора мышь.

Одной из важнейших функций программы является возможность экспорта данных.

Данные из таблиц за любой интервал времени можно экспортировать в один из следующих форматов: на лист EXCEL, в форматы HTML, XML, DBF, RTF, CSV, SQL, или в буфер обмена Windows. Для экспорта данных следует выделить название таблицы в панели базы данных и нажать кнопку "Экспорт данных" на панели связи.

Данные необходимо экспортировать в формат HTML для интеграции с Web-сервером.

База данных программы "ПРОЛОГ" имеет формат “.MDB”, поэтому существует также возможность экспорта данных с использованием СУБД Microsoft Office Access 2003 и встроенного в него языка программирования VBA.

3 Язык программирования VBA

Термин "VBA" (Visual Basic for Applications) означает "Visual Basic для приложений" - немного упрощённая реализация языка программирования Visual Basic, встроенная в линейку продуктов Microsoft Office, а также во многие другие программные пакеты.

Язык VBA представляет собой мощный инструмент для разработки приложений на базе Microsoft Office. Функции, ручное выполнение которых вызывает некоторые сложности, с его помощью можно автоматизировать.

Некоторые конструкции языка программирования Visual Basic for Application заимствованы из традиционного языка программирования Basic. К услугам разработчика не только основные конструкции языка, но и мощная объектно-ориентированная среда. Объекты - наиболее существенное приобретение Visual Basic for Application, поскольку с их помощью изрядно упрощаются процедуры для манипуляции данными и документами. В состав Microsoft Office входит пять основных приложений - Word, Excel, Access, Power Point, Outlook, - и каждый использует собственную систему объектов. К этому количеству можно добавить такие программы, как, например, Microsoft Graph, Microsoft Equation, Office Assistant, Microsoft Form и некоторые другие вспомогательные компоненты, для которых также существует определенный набор объектов. Так что в понятие "программирование на Visual Basic for Application" входит не только и не столько знание основ языка программирования, сколько умение правильно использовать объекты, их свойства и методы.

Перед началом работы с новым проектом необходимо знать некоторый минимум, который позволит разобраться в программах на Visual Basic for Application. Это характеристики и особенности применения языка, алфавит, инструкции языка, основы объектно-ориентированного программирования и

другие элементы. Visual Basic for Application является процедурным языком, а следовательно, каждая логически законченная часть - это подпрограмма. В Visual Basic for Application введено понятие процедур, описываемых инструкциями Sub и Function. Так, инструкции Sub - End Sub позволяют создавать подпрограмму, а инструкции Function - End Function - функции.

Visual Basic for Application является модульным языком. Модуль представляет собой некоторый объект, содержащий описания отдельных процедур. Сходство Visual Basic for Application с современными системами программирования придают проекты. Набор модулей, относящихся к одному документу, объединяется в проекты. Кроме процедур, в проекте могут храниться макеты форм, модули формы и модули классов. Впрочем, сходство Visual Basic for Application с другими системами разработки, такими, как Visual Basic, Delphi и др., на этом заканчивается. В отличие от упомянутых выше средств разработки, система для создания программ для Microsoft Office не может формировать автономные приложения.

Применяя Visual Basic for Application в Microsoft Word, можно создавать сложные виды документов, в которых используется и текст, и таблицы, и графические изображения, и автофигуры. Для каждого из этих компонентов предусмотрен отдельный объект, ряд свойств и методов, посредством которых можно выполнять такие же действия, что и в интерактивном режиме. Например, изменять толщину линии или придавать объем графическому объекту, увеличивать или уменьшать размер текста и многое другое.Excel представляет собой электронную таблицу, поэтому все предоставляемые Visual Basic for Application средства используются при обработке данных в ячейках рабочей книги. Заметим, что в ячейках таблицы

обычно хранятся числа, строки и даты. Посредством объектов Excel из любой программы на Visual Basic for Application вы получаете доступ к содержимому и атрибутам рабочей книги, а кроме того, можете создавать и изменять графические объекты, диаграммы или фрагменты карт.

Используя функции, объекты и методы языка программирования Visual Basic for Application, встроенного в PowerPoint, можно придавать стандартным компонентам презентации или отдельного слайда дополнительные эффекты. Кроме того, с помощью единой системы объектов Microsoft Office в слайдах PowerPoint можно использовать реальные данные из баз данных, электронных таблиц и отображать их как в табличном виде, так и в виде диаграмм.

Если в трех предыдущих приложениях можно было бы обойтись без Visual Basic for Application, то применение этого языка программирования в базах данных является непременным условием, поскольку с его помощью можно разработать достаточно сложные алгоритмы для обработки данных, в которых используются как стандартные инструкции языка, так и объекты для управления базами данных, в частности, язык структурированных запросов, элементы управления форм, отчетов и др.

Также одним из важнейших применений VBA является автоматизация действий пользователя.

4 Язык HTML

Термин "HTML" (Hyper Text Markup Language) означает "язык разметки гипертекста". Это понятие более широкое, включает в себя Интернет и локальные сети, редакторы, браузеры, разнообразные программные продукты, компакт-диски, обучающие курсы, дизайн и многое другое. Язык HTML - своеобразная противоположность сложным языкам программирования, известным только специалистам.

Основная особенность гипертекстового документа - это способность получить сложные эффекты форматирования простыми и наглядными методами. Сравним гипертекстовый документ, например, с файлом в формате MS Word. В том и другом случаях можно использовать одни и те же приемы форматирования: выбор шрифта, курсив, выравнивание, вставку таблиц, рисунков и т.д. Но в документах Word механизм форматирования скрыт от пользователя, работать с файлом можно только в самом редакторе или программе, поддерживающей его формат. С гипертекстом дело состоит иначе. Такой документ можно открыть в любом текстовом редакторе и увидеть, где и каким образом отформатирован текст. Просмотреть или распечатать документ в отформатированном виде возможно тоже только в специальном приложении гипертекстовом редакторе или браузере.

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

Разработчик HTML-документа может выбрать способ работы с ним. Теоретически с гипертекстом можно работать даже на уровне MS-DOS в любом редакторе, открывающем ASCII-файлы. Это требует от пользователя обязательного знания большинства элементов HTML. Можно использовать для создания гипертекста и браузер. Любая из этих программ имеет режим редактирования Web-страницы в режиме "источника". Для этого может подключаться один из установленных на компьютере текстовых редакторов. Браузеры имеют и встроенные редакторы гипертекста.

Способы создания гипертекста обеспечивают его абсолютную платформенную независимость. Создавая Web-страницу на компьютере, который работает под управлением Windows, можно не сомневаться, что администратор сервера сможет использовать файлы на компьютере, работающем под управлением UNIX или другой операционной системы.

Основной особенностью HTML является принцип, по которому не только допускается вложение одних элементов в другие, но и декларируется необходимость такого вложения. Это отличие HTML от других языков, в которых теоретически можно написать код без вложенных конструкций. Каждый элемент HTML допускает непосредственное вложение только ряда элементов, которые в свою очередь, допускают вложение других, разрешенных для них, и т.д. Таким способом формируется не только общая структура гипертекста, но и создаются разнообразные визуальные эффекты.

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

Несмотря на то, что спецификация HTML является стандартом, этот язык дополняется новыми элементами (расширениями) и постоянно развивается.

5 Web-сервер Apache

сервер Apache является кроссплатформенным ПО, поддерживая операционные системы GNU/Linux, BSD, Mac OS, Microsoft Windows, Novell NetWare, BeOS.

Основными достоинствами Apache считаются надёжность и гибкость конфигурации. Он позволяет подключать внешние модули и СУБД для предоставления данных, аутентификации пользователей, модификации сообщений об ошибках и т. д.

Ядро Apache включает в себя основные функциональные возможности, такие как обработка конфигурационных файлов, протокол HTTP и система загрузки модулей. Ядро (в отличие от модулей) полностью разрабатывается Apache Software Foundation, без участия сторонних программистов.

Теоретически, ядро Apache может функционировать в чистом виде, без использования модулей. Однако функциональность такого решения крайне ограничена. Ядро полностью написано на языке программирования C.

Система конфигурации Apache основана на текстовых конфигурационных файлах. Имеет три условных уровня конфигурации:

конфигурация сервера (httpd.conf);

конфигурация виртуального хоста (httpd.conf c версии 2.2 extra/httpd-vhosts.conf);

конфигурация уровня директории (.htaccess).

Имеет собственный язык конфигурационных файлов, основанный на блоках директив. Практически все параметры ядра могут быть изменены через конфигурационные файлы. Большая часть модулей имеет собственные параметры.поддерживает модульность. Существует более 400 модулей, выполняющих различные функции. Часть из них разрабатывается командой Apache Software Foundation, но основное количество - отдельными разработчиками.

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

поддержка языков программирования;

добавление функционала;

исправление ошибок или модификация основных функций;

усиление безопасности;

часть Web-приложений реализованы в виде модулей Apache;имеет встроенный механизм виртуальных хостов. Он позволяет полноценно обслуживать на одном IP-адресе множество сайтов, отображая для каждого из них собственное содержимое. Для каждого виртуального хоста можно указать собственные настройки ядра и модулей, ограничить доступ ко всему сайту или отдельным файлам.

Также, существуют модули, позволяющие учитывать и ограничивать ресурсы сервера (CPU, RAM, трафик) для каждого виртуального хоста.

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

PHP (mod_php);

Python (mod_python);

Ruby (apache-ruby);

- Perl (mod_perl);

ASP (apache-asp).

Кроме того, Apache позволяет исполнять программы на практически всех языках программирования, в том числе C, C++, sh, Java.имеет различные механизмы обеспечения безопасности и разграничения доступа к данным. Основными являются:

ограничение доступа к определённым директориям или файлам;

механизм авторизации пользователей для доступа к директориям;

ограничение доступа к определённым директориям или всему серверу, основанное на IP-адресах пользователей;

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

существуют модули, реализующие авторизацию через СУБД;

для реализации шифрования данных, передающихся между клиентом и сервером, используется механизм SSL, реализованный через библиотеку OpenSSL.

Существуют также внешние средства обеспечения безопасности.

Администратор может установить собственные страницы и обработчики для всех HTTP ошибок и событий, таких как "404" (Not Found) или "403" (Forrbiden). В том числе существует возможность запуска скриптов и отображения сообщений на разных языках.- самый распространённый Web-сервер. в августе 2007 года он работал на 51 % всех Web-серверов.

6 Реализация сбора данных

.1 Создание и настройка узлов учёта

Перед тем, как осуществить доступ, необходимо правильно настроить подключаемые приборы.

Сначала необходимо выбрать абонента, которому будет принадлежать создаваемый узел учёта. Абонентом является "Котельная НАПО".

Древовидная структура архива программы после добавления узлов учёта будет выглядеть так, как представлено на рисунке 5.

Рисунок 5 - Структура архива программы "ПРОЛОГ"

.1.1 Узел учёта СПТ961

Для создания узла учёта следует выполнить команду [Узел - Создать - Узел]. В появившемся окне вводятся название узла, а также его параметры и способ подключения (рисунки с 6 по 8)

Рисунок 6 - Создание узла учёта СПТ961. Ввод названия узла

Рисунок 7 - Создание узла учёта СПТ961. Ввод типа прибора и идентификатора

Рисунок 8 - Создание узла учёта СПТ961. Настройка параметров связи

.1.2 Узел учёта СПГ761

Для создания узла учёта следует выполнить команду [Узел - Создать - Узел]. В появившемся окне вводятся название узла, а также его параметры и способ подключения (рисунки с 9 по 11).

Рисунок 9 - Создание узла учёта СПГ761. Ввод названия узла

Рисунок 10 - Создание узла учёта СПГ761. Ввод типа прибора идентификатора

Рисунок 11 - Создание узла учёта СПГ761. Настройка параметров связи

.2 Сбор данных

Для подключения приборов учета применяется удалённое подключение посредством COM-порта. Данный способ подключения имеет ряд преимуществ:

используется для всех приборов, поддерживаемых программой "ПРОЛОГ". На стороне компьютера обычно достаточно стандартной установки модема средствами операционной системы;