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

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
73
REFERENCES `citilink`.`pod_proekt` (`id_pod_proekt`)
ON DELETE CASCADE
ON UPDATE CASCADE)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `citilink`.`sotrudnik_pod_proekt`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `citilink`.`sotrudnik_pod_proekt` ;
CREATE TABLE IF NOT EXISTS `citilink`.`sotrudnik_pod_proekt` (
`id_pod_proekt` INT NOT NULL,
`sotrudnik` VARCHAR(8) NOT NULL,
PRIMARY KEY (`id_pod_proekt`, `sotrudnik`),
INDEX `2_idx` (`sotrudnik` ASC) VISIBLE,
CONSTRAINT `30`
FOREIGN KEY (`id_pod_proekt`)
REFERENCES `citilink`.`pod_proekt` (`id_pod_proekt`)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `31`
FOREIGN KEY (`sotrudnik`)
REFERENCES `citilink`.`sotrudnik` (`tabel_nomer`)
ON DELETE CASCADE
ON UPDATE CASCADE)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `citilink`.`comment`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `citilink`.`comment` ;
CREATE TABLE IF NOT EXISTS `citilink`.`comment` (
`id_pod_proekt` INT NOT NULL,
`avtor` VARCHAR(8) NOT NULL,
`date_add_comment` DATETIME NOT NULL,
74
`text_comment` VARCHAR(250) NULL,
PRIMARY KEY (`id_pod_proekt`, `avtor`, `date_add_comment`),
INDEX `1_idx` (`avtor` ASC) VISIBLE,
INDEX `42_idx` (`id_pod_proekt` ASC) VISIBLE,
CONSTRAINT `41`
FOREIGN KEY (`avtor`)
REFERENCES `citilink`.`sotrudnik` (`tabel_nomer`)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `42`
FOREIGN KEY (`id_pod_proekt`)
REFERENCES `citilink`.`pod_proekt` (`id_pod_proekt`)
ON DELETE CASCADE
ON UPDATE CASCADE)
ENGINE = InnoDB;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
-- -----------------------------------------------------
-- Data for table `citilink`.`dostup`
-- -----------------------------------------------------
START TRANSACTION;
USE `citilink`;
INSERT INTO `citilink`.`dostup` (`id_dostup`, `name_dostup`) VALUES (1,
'Администратор');
INSERT INTO `citilink`.`dostup` (`id_dostup`, `name_dostup`) VALUES (2,
'Менеджер');
INSERT INTO `citilink`.`dostup` (`id_dostup`, `name_dostup`) VALUES (3,
'Регистратор');
COMMIT;
-- -----------------------------------------------------
-- Data for table `citilink`.`login_password`
75
-- -----------------------------------------------------
START TRANSACTION;
USE `citilink`;
INSERT INTO `citilink`.`login_password` (`login`, `password_user`) VALUES
('admin', 'admin');
COMMIT;
-- -----------------------------------------------------
-- Data for table `citilink`.`dolgnost`
-- -----------------------------------------------------
START TRANSACTION;
USE `citilink`;
INSERT INTO `citilink`.`dolgnost` (`id_dolgnost`, `name_dolgnost`) VALUES
(1, 'админ');
COMMIT;
-- -----------------------------------------------------
-- Data for table `citilink`.`sotrudnik`
-- -----------------------------------------------------
START TRANSACTION;
USE `citilink`;
INSERT INTO `citilink`.`sotrudnik` (`tabel_nomer`, `family`, `first_name`,
`second_name`, `phone`, `login`, `dostup`, `id_dolgnost`) VALUES ('админ',
'админ', 'админ', 'админ', 'админ', 'admin', 1, 1);
COMMIT;
2.3.3 Структурная схема пакета (дерево вызова программных модулей)
Разработка программного обеспечения осуществлялась, в два этапа:
проектирование логики программ, представляющее определение
состава программных модулей, выделение классов модулей и установление связей
между ними;
разработка кодов программ и их отладка, выполнение которой в
сильной степени зависит от используемых средств разработки ПО.
76
Анализ состава функций, которые должны выполняться в ИС и структуры
сценария диалога позволил определить состав программных модулей и связи
между ними, отраженные в схеме взаимосвязи на рис. 2.6.
Были выделены управляющие программные модули, призванные выводить
на экран кадры меню и передавать управление другим модулям в зависимости от
того, какой пункт меню выбирает пользователь
Второй класс составляют модули, выполняющие функции ввода конкретных
видов первичных документов, просмотра и корректировки, печати первичных
документов, обработки и выдачи на просмотр и печать результатных документов,
загрузки, актуализации и выдачи на печать справочников и справок.
ПМ загрузки
главного меню
ПМ
добавления
данных
ПМ
редактирования
данных
ПМ запросов
к БД
Все
проекты, по
которым
работает
сотрудник
ПМ
должности
ПМ
сотрудники
ПМ проекты ПМ подпроекты
ПМ работы с
подпроектом
Все
документы
по проекту
ПМ
должности
ПМ
сотрудники
ПМ проекты ПМ подпроекты
ПМ работы с
подпроектом
Рис. 2.6 Дерево вызова программных модулей
2.3.4 Описание программных модулей
В программе было разработано 10 программных модулей
Описание данных модулей приведено в таблице 2.13
77
Таблица 2.13
Таблица описания функций модулей
п/п
Наименование модуля
Функции модуля
1
datamodule.pas
для разделения логики обработки данных (бизнес-
логики) и логики внешнего представления данных -
интерфейса. В набор DataModule выносится весь
доступ к данным, а интерфейсная часть показывает
пользователю информацию, предоставляемую
DataModule, при использовании такой схемы более
просто перейти к многозвенной архитектуре
2
form__main.pas
выводит на экран главную форму программы и
меню
3
Form_idetifikacia.pas
выводит на экран форму входа в программу
4
form_sotrudnik.pas
выводит на экран форму добавления сотрудника в
БД
5
form_proekt.pas
выводит на экран форму добавления данных
проекта в БД
6
form_dolgnost.pas
выводит на экран форму добавления данных
должности в БД
7
Form_zapros1.pas
выводит на экран форму отчета «Все проекты, по
которым работает сотрудник»
8
Form_zapros2.pas
выводит на экран форму отчета «Все документы
по проекту»
9
Form_podproekt.pas
выводит на экран форму добавления подпроекта
78
п/п
Наименование модуля
Функции модуля
10
Form_addpodproekt.pas
выводит на экран форму добавления
данных(сообщений и документов) в подпроект
Алгоритм добавления проекта в модуле form_proekt.pas показан на рис. 2.7.
79
Начало
Вход в систему
Выбираем пункт
меню «Проекты»-
«Новый проект»
Вводим данные
проекты
Данные веденны
верно?
Сообщение об ошибке
Данные не стираются
Данные в БД не добавляются
Добавление
данных в БД
Чистка
полей ввода
Конец
Да
Нет
Рис. 2.7. Алгоритм добавления проекта в БД
80
2.4 Контрольный пример реализации проекта и его описание
Для работы программы необходимо настроить пользовательский DSN.
1. Для этого открываем Пуск-Панель управления.
2. Выбираем Администрирование
3. Открываем «Источники данных»
4. в открывшемся окошке ( Рис. 2.8) выбираем «Добавить»
Рис. 2.8 - Администратор источников данных ODBC
5. в открывшемся окне ( рис. 2.9) выбираем «MySQL ODBC 8.0 Unicode
driver «и нажимаем «Готово»
81
Рис.2.9 - Создание нового источника данных
6. В открывшемся окошке( рис.2.10) в поле «Data Sourse Name» вводим
«citilink». Обязательно так. В поле TCP/IP Server вводим ip-адрес сервера, на
котором расположен сервер MySQL. В поле User вводим имя пользователя. В поле
Password – пароль. В поле Database выбираем «citilink».
82
Рис.2.10 - Установка драйвера ODBC для MySQL
7. Нажимаем «Test». Откроется окно, показанное на рис. 2.11.
Рис.2.11 - Результат теста
8. Нажимаем «ОК».
ПК настроен для работы с программой.
При запуске программы первым открывается окно идентификации в
программе (Рисунок. 2.12).
При первом запуске программы в базе данных есть пользователь admin с
паролем admin. У данного пользователя права администратора в программе.
В случае неверно введенных данных, появиться сообщение – «Неправильно
введен логин или пароль».
Рис. 2.12 - Окно входа в программу
При верном вводе логина и пароля откроется главное окно программы
(Рисунок. 2.13.). Из данного окна доступны все функции программы.
Каждому пользователю в программе предоставляется определенный уровень
доступа. Всего три уровня доступа в программе– администратор, регистратор,
исполнитель.

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

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