Диплом: Автоматизация делопроизводства на ОГБПОУ "Сенгилеевский технологический техникум"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
68
Staff (для хранения данных по должностям);
StaffDoc (документы по каждой должности: должностные
инструкции и производственные инструкции и т.д.);
TypeDoc (типы должностных документов);
Employer (данные работодателей);
TypeWork (типы работы, указываемые в договоре);
В таблице 2.5 представлено подробное описание полей всех таблиц,
представленных на схеме.
Таблица 2.5 – Описание полей таблицы базы данных.
Таблица Dogovor (для хранения данных заключаемых договоров)
Наименование поля
Тип данных
Ключ
Описание
id
NUMBER
PK
Идентификатор записей
NumDogovor
VARCHAR
Номер договора
DateDogovor
DATE
Дата заключения договора
NotLimitDate
NUMBER
Флаг обозначающий бессрочность
договора
BeginDate
DATE
Дата начала срока действия
договора
EndDate
DATE
Дата окончания срока действия
договора
TestPeriod
VARCHAR
Продолжительность
испытательного срока
NotTest
NUMBER
Флаг «Без испытательного срока»
BeginWorkDate
DATE
Дата начала работы по договору
BeginDogovorDate
DATE
Дата начала действия договора
TypeWork
NUMBER
FK
Тип работы
Employer
NUMBER
FK
Работодатель
Staff
NUMBER
FK
Должность
Worker
NUMBER
FK
Работник
Chief
NUMBER
FK
Начальник работника
AddHoliday
VARCHAR
Дополнительный отпуск
BaseHoliday
VARCHAR
Основной отпуск
CondCalcPrem
VARCHAR
Условия расчета премии
Таблица Worker (Работники)
Id
NUMBER
PK
Идентификатор
FIO
VARCHAR
Фамилия Имя Отчество
Phone
VARCHAR
Номер телефона работника
Address
VARCHAR
Адрес прописки работника
Passport
VARCHAR
Данные паспорта (серия, номер,
кем и когда выдан)
Таблица Staff (Должности)
Id
NUMBER
PK
Идентификатор
Salary
NUMBER
Оклад
69
Caption
VARCHAR
Наименование
NatureWork
VARCHAR
Характер труда
CondWork
VARCHAR
Условия труда
ToolWork
VARCHAR
Орудия труда
TypeWork
VARCHAR
Вид работы
Таблица StaffDoc (Документы к должностям)
Id
NUMBER
PK
Идентификатор
DocDate
DATE
Дата документа
DocNumber
VARCHAR
Номер документа
DocHeader
VARCHAR
Заголовок
TypeDoc
NUMBER
FK
Тип документа
Staff
NUMBER
FK
Должность
Таблица TypeDoc (Типы документов к должностям)
Id
NUMBER
PK
Идентификатор
Caption
VARCHAR
Наименование
Таблица Employer (Работодатель)
Id
NUMBER
PK
Идентификатор
FullCaption
VARCHAR
Полное наименование
ShortCaption
VARCHAR
Краткое наименование
City
VARCHAR
Город
DirectorStaff
VARCHAR
Должность руководителя
DirectorFIO
VARCHAR
ФИО руководителя
DocNumber
VARCHAR
Номер документа, на основании
которого действует руководитель
от имени организации
DocDate
DATE
Дата документа
DocCaption
VARCHAR
Название документа
Address
VARCHAR
Адрес организации
Phone
VARCHAR
Телефон
INN
VARCHAR
ИНН
Таблица TypeWork (Типы работ в договоре)
Id
NUMBER
PK
Идентификатор
Caption
VARCHAR
Наименование
Таблица Shablon (Шаблоны трудовых договоров)
Id
NUMBER
PK
Идентификатор
Caption
VARCHAR
Наименование
Path
VARCHAR
Путь к файлу
2.3.3. Структурная схема пакета (дерево вызова программных
модулей)
Проект программы состоит из трех модулей:
модуль Main.pas (главный модуль);
модуль shabl.pas (работа с шаблонами);
модуль connect.pas (настройки соединения с базой данных);
70
модуль sprav.pas (работа со справочниками).
Подробное описание модулей представлено в виде таблицы 2.6.
Таблица 2.6 Описание модулей системы
п/п
Наименование модуля
Функции модуля
1.
модуль Main.pas
содержит процедуры и функции, отвечающие за
отображение главного окна программы, выборку
требуемых данных из базы данных и выполнение
основных функций, связанных с
непосредственным формированием договора
(выбор сотрудника, выбор шаблона,
формирование трудового договора, выгрузка
готового документа в Microsoft Word), также
содержит процедуры и элементы, отвечающие за
отображение и работу главного меню программы
2.
модуль shabl.pas
в данном модуле запрограммированы процедуры
для работы с шаблонами трудовых договоров
(базовые функции по добавлению и изменению
данных шаблонов, хранимых в базе данных)
3.
модуль connect.pas
модуль содержит процедуры и компоненты для
ввода, сохранения и изменения настроек
подключения к БД, а также инициализации
самого подключения и осуществления всех
операций взаимодействия с базой данных
(отправки SQL-запросов и обработка результатов
их выполнения)
4
модуль sprav.pas
модуль содержит процедуры и компоненты для
выполнения основных операций со
справочниками информационной системы
(просмотр, добавление, изменение, удаление
записей)
Дерево вызова программных модулей приведено на рисунке 2.5.
Connect.pas
Main.pas
Shabl.pas Sprav.pas
Рисунок 2.5 – Дерево вызова программных модулей
71
2.3.4. Описание программных модулей
После запуска программы инициализируется подключения к базе данных.
Соединение с базой данных осуществляется с помощью технологии ADO.
Данная технология связи с хранилищами данных завоевала особую
популярность у разработчиков, благодаря своей универсальности – базовый набор
интерфейсов OLE DB имеется в каждой современной операционной системе
Windows. Поэтому для обеспечения доступа приложения к данным достаточно
лишь правильно указать провайдер соединения ADO, после этого можно
переносить созданный программные продукт на любой компьютер, где имеется
требуемая база данных и, конечно, установленная ADO [13].
В палитре компонентов Delphi есть отдельная вкладка ADO, которая
содержит набор компонентов, позволяющих создавать полноценные приложения
БД, обращающиеся к данным через данную технологию.
Технология ADO обеспечивает универсальный доступ к хранилищам
(источникам) данных из приложений БД. Такую возможность предоставляют
функции набора интерфейсов, созданные на основе общей модели объектов СОМ
и описанные в спецификации OLE DB.
Технология ADO и интерфейсы OLE DB обеспечивают для приложений
единый способ доступа к хранилищам (источникам) данных разных типов. То
есть, приложение, использующее в своей работе ADO может использовать в
качестве источника любое хранилище, поддерживающее ADO, будь это
локальная СУБД или серверная, или даже электронные таблицы. Запрос SQL,
направленный любому источнику данных через ADO, будет выполнен [12].
OLE DB по сути представляет собой набор специализированных объектов
СОМ, инкапсулирующих стандартные функции обработки данных, и
специализированные функции конкретных источников данных и интерфейсов,
обеспечивающих передачу данных между объектами.
Согласно терминологии ADO, любой источник данных (база данных,
электронная таблица, файл) называется хранилищем данных, с которым при
помощи провайдера данных взаимодействует приложение. Минимальный набор
компонентов приложения может включать объект соединения, объект набора
данных, объект процессора запросов.
72
В результате приложение обращается не прямо к источнику данных, а к
объекту OLE DB, который "умеет" представить данные (например, из файла
электронной почты) в виде таблицы БД или результата выполнения запроса SQL.
Технология ADO в целом включает в себя не только сами объекты OLE DB,
но и механизмы, обеспечивающие взаимодействие объектов с данными и
приложениями. На этом уровне важнейшую роль играют провайдеры ADO,
координирующие работу приложений с хранилищами данных различных типов.
Такая архитектура позволяет сделать набор объектов и интерфейсов
открытым и расширяемым. Набор объектов и соответствующий провайдер может
быть создан для любого хранилища данных без внесения изменений в исходную
структуру ADO. При этом существенно расширяется само понятие данных – ведь
можно разработать набор объектов и интерфейсов и для нетрадиционных
табличных данных. Например, это могут быть графические данные
геоинформационных систем, древовидные структуры из системных реестров,
данные CASE-инструментов и т. д.
Так как технология ADO основана на стандартных интерфейсах СОМ,
которые являются системным механизмом Windows, это сокращает общий объем
работающего программного кода и позволяет распространять приложения БД без
вспомогательных программ и библиотек.
Две таблицы, расположенные на главной форме, работают напрямую с
таблицами базы данных, поэтому для их работы используется компонент Adotbl.
Данный компонент представляет собой виртуальную копию таблицы базы
данных, изменения в которой сразу передаются в связанную таблицу БД.
Для выгрузки данных в шаблон договора, а также их изменения
используется компонент AdoQuery. Данный компонент предназначен для
отправки запросов к базе данных и обработки ответов на них. В приложении
используются 3 вида запросов:
Запросы на выборку;
Запросы на добавление данных;
Запросы на обновление данных.
Для получения практически любых данных любого количества таблиц базы
данных используется оператор запроса SELECT.
73
Этот оператор выбирает записи из базы данных и имеет самую сложную
структуру, по сравнению с другими операторами языка SQL. Данный оператор
позволяет не только выбирать записи из базы данных, удовлетворяющие
заданному условию, но также и настраивать параметры отображения этих
записей, таких как сортировка и группировка. А использование агрегатных
функций позволяет подсчитывать необходимые данные.
Для обновления данных, хранящихся в базе данных используется оператор
UPDATE, для добавления новых – оператор INSERT.
Следует отметить, что технология ADO позволяет писать запрос в объекте
AdoQuery на классическом языке SQL, без учета особенностей СУБД,
используемой в качестве хранилища данных. Это является значимым
преимуществом, т.к. позволяет легко переводить программные средства с одной
СУБД на другую, в зависимости от условий эксплуатации и требований к ней.
Программные модули состоят из процедур, которые обрабатывают
различные действия пользователя (нажатия на кнопки, ввод текста в поля и т.д.)
нужным образом. На рисунке 2.6 представлена блок-схема алгоритма создания
договора по указанным параметрам.
74
Начало
Отправка запроса на получение
данных выбранного работника
Проверка наличия файла шаблона
выбранного договора
Вывод сообщения
об ошибке
Файл не найден
Файл найден
Открытие файла
Поиск в документе ключевого
слова данного поля
Вставка значения
вместо ключевого
слова
Отображение документа
пользователю
Ключевое слово найдено
Ключевое слово не найдено
Конец
Цикл по результатам запроса
i=1; i<=n; i++
Конец цикла по результатам
Рисунок 2.6 – Блок-схема алгоритма создания договора
После запуска процедуры обязательно происходит проверка наличия файла
шаблона договора, имя которого сохранено в настройках программы. Если файл
на жестком диске пользователя не найден, то выводится соответствующее
сообщение об ошибке и процедура завершает свое выполнение. Если же файл
найден, то отправляет запрос к базе данных на выборку данных выбранного
работника, файл шаблона открывается для редактирования. Затем данные из
75
запроса подставляются в шаблон путем замены ключевых слов, расставленных в
шаблоне в требуемых местах. Например, везде где требуется указывать
должность работника, указывается ключевое слово <Должность>. Процедура
ищет все вхождения данного ключевого слова в документе и заменяет их на
значение для выбранного работника.
Следует отметить, что все данные, требуемые для формирования договоров
уже сохранены в базе данных. Ввод данных по работнику, должности и договору
осуществляется с помощью используемой в данный момент информационной
системы ППО «СЭД».
Остальные процедуры в программном коде имеют простую линейную
структуру, поэтому подробно они рассмотрены не будут. Исходный код всех
процедур с комментариями представлен в приложении.
2.4. Контрольный пример реализации проекта и его описание
После первого запуска программы открывается с запросом настроек
подключения к базе данных (Рисунок 2.7)
Рисунок 2.7 – Окно ввода настроек подключения к базе данных
После ввода настроек открывается главное окно программы (Рисунок 2.8).
76
Рисунок 2.8 – Главное окно программы
Главное окно программы разделено на три области, каждая из которых
отвечает за отдельный шаг формирования договора.
В левой части главного окна программы расположена таблица со списком
работников. Над таблицей имеется поле для поиска конкретного работника (по
фамилии, имени, отчеству). При вводе каких-либо символов в это поле
содержимое таблицы автоматически обновляется: отображаются только
работники, фамилия, имя или отчество которых содержат строку введенных
символов. Для однозначной идентификации работников, в таблице также
выводятся паспортные данные работника. Выбранный работник выделяется
голубым цветом. Например, на рисунке 2.9 выбран работник Иванов Иван
Иванович.
77
Рисунок 2.9 – Выбор работника в таблице
Второй шаг формирования договора – выбор шаблона договора,
сохраненного в настройках программы. В правой части главного окна
расположена таблица, в которой отображается список сохраненных договоров.
Над таблицей расположено поле для поиска шаблона договора по его названию.
По аналогии с таблицей работников, выбранный шаблон выделяется голубым
цветом.
Третий шаг формирования договора – запуск процедуры выгрузки данных
из базы данных и подстановка их в выбранный шаблон. Запуск данной процедуры
осуществляется с помощью нажатия соответствующей кнопки, расположенной
под таблицами.
В ходе выполнения процедуры осуществляется проверка наличия файла
шаблона договора, и в случае его отсутствия, выводится соответствующее
сообщение (Рисунок 2.10).
Рисунок 2.10 – Сообщение об отсутствии файла
Если же файл на диске успешно найден, то через 2-3 секунды отображается
сформированный автоматически договор, открытый в программе Microsoft Word
(Рисунок 2.11).

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

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