Диплом: Разработка информационной системы "КИПИА и АСУТП" для ООО "Геопрогресс" с помощью среды разработки Delphi с использованием Interbase

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
43
Рисунок 12 – структура таблицы «Sotr»
Таблица «Metrology» является основной таблицей базы данных, что
можно заметить на ER-диаграмме. Она предназначена для формирования акта,
а также для контроля над соблюдением сроков поверки. В ней используются
следующие поля:
«ID» - ключевое уникальное поле целочисленного типа;
«ID_F» - вторичный ключ, обеспечивает связь с таблицей «Field»;
«ID_INS» - вторичный ключ, обеспечивает связь с таблицей «Inst»;
«ID_APP» - вторичный ключ, обеспечивает связь с таблицей «App»;
«TECH» - поле символьного типа размером 40 символов, отображает
технологический параметр который контролируется прибором;
«ID_EQ» - вторичный ключ, обеспечивает связь с таблицей «Equip»;
«ID_S» - вторичный ключ, обеспечивает связь с таблицей «Sotr»;
«TYP» - поле, имеющее символьный тип данных и размер 3 символа,
которое отображает признак прибора;
«DATE_N_P» - поле типа дата, отображает дату следующей поверки
прибора, путем вычисления сложения даты последней поверки со сроком
поверки;
44
«STAT» - поле символьного типа размером 25 символов, отображает
статус поверки прибора.
Структура базы данных организованна таким образом, что таблицы
отображают определенную иерархию, т.е. записи формируются из таблиц
поочередно, выбирая месторождение, можно выбрать только установки,
находящиеся на данном месторождении, в свою очередь аппараты выбираются
только из тех, что находятся на определенной установке. Таким образом,
осуществляется контроль над местонахождением приборов.
Структура таблицы «Metrology» представлена на рисунке 13.
Рисунок 13 – структура таблицы «Metrology»
2.2.3. СУБД Interbase
Как уже описывалось выше, в данной ВКР использовалась СУБД
Interbase.
InterBase представляет собой полнофункциональный SQL-сервер,
который не требователен к ресурсам ПК, благодаря чему имеет широкое
распространение среди серверов БД.
45
InterBase как правило поставляется вместе с пакетом Delphi, и запуск
сервера происходит открытbем файла IBConsole. Для того чтобы
зарегистрировать локальный сервер необходимо ввести стандартный пароль и
логин: «masterkey» и «SYSDBA» соответственно.
Создание базы данных и таблиц в Interbase происходит полностью на
языке запросов SQL, за исключением самой БД. Файл базы данных можно
создать с помощью конструктора в консоли.
Внешний вид IBConsole представлен на рисунке 14.
Рисунок 14 – главное окно IBConsole
Язык SQL в InterBase почти полностью соответствует стандарту SQL:92
и достаточно близок к стандартам SQL:99 и SQL:2003. Вместе с тем создатели
InterBase не рассматривают стандарт как догму и последовательно
совершенствуют своё детище. Поэтому в InterBase внедрены три развитых
диалекта SQL, способных решать весь диапазон задач, стоящих перед языком
реляционных БД.
В состав InterBase SQL включены:
встраиваемый SQL (Embedded SQL, ESQL) – предназначен для
использования в клиентских приложениях БД, написанных на языках
классического программирования 3-го поколения, таких как C и Pascal.
Фактически ESQL представляет собой сравнительно небольшое подмножество
46
операторов, подобных операторам SQL, и ряд специфичных конструкций. Так
как препроцессор включает текст ESQL в исполняемый код приложений, в
результате мы получаем исключительно статические запросы, что не позволяет
пользователю изменять правила выборки данных во время выполнения
приложения. Ещё одним недостатком встраиваемого SQL является то, что его
операторы нельзя применять в хранимых процедурах и триггерах;
динамический SQL (Dynamic SQL, DSQL) – наиболее востребованная
реализация SQL, позволяющая создавать запросы во время выполнения
программы. Взаимодействие между приложением и сервером осуществляется
за счёт обращения к функциям встроенного InterBase API. Если вы
разрабатываете клиентские проекты на высокоуровневых языках из состава
Embarcadero RAD Studio (например, Delphi и C++ Builder), то о прямом
обращении к API можно не задумываться, так как все функции
инкапсулированы в многочисленные классы и компоненты библиотек VCL и
FM;
процедурный SQL – вносит в изначально декларативный SQL
разнообразные процедурные расширения, такие как переменные, условные
операторы, циклы и т. п. Перечисленные возможности применяются в
триггерах и хранимых процедурах InterBase. Процедурный SQL поддерживает
DML и DQL, но не в состоянии работать с большинством инструкций
определения данных DDL;
интерактивный SQL (Interactive SQL, ISQL) – представляет собой
подмножество DSQL, язык предназначен для применения в командной строке
InterBase и в одноимённой утилите Interactive SQL. [21]
2.3. Методология программирования
Данный проект разрабатывался в среде программирования Delphi.
Delphi (Делфи)императивный, структурированный, объектно-
ориентированный язык программирования, диалект Object Pascal. Object
47
Pascal — результат развития языка Турбо Паскаль, который, в свою очередь,
развился из языка Паскаль. Паскаль был полностью процедурным языком,
Турбо Паскаль, начиная с версии 5.5, добавил в Паскаль объектно-
ориентированные свойства, а в Object Pascal — динамическую идентификацию
типа данных с возможностью доступа к метаданным классов (то есть к
описанию классов и их членов) в компилируемом коде. Отличительным
свойством Object Pascal является то, что объекты по умолчанию располагаются
в динамической памяти.
В среде программирования Delphi также используется модульное
программирование.
Модульное программирование является особым способом разработки
программы, которая строится при этом из нескольких относительно
независимых друг от друга частей – модулей. Понятие модуля является одним
из центральных при разработке программного обеспечения.
Модуль – это программная единица, текст которой компилируется
автономно. Внутренняя структура модуля скрыта от пользователя.
Модульное программирование – логически взаимосвязанная
совокупность функциональных элементов, оформленных в виде отдельных
программных модулей.
Использование модульного программирования позволяет упростить
тестирование программы и обнаружение ошибок,
Модуль состоит из заголовка, в котором после ключевого слова «unit»
указывается имя модуля, и четырех разделов: интерфейса, реализации,
инициализации и деинициализации.
В разделе интерфейса размешаются описания идентификаторов, которые
должны быть доступны леем модулями и программам, использующим: этот
модуль и содержащим его имя в списке uses. В разделе интерфейса
объявляются типы, константы, переменные и подпрограммы. При этом ДЛЯ
48
подпрограмм указываются только их заголовки. Другие используемые модули
указываются в списке «uses». Этот раздел начинаем ключевым словом
«interlace». [28]
В разделе реализации располагается код подпрограмм, заголовки
которых были приведены в разделе интерфейса. Здесь можно описывать типы,
объявлять константы и переменные и описывать подпрограммы, которые
используются только В этом модуле и за его пределами не видны. Раздел
реализации начинается ключевым словом «implementation».
Последний раздел модуля - инициализационная часть. Она представляет
собой основной блок модуля. Приведенные в ней операторы выполняются
первыми, т.е. они выполняются перед операторами основного блока главной
программы, в которую включен данный модуль.
49
ГЛАВА 3. Реализация программного продукта
3.1. Эскиз и специфика типов объектов управления
Программный продукт, представленный в данной ВКР, состоит из
комбинации форм. Эскиз основной формы программного продукта представлен
на рисунке 14.
Связь
Таблицы
Метрология
Сервис
Подключить
Сотрудники
База данных
О программе
Проверить соединение
Месторождения
Акт просрочки
Об авторе
Установки
Аппараты
Приборы
Рисунок 14 – Эскиз основной формы программы
При проектировании основных элементов форм использовались
следующие компоненты:
метка (Label) - постоянный текст, не подлежащий изменению при
работе пользователя с экранной формой;
комбинированное окно (Combobox) - объединяет возможности окна-
списка и текстового окна;
полоса меню (MainMenu) - предлагает выбор основных функций
обработки информации, представленные в программе;
50
строка редактирования (Edit) - это стандартный управляющий
элемент Windows для ввода. Он может быть использован для отображения
короткого фрагмента текста и позволяет пользователю вводить текст во время
выполнения программы;
кнопка (Button) - это стандартная кнопка Delphi, кнопка имеет на
поверхности надпись (описывающая её назначение при нажатии);
панель (Panel) - представляет собой панель, на поверхности которой
можно поместить другие компоненты;
GroupBox - представляет собой панель c наименованием, на
поверхности которой можно поместить другие компоненты. Работа компонента
аналогична компоненту Panel;
командная кнопка с надписью и пиктограммой (BitBtn) - обработчик
события «onclick» этого компонента обычно используется для реализации
некоторой команды;
пиктографическая кнопка (SpeedButton) - обычно используется для
быстрого доступа к тем или иным опциям главного меню;
таблица базы данных (DBGrid) - отображает набор данных в виде
электронной таблицы;
выпадающий список БД (DBLookupComboBox) компонент, внешне
аналогичный ComboBox, но отличается тем, что выборка производится из
таблицы базы данных по ключу;
строка редактирования БД (DBEdit) – компонент, выполняющий
аналогичные функции компонента Edit, но в отличие от него, может отображать
данные связанного поля, выбранного из DataSet;
строка состояния (StatusBar) - представляет собой ряд панелей,
отображающих полосу состояния в стиле Windows;
отчет (QuickRep) компонент, предназначенный для формирования
отчетов. Он представляет собой лист, разбитый на основные части: заголовок
51
(Title), строка отображения заголовков (ColumnHeaderBand), основной контент
(DetailBand), нижний колонтитул (PageFooterBand).
Для доступа к базе данных обеспечивается с помощью компонента
IBDataBase. Данный компонент осуществляет связь базы данных с проектом,
при этом нужно указать, требуется ли ввод пароля при подключении БД или
нет.
Для работы с данными и метаданными СУБД Interbase используются
транзакции. Соответственно и для работы с БД в приложении, нужен
компонент, осуществляющий транзакции. Таким компонентом является
IBTransaction.
Работа с таблицами базы данных осуществляется с помощью
компонентов IBTable и IBQuery.
IBTable обращается напрямую к таблице, выбранной из списка в
свойствах компонента. Работа с данным компонентом не требует знания языка
запросов SQL и осуществляет работу с данными с помощью стандартных
свойств компонента.
IBQuery является запросом, который описывается на языке SQL.
IBQuery представляет более широкий спектр функций для работы с данными.
Данные компоненты скомбинированы на форме, обеспечивая
«дружественность» интерфейса и выполняя свои функции в соответствии с их
назначением. [21]
3.2. Руководство системного программиста
3.2.1. Схема взаимодействия модулей
Данный программный продукт написан в среде визуального
программирования Delphi 7 и был основан на модульном программировании. В
программе используются стандартные компоненты Delphi 7, с помощью
52
которых осуществляется её реализация. Основными файлами программы при её
создании являются файлы с расширениями *.pas, *.dfm, *.dpr, *.exe и др.
Программа включает в себя следующие файлы:
KIPGuide.dpr – файл проекта Delphi, содержащий код программы,
обеспечивающий запуск модулей;
Metrologia.pas, App.pas, Main.pas, Autor.pas, Dialog.pas,
Datamodule.pas, Report.pas, MetroEd.pas, Equip.pas, Ustanovka.pas, Mest.pas,
Apparat.pas, Sotr.pas – файлы, хранящие в себе код модулей;
Metrologia.dfm, App.dfm, Main.dfm, Autor.dfm, Dialog.dfm,
Datamodule.dfm, Report.dfm, MetroEd.dfm, Equip.dfm, Ustanovka.dfm, Mest.dfm,
Apparat.dfm, Sotr.dfm – файлы, в которых находятся описания форм. Данные
файлы связаны с файлами .pas и могут редактироваться в текстовом редакторе.
При открытии файла через Delphi, его содержимое также отображается в виде
текста;
Metrologia.dcu, App.dcu, Main.dcu, Autor.dcu, Dialog.dcu,
Datamodule.dcu, Report.dcu, MetroEd.dcu, Equip.dcu, Ustanovka.dcu, Mest.dcu,
Apparat.dcu, Sotr.dcu – результат преобразования кода модуля в машинные
инструкции;
KIPGuide.cfg – содержит параметры и настройки компилятора;
KIPGuide.dof – файл, который содержит параметры и настройки
проекта;
KIPGuide.res – файл ресурсов программы, который содержит в себе
рисунки, пиктограммы и прочие;
KIPGuide.exe – исполнимый файл проекта, результат взаимодействия
и компиляции всех вышеуказанных файлов. [24]
Модули программы имеют иерархическую структуру, которая
представлена на рисунке 15.

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран