Диплом: Автоматизация и обеспечение информационной безопасности делопроизводства в ООО МКО "ОКСУС"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
79
Продолжение таблицы 11
Область
видимости
Поле/метод
Описание
public
procedure CreateYearReport
(Date : TDateTime);
Метод для создания годового
отчета (доступен
пользователям из группы
«Администраторы»).
procedure SetDates (Date1,
Date2 : TDateTime);
Метод, необходимый для
создания отчетов за период
(доступен пользователям из
группы «Администраторы»).
procedure DeleteAllRequest
(Psw : string);
Метод очистки базы данных
(доступен пользователям из
группы «Администраторы»).
Перед выполнением очистки
выполняется проверка
пользовательского пароля.
function GetDate : TDateTime;
Метод получения системного
времени сервера (доступен
всем пользователям
прошедшим аутентификацию).
function
GetCurrentUserTypeKey :
Integer;
Метод получения
идентификатора пользователя
(доступен всем пользователям
прошедшим аутентификацию).
function GetRecommendation
(RequestID : Integer) : String;
Метод получения рекомендации
по указанному идентификатору
заявки (доступен
пользователям из группы
«Администраторы»).
Модуль выдачи рекомендаций. Данный модуль создается при инициализации
модуля управления сервером и взаимодействует с базой данных. Служит для оценки
выбранной заявки и выдачи рекомендации по её выполнению.
В состав модуля входит компонент Request (класс TRequest) внутри которого
реализован ряд методов для быстрого подсчета количества однотипных заявок и их
стоимости за различные периоды времени.
Модуль описания заявки. Данный модуль создается при инициализации
модуля выдачи рекомендаций «TRecommendationController» и служит для
получения данных об интересующей нас заявке и расчете показателей,
характеризующих её.
80
Таблица 12
Описание класса «TRequest»
Область
видимости
Поле/метод
Описание
private
Loaded : Boolean
Указывает на то, что в
экземпляре класса уже
загружены данные об
интересующей нас заявке.
Connection : TADOConnection;
Ссылка на компонент
соединения с базой
данных.
Request : TADOQuery;
Запрос к базе данных,
который содержит
данные, о загруженной
заявке.
function GetQuery (SQL : String) :
TADOQuery;
Функция для получения
результатов
произвольного запроса к
БД.
procedure TestLoaded;
Функция создает
исключение, если заявка
не была загружена.
public
constructor Create (Connection :
TADOConnection);
Конструктор класса.
destructor Destroy;
Деструктор класса.
procedure Load (RequestID : Integer);
Метод для загрузки
информации по заданной
заявке.
procedure Clear;
Метод для очистки
данных.
function GetDefectID : Integer;
Метод получения кода
неисправности
загруженной заявки.
function GetUserID : Integer;
Метод получения кода
пользователя, который
добавил заявку.
function GetDefectCountForm6Month :
Integer;
Метод вычисления
количества заявок за
шесть месяцев (от
текущей даты), тип
которых соответствует
типу загруженной заявки.
function GetDefectCountForm12Month
: Integer;
Метод вычисления
количества заявок за
двенадцать месяцев (от
текущей даты), тип
которых соответствует
типу загруженной заявки.
81
Клиент. Основой клиентской части является модуль TdmData. Модуль
выполняет следующие функции: соединение с сервером; управление
предоставленными сервером наборами данных; получение доступа к
функциональности сервера (создание проекции интерфейса взаимодействия
«TdssmRemoteData»).
Для подключения к серверу используется компонент SQLConnection. В
качестве параметров подключения указываем: тип подключения (DataSnap); IP-
адрес сервера; порт подключения (5000); протокол взаимодействия (в нашем случае
TCP); логин и пароль пользователя.
Для доступа к функциональности и данным сервера используется
специальный компонент DSProviderConnection, который необходим для
подключения клиентского набора данных (TClientDataSet) к провайдеру набора
данных (TDataSetDrovider).
После успешного подключения к серверу выполняется активация доступных
наборов данных (открытие набора данных).
После открытия набора пользователь может редактировать набор данных
через визуальные компоненты (такие как TDBGrid, TDBEdit, TDBMemo, TDBImage,
TDBNavigator и т.д.), разработанные специально для работы с базами данных.
Клиент также получает доступ к интерфейсу взаимодействия сервера
TdssmRemoteData.
Рис. 22 Схема модуля TdmData
82
Таблица 13
Описание класса «TdmData»
Поле/метод
Описание
SQLConnection: TSQLConnection;
Компонент соединения с сервером
приложений;
DSProviderConnection:
TDSProviderConnection;
Компонент соединения
cdsUserInfo: TADOQuery;
Клиентский набор данных «Информация
о пользователе».
dsUserInfo: TDataSetProvider;
Посредник набора данных cdsUserInfo.
cdsFunction: TADOTable;
Клиентский набор данных «Должность».
dsFunction: TDataSetProvider;
Посредник набора данных cdsFunction.
dsDefect: TDataSetProvider;
Посредник набора данных cdsDefect.
cdsDepartment: TADOTable;
Клиентский набор данных «Отделение».
dsDepartment: TDataSetProvider;
Посредник набора данных
cdsDepartment.
cdsUserType: TADOTable;
Клиентский набор данных «Тип
пользователя».
dsUserType: TDataSetProvider;
Посредник набора данных cdsUserType.
cdsUser: TADOTable;
Клиентский набор данных
«Пользователь».
dsUser: TDataSetProvider;
Посредник набора данных cdsUser.
cdsOpenRequest: TADOTable;
Клиентский набор данных «Открытые
заявки».
dsOpenRequest: TDataSetProvider;
Посредник набора данных
cdsOpenRequest.
cdsClosedRequest: TADOTable;
Клиентский набор данных «Закрытые
заявки».
dsClosedRequest: TDataSetProvider;
Посредник набора данных
cdsClosedRequest.
cdsArchive: TADOTable;
Клиентский набор данных «Архив».
dsArchive: TDataSetProvider;
Посредник набора данных cdsArchive.
cdsParams: TADOTable;
Клиентский набор данных «Параметры».
dsParams: TDataSetProvider;
Посредник набора данных cdsParams.
cdsDefectCount: TADOTable;
Клиентский набор данных «Количество
неисправностей».
dsDefectCount: TDataSetProvider;
Посредник набора данных
cdsDefectCount.
cdsYearReport: TClientDataSet;
Клиентский набор данных «Годовой
отчет».
Блок-схема модуля построения списка заявок приведена на рисунке 22.
83
Цикл по датам m=1;
m<=12; m++
Цикл по клиентам,
подавшим заявку
j=1; j<=COUNT(KLIENT);
j++
Создание
представления для
списка заявок
SPISZAYAV
Чтение i-й записи
представления
SPISZAYAV
Установка указателя
в представлении
SPISZAYAV на
первую запись
Klient[i].employee_
id=Klient[j].employee_id;
Klient[i].paymonth=m
Да
Нет
А
А
i=i+1
i=j+1;
Сортировка
SPISZAYAV по
возрастанию
приоритета
Начало
Установка
соединения с
сервером БД
Фильтр таблицы ZAV
по условию
(date=today)
Открытие таблиц
KLIENT, USER,
USLUGA, PRIOR
Б
Б
Конец цикла по
заявкам
Конец цикла по
клиентам
Удаление i-й записи
из представления
Конец цикла по
клиентам
Цикл по причинам
p=1; p<=9; p++
Цикл по клиентам ,
j=1; j<=COUNT(klient);
j++
Фильтр
представления
SPISZAYAV по
условию prichina=p
П4=0
П1=0;
П2=0;
П3=0
П4=П4+ Klient[j].summ
Внесение
Klient[j].summ в
столбец макета
отчета
Расчет итоговых
показателей отчета
В
Klient[j].summ=
Klient[j].summ+
Klient[i].summ
Конец цикла по
причинам
Внесение
рассчитанного
показателя П4 в
макет отчета
П5=П6+П4
В
Конец цикла по
датам
Цикл по сотрудникам,
j=1; j<=COUNT(Sotrudn);
j++
Цикл по датам m=1;
m<=12; m++
Фильтр представления
SOTRUDN по условию
employee_id=
Sotrudn[j].employee_id
П10=0
П7=П7+ Sotrudn[j].summ
Конец цикла по
сотрудникам
Внесение
рассчитанного
показателя П7 в
макет отчета
Конец
Закрытие таблиц,
уничтожение
представления
SPISZAYAV
Рис. 23 Блок-схема модуля построения списка заявок на кредит
84
2.4. Контрольный пример реализации проекта и его описание
Программу можно запустить от имени администратора и пользователя.
После запуска программы на экране монитора появится окно входа в
программу, с которого и начинается её работа. В открывшемся окне входа
необходимо ввести имя пользователя и пароль.
Рис. 24 Авторизация пользователя
После авторизации откроется главное меню программы в соответствии с
правами пользователя.
Главное меню учетной записи администратора содержит кнопки:
1. Вход – для смены учетной записи пользователя;
2. Создать заявку – для подачи заявки;
3. Данные – для заполнения справочников;
4. Заявки – для просмотра и закрытия заявок;
5. Закрытые – для просмотра закрытых заявок;
6. Архивдля просмотра заявок, отправленных в архив;
7. Обновить – для обновления списка заявок, если программа долго висит
в области уведомлений;
8. Пользователь – для отображения информации о пользователе,
прошедшем авторизацию;
9. Показатели – для отображения графиков и диаграмм;
10. Отчеты – для формирования отчетов.
85
Рис. 25 Главное меню администратора
Основное меню состоит из 2 вкладок - система и окно.
Система реализует следующие функции: Вход, Создать заявку на кредит,
Данные, Заявки, Закрытые, Архив, Пользователь.
Окно реализует следующие функции: Закрыть, Каскад, Горизонтальное
выравнивание, Вертикальное выравнивание, «Свернуть» все, «Упорядочить».
Для отправки заявки на исполнение нужно нажать кнопку ОК (после
заполнения всех полей).
86
Рис. 26 Список заявок
В главном меню администратора приведены основные кнопки для
осуществления работы системы – добавление заявки на кредит, получение списка
заявок, просмотр архива заявок, просмотр данных о пользователе и результатов
расчета показателей. Также администратор заполняет справочники.
Рис. 27 Справочник Статус
87
Рис. 28 Справочник Пользователи
Рис. 29 Справочник отделений
88
Рис. 30 Справочник должностей
Для добавления пользователя необходимо нажать на панели инструментов
«+» - откроется окно добавления данных пользователя.
Рис. 31 Данные пользователя

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

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