Диплом: Разработка информационной системы автоматизации работы центра занятости

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
67
В модуле для осуществления просмотра и редактирования перечня
соискателей предусмотрено меню, имеющее следующую структуру:
- Навигация:
- В начало;
- Предыдущая;
- Следующая;
- В конец;
- Редактирование:
- Добавить;
- Править;
- Удалить;
- Выход.
Добавление и редактирование информации о соискателях для
обеспечения надежности осуществляется специальной форме «Карточка
соискателя», которая вызывается по выбору пункта меню «Добавить» или
«Править» (рисунок №14).
Рисунок №14. Форма «Карточка соискателя»
68
По выбору пункта меню «Добавить» для обеспечения надежности
работы программы выполняются следующие операции:
 по событию BeforeInsert вычисляется уникальный код соискателя:
procedure Tdm.tbPersBeforeInsert(DataSet: TDataSet);
begin
if tbPers.FindLast then
Kod:=tbPersKodPers.AsInteger+1
else
Kod:=1;
end;
 по событию AfterInsert уникальный код заносится в таблицу и
вызывается форма «Карточка соискателя»:
procedure Tdm.tbPersAfterInsert(DataSet: TDataSet);
begin
tbPersKodPers.Value:=Kod;
if frWPers.ShowModal=mrOk then
begin
if tbProfPers.State in [dsEdit, dsInsert] then
tbProfPers.Post;
tbPers.Post;
end
else
tbPers.Cancel;
end;
По выбору пункта меню «Править» для обеспечения надежности работы
программы по событию AfterEdit выполняются следующие операции:
69
procedure Tdm.tbPersAfterEdit(DataSet: TDataSet);
begin
Kod:=tbPersKodPers.AsInteger;
if frWPers.ShowModal=mrOk then
begin
if tbProfPers.State in [dsEdit, dsInsert] then
tbProfPers.Post;
tbPers.Post;
end
else
tbPers.Cancel;
end;
Для обеспечения надежности работы программы ввод даты рождения
выполняется в специальном компоненте TDateTimePicker, а также выполняются
следующие операции:
 по событию FormShow формы «Карточка соискателя»:
procedure TfrWPers.FormShow(Sender: TObject);
begin
dm.tbProfPers.Filtered:=false;
dm.tbProfPers.Filter:='KodPers='+IntToStr(Kod);
dm.tbProfPers.Filtered:=true;
if not(dm.tbPersDateR.AsString = '') then
DateR.DateTime:=dm.tbPersDateR.AsDateTime;
end;
 по событию FormClose формы «Карточка соискателя»:
procedure TfrWPers.FormClose(Sender: TObject; var Action: TCloseAction);
70
begin
dm.tbProfPers.Filter:='';
end;
 по событию нажатия кнопки «Сохранить ввод» формы «Карточка
