Диплом: Автоматизация процесса учета отпусков сотрудников в ОАО "Авиадвигатель" г. Пермь

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
82
Рисунок 46 – Дерево функций
83
2.3.2. Характеристика базы данных
Достоинства Microsoft Visual FoxPro 9.0:
1. высокая скорость выполнения запросов;
2. широкие возможности по созданию пользовательских
интерфейсов и взаимодействия с другими программами, поддерживающими
COM автоматизацию;
3. низкие требования к аппаратному обеспечению;
4. низкая стоимость лицензии на программное обеспечение;
5. небольшое количество служебной информации в
пользовательской базе данных, как следствие более экономное расходование
памяти на запоминающем устройстве.
Недостатки Microsoft Visual FoxPro 9.0:
1. файл-серверная архитектура, подразумевающая передачу
большого количества информации в виде файлов – таблиц (*.dbf) и файлов –
баз данных (*.dbc), которые могут храниться на сетевом диске, перед
выполнением соответствующего SQL запроса на компьютере клиенте, что
вызывает замедление в его выполнении, обусловленное, как правило, «узким»
каналом связи;
2. низкий уровень безопасности хранимых данных.
Для устранения описанных недостатков программного средства
Microsoft Visual FoxPro 9.0 в ОАСУП была создана необходимая программно-
аппаратная инфраструктура для реализации клиент-серверной архитектуры
информационной системы, основной целью которой является устранения
передачи файлов-таблиц и файлов-баз данных по локальной вычислительной
сети между файловым сервером и клиентским приложением. Для этого был
выделен отдельный компьютер-сервер, на котором функционируют
прикладной компонент и компонент доступа к данным, а на запоминающем
устройстве располагаются пользовательские базы данных. Таким образом, вся
обработка запросов осуществляется не клиентским приложением, в случае
штатного использования Microsoft Visual FoxPro 9.0, а выделенным сервером,
84
локальная вычислительная сеть используется для передачи SQL запросов от
клиента к серверу или вызову той или иной функции прикладного компонента
и передачи результирующего набора данных от сервера к клиенту. В связи с
тем, что прямого доступа к базам данных у пользователей информационной
системы нет, а он есть только у информационной системы, уровень
безопасности данных был повышен.
Рисунок 37 – ER-модель базы данных «Учёт отпусков»
docitem
PK,I1 cod_docitem INTEGER
FK1,I1 cod_doc INTEGER
itemtype INTEGER
dt_begin DATETIME
dt_end DATETIME
days INTEGER
user VARCHAR(40)
dt_vvd DATETIME
dt_edt DATETIME
absence
PK,I1 cod_abs INTEGER
FK2,I2 cod_work INTEGER
FK1,I1 cod_super INTEGER
cod_tab VARCHAR(5)
dt_begin DATETIME
dt_end DATETIME
kol_dn NUMERIC(3;0)
kol_dn_rab NUMERIC(3;0)
dt_vvd DATETIME
dt_edt DATETIME
user VARCHAR(30)
holirest
PK,I1 Cod_Holirest INTEGER
FK1,I1 cod_work INTEGER
baserest NUMERIC(7;2)
vredrest NUMERIC(7;2)
dopmoney INTEGER
nord_new INTEGER
dt_vvd DATETIME
dt_edt DATETIME
user VARCHAR(30)
doc
PK,U1 cod_doc INTEGER
FK1,I1 cod_work INTEGER
doc_type INTEGER
cod_group INTEGER
doc_num VARCHAR(30)
dt_doc DATETIME
cod_tab VARCHAR(4)
dt_begin DATETIME
dt_end DATETIME
reason VARCHAR(256)
status VARCHAR(6)
dt_year_begin DATETIME
dt_year_end DATETIME
user VARCHAR(40)
dt_vvd DATETIME
dt_edt DATETIME
Work
PK cod_work INTEGER
... CHAR(10)
otpusk
PK,I1 cod_otp INTEGER
cod_group INTEGER
FK2,I2 cod_work INTEGER
FK1,I1 cod_super INTEGER
cod_tab VARCHAR(3)
dt_beg_osn DATETIME
kol_dn_osn NUMERIC(4;0)
kol_dn_vr NUMERIC(3;0)
kol_dn_dop NUMERIC(2;0)
kol_dn_kom NUMERIC(3;0)
status NUMERIC(1;0)
dt_period1 DATETIME
dt_period2 DATETIME
dt_vvd DATETIME
dt_edt DATETIME
user VARCHAR(30)
*
*
*
*
*
*
*
БД «Учёт рабочего времени»
БД «Персонал»
supervises
PK cod_super INTEGER
... CHAR(0)
...
...
85
Наименование поля
Тип данных поля
Длина поля
ID
Целое Число
(ключевое поле)
11
Date created
Дата
10
Letter_date
Дата
10
Letter_from
Строка
50
Letter_title
Строка
50
Letter_body
Строка
250
It_worker_ID
Целое число
5
It_Group_ID
Целое число
5
IT_Mestopologenie
Целое число
5
Id_history
Целое число
5
Рисунок 37 – Структура записей таблицы Doc
Наименование поля
Тип данных поля
Длина поля
ID_group
Целое Число
(ключевое поле)
11
Cod_Work
Строка
100
Рисунок 37 – Структура записей таблицы Work
Наименование поля
Тип данных поля
Длина поля
ID
Целое Число
(ключевое поле)
11
Name
Строка
15
Second_Name
Строка
20
86
Extension
Число
5
Mobile_phone
число
10
IT_Group
Число
11
Рисунок 37 – Структура записей таблицы Docitem
Наименование поля
Тип данных поля
Длина поля
ID_history
Целое Число
(ключевое поле)
11
ID_status
Целое число
11
Soglasovano
Логическая
1
Рисунок 37 – Структура записей таблицы Supervises
Наименование поля
Тип данных поля
Длина поля
ID_Klassification
Целое Число
(ключевое поле)
11
KeyPhrases
Строка
150
Group_ID
Целое число
11
Id_it_Worker
Целое число
11
Soglasovanie
Логическое
1
Date
дата
10
Рисунок 37 – Структура записей таблицы Hplirest
87
2.3.3. Структурная схема пакета (дерево вызова программных
модулей)
При входе в систему загружается модуль «Главная страница» (index.php)
которая передаёт управление подключаемому файлу «Авторизация»
(log_form.inc), в соответствии с действиями пользователя, данный файл либо
производит проверку, либо передаёт управление модулю «Регистрация»
(reg_form.inc). После прохождения одной из процедур (регистрации или
авторизации) управление передаётся подключаемому файлу проверки наличия
сессии и предоставления меню (подключаемый файл «Меню»- m_menu.inc).
Далее файл меню предоставляет возможность пользования модулями ИС.
Следует заметить, что данный файл подключается при использовании
каждого модуля информационной системы и с его помощью осуществляется
передвижение по дереву подключаемых программ (модулей), которое
представлено на рисунке 10.
Рисунок 37 – Дерево вызова программ
88
Ввиду того, что в качестве программного средства реализации был
выбран программный продукт Microsoft Visual FoxPro 9.0, являющийся
реляционной СУБД, вопрос выбора модели данных для создаваемой БД «Учёт
отпусков» был решён автоматически. Как известно, реляционная модель
данных базируется на следующих элементах: таблицах (отношениях) и связях
между ними. Исходя из этого, в процессе проектирования БД «Учёт отпусков»
был предусмотрен ряд таблиц и связей между ними для обеспечения
реализации предлагаемой модели «как должно быть» процесса учёта отпусков.
Наименования и назначения таблиц представлены в таблице 4.
Таблица 4 – Назначение таблиц базы данных «Учёт отпусков»
п.п.
Наименование
таблицы
Назначение
1
Absence
Хранение всех фактических отсутствий на
рабочем месте сотрудников предприятия,
необходимых для расчёта остатков отпусков.
2
Doc
Хранение заголовков распоряжений на отпуск.
3
DocItem
Хранение деталей распоряжений на отпуск.
4
Holirest
Хранение рассчитанных АСУ «Учёт отпусков»
остатков отпусков на конец каждого
календарного года.
5
Otpusk
Хранение проектов распоряжений на отпуск.
Таблицы Absence и Otpusk спроектированы для взаимодействия между
системами учёта отпусков и учёта рабочего времени.
Для достижения своего прямого назначения каждая из представленных
таблиц была наделена набором полей. Все поля в спроектированных таблицах
разделяются на основные и вспомогательные. Вспомогательные поля не несут
функциональной нагрузки, но необходимы для отслеживания изменений,
производимых пользователями в системе. Поля и их назначения представлены
в таблице 5.
89
Таблица 5 – Назначение полей таблиц базы данных «Учёт отпусков»
п.п.
Наименование
поля
Назначение
Вспомогательные поля, имеющиеся во всех таблицах
1
dt_vvd
Дата создания строки.
2
dt_edt
Дата последнего редактирования строки.
3
user
Последний пользователь, производивший
изменения данных в строке.
Таблица Absence
4
cod_abs
Первичный ключ. Является уникальным
идентификатором строки.
5
cod_work
Внешний ключ. Используется для ссылки на
таблицу Work базы данных «Персонал».
6
cod_super
Внешний ключ. Используется для ссылки на
таблицу Supervises базы данных «Учёт рабочего
времени».
7
cod_tab
Код табельного учёта (код причины отсутствия
на рабочем месте).
8
dt_begin
Дата начала отсутствия на рабочем месте.
9
dt_end
Дата окончания отсутствия на рабочем месте.
10
kol_dn
Общее количество дней отсутствия на рабочем
месте.
11
kol_dn_rab
Общее количество дней отсутствия на рабочем
месте за вычетом праздничных дней,
попадающих в период между полями dt_begin и
dt_end.
Таблица Doc
12
cod_doc
Первичный ключ. Является уникальным
идентификатором строки.
13
cod_work
Внешний ключ. Используется для ссылки на
таблицу Work базы данных «Персонал».
14
doc_type
Тип документа.
15
cod_group
Код группы проектов распоряжений на отпуск.
16
doc_num
Номер распоряжения.
17
dt_doc
Дата составления распоряжения.
18
cod_tab
Код табельного учёта (код причины отсутствия на
рабочем месте).
19
dt_begin
Дата начала отпуска.
Продолжение таблицы 5
20
dt_end
Дата окончания отпуска.
21
reason
Причина аннулирования отпуска.
22
status
Статус распоряжения (актуален, аннулирован).
23
dt_year_begin
Дата начала рабочего года, за который
90
предоставлен отпуск.
24
dt_year_end
Дата окончания рабочего года, за который
предоставлен отпуск.
Таблица DocItem
25
cod_docitem
Первичный ключ. Является уникальным
идентификатором строки.
26
cod_doc
Внешний ключ. Используется для ссылки на
таблицу Doc.
27
itemtype
Тип отпуска (например, основной, без
содержания на полный день и т.д.).
28
dt_begin
Дата начала отпуска.
29
dt_end
Дата окончания отпуска.
30
days
Общее количество дней отпуска.
Таблица Holirest
31
cod_holirest
Первичный ключ. Является уникальным
идентификатором строки.
32
cod_work
Внешний ключ. Используется для ссылки на
таблицу Work базы данных «Персонал».
33
baserest
Остаток основного отпуска.
34
vredrest
Остаток дополнительного отпуска за работу во
вредных условиях труда.
35
dopmoney
Количество дней ежегодного отпуска
компенсированных денежными средствами.
36
nord_new
Количество дней, заработанных за
командировку в районы Крайнего Севера.
Таблица Otpusk
37
cod_otp
Первичный ключ. Является уникальным
идентификатором строки.
38
cod_group
Код группы проектов распоряжений на отпуск.
39
cod_work
Внешний ключ. Используется для ссылки на
таблицу Work базы данных «Персонал».
40
cod_super
Внешний ключ. Используется для ссылки на
таблицу Supervises базы данных «Учёт рабочего
времени».
41
cod_tab
Код табельного учёта (код причины отсутствия
на рабочем месте).
Продолжение таблицы 5
42
dt_beg_osn
Дата начала отпуска.
43
kol_dn_osn
Количество дней основного отпуска.
91
44
kol_dn_vr
Количество дней за работу во вредных условиях
труда.
45
kol_dn_dop
Количество дней по трудовому кодексу РФ.
46
kol_dn_kom
Количество дней по коллективному договору
ОАО «Авиадвигатель».
47
status
Состояние проекта отпуска (подготовлен для
утверждения, утверждён, зарегистрирован в
АСУ «Учёт отпусков»).
48
dt_period1
Дата начала рабочего года, за который
предоставлен отпуск.
49
dt_period2
Дата окончания рабочего года, за который
предоставлен отпуск.
После проектирования таблиц были спроектированы связи между ними.
Физическая модель спроектированной БД представлена на рисунке 37. Данная
модель также включает связанные таблицы баз данных «Персонал» и «Учёт
рабочего времени» для обращения внимания на то, что спроектированная БД
является частью корпоративной информационной системы.
После создания базы данных были созданы все описанные таблицы,
средствами команды CREATE TABLE. Описание команд для создания таблиц
демонстрируется на примере таблицы Absence, все оставшиеся таблицы были
созданы аналогичным способом: CREATE TABLE Absence;
(cod_abs INTEGER PRIMARY KEY AUTOINC NEXTVALUE 1 STEP
1, ;
cod_work INTEGER, ;
cod_super INTEGER, ;
cod_tab VARCHAR(5), ;
dt_begin DATETIME, ;
dt_end DATETIME, ;
kol_dn NUMERIC(3,0), ;
kol_dn_rab NUMERIC(3,0), ;
dt_vvd DATETIME DEFAULT DATETIME(), ;
dt_edt DATETIME, ;
user VARCHAR(30) )

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

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