Подсистема редактирования данных
Редактирование персональной информации будущих абитуриентов осуществляется для правильной работы алгоритма отправки сообщения и корректной работы ЦПК с будущими абитуриентами. Подсистема редактирования данных для обеспечения целостности информации предоставляется возможность изменять значения атрибутов в таблицах БД. Редактирование данных производится с помощью компонент, вынесенных на отдельную форму (редактирование значений атрибутов одной записи) или встроенных непосредственно в табличный отчет (редактирование значения атрибута нескольких записей).
Механизм редактирования данных происходит следующим образом:
· Подсистема проверяет на наличие содержимого в обязательных для заполнения текстовых полях. В случае отсутствия содержимого в обязательных для заполнения текстовых полях пользователю выводится сообщение об ошибке и алгоритм завершается;
· Подсистема проверяет соответствие введенных пользователем данных формату данных атрибутов БД. В случае не соответствия форматов данных пользователю выводится сообщение об ошибке и алгоритм завершается;
· Выполняется обновление информации в таблице БД;
· Если редактирование осуществлялось на отдельной форме, происходит переход на форму просмотра данных;
Подсистема работы с сообщениями
Подсистема работы с сообщениями управляет процессом создания, отправки и просмотра сообщений.
Процесс создания сообщения включает в себя следующие действия: заполнение темы сообщения, текста сообщения, прикрепления файлов к сообщению, выбора адресатов из таблиц возможных абитуриентов.
Отправка сообщения происходит с использованием учетной записи пользователя на почтовом сервере. Параметры соединения с почтовым сервером отражены в таблице базы данных FST_MAILLOGIN. Заведение и удаление параметров авторизации осуществляется администратором базы данных.
Просмотр сообщений происходит с использованием двух сводных таблиц и текстовых полей.
Блок-схема алгоритма добавления адресатов и отправки сообщения представлена на рисунке 4. Блок-схема алгоритма формирования сообщения представлена на рисунке 5.
Рис.4 Блок-схема алгоритма добавления адресата и отправки сообщения
Рис.5 Блок-схема алгоритма формирования сообщения
Описание интерфейса программного обеспечения
Форма авторизации.
Форма авторизации (рис.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;