соискателя» осуществляется контроль ввода обязательных для
заполнения полей, в случае если какое либо поле не заполнено
выдается сообщение и курсор перемещается в не заполненное поле:
procedure TfrWPers.btnOkEnter(Sender: TObject);
begin
if DBEdit1.Text='' then
begin
ShowMessage('Не введена фамилия');
DBedit1.SetFocus;
end;
if DBEdit2.Text='' then
begin
ShowMessage('Не введено имя');
DBedit2.SetFocus;
end;
if DBEdit3.Text='' then
begin
ShowMessage('Не введено отчество');
DBedit1.SetFocus;
end;
if dm.tbProfPersKodProf.AsInteger=0 then
begin
71
ShowMessage('Не определена профессия');
DBGrid1.SetFocus;
end;
if dm.tbPersKodObr.AsInteger=0 then
begin
ShowMessage('Не определено образование');
DBLook1.SetFocus;
end;
end;
Работа модуля будет завершаться нажатием кнопки «Выход» или
средствами Windows для закрытия окна, например Alt+F4.
8. Модуль «Вакансии»
Входные данные
Входными данными модуля являются данные о вакансиях:
- предприятие:
- наименование (символьное),
- почтовый адрес (символьное),
- телефон (символьное),
- должность (символьное),
- количество вакансий.
Выходные данные
Выходными данными является новая запись в перечне вакансий. Для
каждой новой записи в перечне вакансий автоматически формируется
уникальный код для идентификации вакансии. Данный код используется во всех
таблицах, содержащих информацию о подборе вариантов.
Методы решения
Модуль «Вакансии» запускается выбором пункта меню «Учет |
Вакансии».
72
Рисунок №15. Форма модуля «Вакансии»
В данном модуле обеспечен ввод сведений обо всех известных вакансиях
(рисунок №15). Уникальный код вакансии формируется автоматически. Для
обеспечения надежности функционирования модуля применяется принцип
«защитного программирования», когда пользователь вводит все, что хочет, а
программа принимает только правильные данные. Это принцип обеспечен
применением компонента DBLookupComboBox для обеспечения ввода выбором
вакантной должности и предприятия (Рисунок №16), а также разрешением ввода
только цифр в поле «количество вакансий».
procedure Tdm.tbVakansAfterInsert(DataSet: TDataSet);
begin
if frVakans.Showing then
tbVakansKodP.Value:=tbFirmaKodP.AsInteger;
end;
73
Рисунок №16. Ввод выбором вакантной должности
В модуле для осуществления просмотра и редактирования перечня
вакансий предусмотрено меню, имеющее следующую структуру:
- Навигация:
- В начало;
- Предыдущая;
- Следующая;
- В конец;
- Редактирование:
- Добавить;
- Править;
- Удалить;
- Выход.
Работа модуля будет завершаться нажатием кнопки «Выход» или
средствами Windows для закрытия окна, например Alt+F4.
9. Модуль «Варианты трудоустройства»
Входные данные
Входными данными модуля является код регистрации претендента,
выбранный в перечне претендентов модуля «Претенденты».
74
Выходные данные
Выходными данными являются записи в таблице «Podbor» базы данных.
Уникальность каждой записи обеспечивается ключом, который включает в себя
код регистрации сотрудника и код идентификации вакансии.
Методы решения
Модуль «Варианты трудоустройства» запускается выбором пункта меню
«Подбор | Вариантов трудоустройства» (рисунок №17).
Рисунок №17. Форма модуля «Варианты трудоустройства»
На основании регистрационного кода претендента для осуществления
подбора выбираются следующие данные:
- образование,
- фамилия, имя, отчество, дата рождения,
- перечень профессий.
Подбор вариантов трудоустройства осуществляется перебором вакансий
и сравнением ограничений накладываемых на будущего сотрудника, например
возраст, образование, с индивидуальными данными претендента, например, дата
75
рождения, образование, перечень профессий, при совпадении условий подбора в
результирующую таблицу «Podbor» добавляется запись, содержащая код
регистрации претендента, код идентификации вакансии и текущую дату.
Подбор вариантов трудоустройства осуществляется по выбору пункта
меню «Подбор» (N11). Ниже приведен программный код реализации функции
подбора вакансий. Если подходящих вакансий не будет найдено, выдается
сообщение «Нет вариантов трудоустройства».
procedure TfrVar.N11Click(Sender: TObject);
begin
KolVar:=0;
Kod2:=dm.tbPersKodPers.AsInteger;
dm.tbProfPers.Filter:='KodPers='+IntToStr(Kod2);
B2:=dm.tbProfPers.FindFirst;
if dm.tbVakans.FindFirst then
begin
while not(dm.tbVakans.Eof) do
begin
Kod1:=dm.tbVakansKodV.AsInteger;
dm.ProfDolg.Filter:='KodDolg='+dm.tbVakansKodDolg.AsString;
B1:=dm.ProfDolg.FindFirst;
B3:=not B1;
if B1 and B2 then
begin
dm.tbProfPers.First;
while not(dm.tbProfPers.Eof or B3) do
begin
while not(dm.ProfDolg.Eof or B3) do
76
begin
B3:=(dm.ProfDolgKodProf.AsInteger=
dm.tbProfPersKodProf.AsInteger);
dm.ProfDolg.Next;
end;
dm.tbProfPers.Next;
end;
end;
if B3 then
begin
if dm.tbVar.FindKey([Kod1,Kod2]) then
begin
dm.tbVar.Edit;
dm.tbVar['DateW']:=Date;
dm.tbVar.Post;
end
else
dm.tbVar.InsertRecord([Kod1,Kod2,Date,Date]);
Inc(KolVar);
end;
dm.tbVakans.Next;
end;
end;
if KolVar=0 then
ShowMessage('Нет вариантов трудоустройства');
end;

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

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