ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 25.01.2025
Просмотров: 2586
Скачиваний: 3
СОДЕРЖАНИЕ
1.4. Технические требования к программе или программному изделию
3. Выбор языка и среды разработки.
3.1. Выбор компонентной базы для доступа к субд FireBird 2.1
4.1. Таблица персональных данных пользователя
4.2. Таблица параметров авторизации пользователя на почтовом сервере
5. Архитектура программного обеспечения
6. Структура программного обеспечения
6.1. Подсистема администрирования
6.2. Подсистема просмотра данных
6.3. Подсистема редактирования данных
6.4. Подсистема работы с сообщениями
7. Описание интерфейса программного обеспечения
9. Контрольный пример работы программного обеспечения
10. Безопасность и экологичность проектных решений
10.2. Опасные и вредные факторы при работе с пэвм
10.3. Характеристика объекта исследования
10.4. Мероприятия по безопасности труда и сохранению работоспособности
10.4.3 Создание рационального освещения
10.4.5 Обеспечение режимов труда и отдыха
10.4.6 Обеспечение электробезопасности
10.4.7 Защита от статического электричества
10.4.8 Обеспечение допустимых уровней электромагнитных полей
10.4.9 Обеспечение пожарной безопасности
10.4.10. Мероприятия и средства по защите окружающей среды
11. Организационно-экономическая часть
11.1 Технико-экономическое обоснование объекта проектирования.
11.1.2 Состав конструкторской группы и их должностные оклады.
7. Описание интерфейса программного обеспечения
Форма авторизации.
Форма авторизации (рис.4) открывается сразу после входа в программу. На ней указываются имя и пароль пользователя для входа в систему.
Рис.6 Форма авторизации
Нажатие кнопки ОК на форме обрабатывает следующий фрагмент программного кода:
{Обрабатываем нажатие кнопки ОК}
procedure TSecurityForm.BitBtn_okClick(Sender: TObject);
begin
//поиск введенных значений в БД
if not pFIBDataSet.Locate('NAME_USER;password_USER',
VarArrayOf([LabeledEdit_Nick.Text,
LabeledEdit_pass.Text]),
[loCaseInsensitive]) then exit;
DM_Main.NickID:=
pFIBDataSet.FieldByName('ID_User').AsInteger;
DM_Main.NickName:= LabeledEdit_Nick.Text;
SecurityForm.ModalResult:= mrOK;
end;
После нажатия на кнопку ОК происходит открытие панели навигации. Этот процесс обрабатывает следующий фрагмент программного кода:
if (SecurityForm.ShowModal = mrOK) then
begin
// если авторизация успешна, открываем главную форму
MForm.Caption := '...::: '+CPROG_NAME+' ::: ' +
DM_Main.PutBase + ' ::: ' + DM_Main.NickName + '
:::...';
MForm.N1_Abit.Visible := true;
end
else // скрываем пункты меню если авторизация
безуспешна
MForm.N1_Abit.Visible := false;
MForm.N4_Post.Visible := MForm.N1_Abit.Visible;
Панель навигации
Панель навигации (рис.5) служит для удобного перехода между модулями программы. После успешной авторизации открывается с полным набором вкладок: Файл -> Авторизация -> Выход; Абитуриент -> Регистрация -> Просмотр; Почта -> Отправить сообщение -> Просмотреть сообщения; Классификаторы ->Источник.
Рис.7 Панель навигации
Форма выбора мероприятия
Форма выбора мероприятия открывается перед первичным открытием после запуска программы формы регистрации возможного абитуриента или при выборе на панели навигации вкладки Источник. На форме можно добавить новое мероприятие или выбрать уже существующее в базе данных из списка.
Рис.8 Форма выбора источника
Для мониторинга открытия формы перед открытием формы регистрации в программе введена глобальная переменная vSource, в которую сохраняетсяIDмероприятия после выбора его на форме и нажатия на кнопку Выбрать:
{Обрабатываем нажатие кнопки ОК}
procedure TFSetSoure.aOKExecute(Sender: TObject);
begin
if cxLookupComboBox_user.EditingValue <> Null then
DM_Main.vSource := cxLookupComboBox_user.EditingValue
…
За мониторинг отвечает следующий фрагмент кода:
{Открываем форму регистрации возможных абитуриентов}
procedure TMForm.N3Click(Sender: TObject);
begin
// проверяем выбран ли источник данных
if DM_Main.vSource = 0 then
with TFSetSoure.Create(self) do
try
if ShowModal = mrCancel then exit;
finally
free;
end;
Форма регистрации
Форма регистрации возможного абитуриента открывается при выборе на панели навигации вкладки Регистрация. Если это первое открытие формы после запуска программы, то сначала необходимо выбрать источник (мероприятие), от которого будут в дальнейшем зарегистрированы возможные абитуриенты. Повторное открытие формы осуществляется без открытия дополнительных форм. Внешней вид незаполненной формы регистрации показан на рисунке 9.
Рис.9 Форма регистрации
Обязательными для заполнения полями на форме являются поле Фамилия и Имя, они выделены жирным шрифтом. После внесения соответствующих данных в эти поля для осуществления дальнейшей регистрации, в частности внесения интересов возможного абитуриента, необходимо нажать на кнопку регистрации. Рисунок 10 и 11.
Рис.10 Форма регистрации с заполненными обязательными полями
Помимо данных обязательных для заполнения на форме указывается следующая информация: отчество возможного абитуриента, откуда он узнал об Университете, его дата рождения, требуется ли ему общежитие, пол возможного абитуриента, его координаты – домашний телефон, мобильный телефон, email, информацию о его образовании – вид учебного заведения (выбирается из предложенного списка в базе данных), наименование учебного заведения, местоположение учебного заведения. Отмечаются интересы абитуриента: предпочтительная форма оплаты за обучение, направление обучения (техническое или гуманитарное), факультеты и специальности, на которые он хотел бы поступить. Выбор факультета с использованием параметра поиска показан на рисунке 12. Выбор специальности показан на рисунке 13.
Рис.11 Форма регистрации. Ввод интересов абитуриента
Рис.12 Выбор факультета
Рис.13 Выбор специальности
После нажатия на кнопку Готово внесенные данные сохраняются в базе данных и форма регистрации закрывается. После нажатия на кнопку Отмена форма закрывается, а данные не сохраняются. Если до нажатия на кнопку Отмена была нажата кнопка регистрация, то в базе данных будут сохранены сгенерированный уникальный идентификатор и обязательные данные.
В случае, когда возможный абитуриент еще раз приходит на какое-либо мероприятие Университета, в поле IDвносится его уникальный идентификатор, который есть на его Карточке абитуриента, затем нажимается клавишаEnterи все поля формы заполняются данными из БД по этому абитуриенту. И в таблицеFST_PERS_DATAбазы данных значение атрибутаREPEATэтого абитуриента становится равным 1. Кнопка Регистрации становится не активной. Данные можно редактировать, если есть изменения и сохранить, нажав на кнопку Готово. За реализацию описанного функционала отвечает фрагмент программного кода:
{Обрабатываем введение в поле ‘ID’ идентификационный номер возможного абитуриента во время повторного посещения МГОУ}
procedure TFvabit.cxME_ID_AbitKeyUp(Sender: TObject; var
Key: Word;Shift: TShiftState);
begin
if Key = 13 then
begin
cxB_Registr.Visible := false;
pFIBDS_All.Active := false;
pFIBDS_All.ParamByName('ID').AsString :=
cxME_ID_Abit.Text;
pFIBDS_All.Active := true;
pFIBDS_All.Edit;
pFIBDS_All.FieldByName('REPEAT').AsInteger := 1;
end;
end;
Форма просмотра зарегистрированных
На форме просмотра зарегистрированных после ее открытия отображаются параметры информации о возможных абитуриентах, а сами абитуриенты представлены в группах. Используется следующая иерархия групп: по факультетам, по специальностям, по форме оплаты. Справа на панели управления расположены две кнопки для быстрой группировки. На рисунке 14 показана кнопка Сгруппировать и сгруппированные данные после нажатия на эту кнопку. Причем после группировки остается выделенным абитуриент, который был выбран при разгруппированном отображении. Это можно проследить если сравнить формы на рисунках 14 и 15.
Рис.14 Форма просмотра зарегистрированных возможных абитуриентов. Сгруппированные данные
Рис.15 Форма просмотра зарегистрированных возможных абитуриентов. Разгруппированные данные
На рисунке 15 показано как действует кнопка Разгруппировать и выделен возможный абитуриент. Также как и в случае с кнопкой Сгруппировать, если в режиме сгруппированного отображения данных был выделен возможный абитуриент, то после разгруппировки выделение не снимается. За функционал группировки отвечает следующий программный код:
{Обрабатываем нажатие кнопки разгруппировать}
procedure TFView.AagroupExecute(Sender: TObject);
begin
sDBTableView1PAY_FORM_ID.GroupIndex := -1;
sDBTableView1PAY_FORM_ID.Caption := 'Форма оплаты';
sDBTableView1PAY_FORM_ID.Visible := true;
sDBTableView1NAME1.GroupIndex := -1;
sDBTableView1NAME1.Caption := 'Специальность';
sDBTableView1NAME1.Visible := true;
sDBTableView1NAME2.GroupIndex := -1;
sDBTableView1NAME2.Caption := 'Факультет';
sDBTableView1NAME2.Visible := true;
end;
{Обрабатываем нажатие кнопки сгруппировать}
procedure TFView.AGroupExecute(Sender: TObject);
begin
sDBTableView1NAME2.GroupIndex := 0;
sDBTableView1NAME2.Caption := '';
sDBTableView1NAME2.Visible := false;
sDBTableView1NAME1.GroupIndex := 1;
sDBTableView1NAME1.Caption := '';
sDBTableView1NAME1.Visible := false;
sDBTableView1PAY_FORM_ID.GroupIndex := 2;
sDBTableView1PAY_FORM_ID.Caption := '';
sDBTableView1PAY_FORM_ID.Visible := false;
end;
При выборе абитуриента и нажатии на кнопку Редактирование или при двойном щелчке мыши по выбранному абитуриенту открывается форма редактирования возможного абитуриента. Она показана на рисунке 16.
При выборе абитуриента и нажатии на кнопку Создать сообщение открывается форма Сообщение, показанная на рисунке 17.
Кнопка Печать предназначена для предварительного просмотра созданных отчетов таких как: общий отчет, «ваш» отчет, диаграммы. Нажатие на кнопку Печать и открытие предварительного просмотра отчетов обрабатывает следующий программный код:
{Обрабатываем нажатие кнопки Печать -> Название отчета}
procedure TFView.APrintExecute(Sender: TObject);
begin
frxReport_View.Clear;
try
if not frxReport_View.LoadFromFile
(ExtractFilePath(Application.ExeName)+'Название
отчета.fr3') then
MessageBox(0, PansiChar('Не удалось загрузить файл
отчета!'+ #13 + #10 + 'Проверьте наличие файла'),
'Внимание!', MB_ICONSTOP or MB_OK or
MB_TASKMODAL);
finally
frxReport_View.ShowReport(true);
end;
end;

Рис.16 Форма редактирования возможного абитуриента
Рис.17 Форма создания сообщения
Форма редактирования
Форма редактирования (рисунок 16) предназначена для редактирования ранее введенной информации по будущему абитуриенту. Она представляет собой форму регистрации с ограниченным функционалом. На форме не отображается уникальный идентификатор абитуриента, так как его нельзя редактировать. Также нет кнопки Регистрация, так как происходит процесс редактирования, а не регистрации. Кнопка Печать ID не нужна потому, что не для кого печатать Карточку абитуриента.
Форма создания и отправки сообщения
Эта форма (рисунок 17) предназначена для создания сообщения и отправки его выбранным будущим абитуриентам. Форма вызывается с формы просмотра абитуриентов с выбранным адресатом или открывается по вкладке Отправить сообщение на панели навигации пустая. Пользователь пишет тему и текст сообщения, добавляет файлы к сообщению и выбирает абитуриентов из представленного в таблице списка, проставляя напротив каждого из них галочку.
Кнопки управления в блоке со списком абитуриентов предназначены для выделения всех абитуриентов или снятия всех галочек. Программный код:
{Обрабатываем нажатие кнопки Выделить все или Снять выделение}
procedure TFPost.cxBAllClick(Sender: TObject);
var i:integer;
begin
pFIBDS_Post.DisableControls;
pFIBDS_Post.First;
for i := 0 to cxGrid1DBTableView1.
DataController.RecordCount + 1 do
begin
pFIBDS_Post.Edit;
pFIBDS_Post.FieldByName('CB').AsInteger := {если
выделить}1{снять выделение}0;
pFIBDS_Post.Post;
cxGrid1DBTableView1.DataController.RecNo := i;