Статья: Разработка приложения представляющего собой базу данных о сотрудниках

Оглавление

Введение

Назначение и область применения

Технические характеристики

Разработка программы

Специфика программы

Текст программы

Описание программы

Тестирование программы

Внедрение

Литература

Введение

Задание на курсовую работу по дисциплине: «Программирование на языке высокого уровня».

Тема: Разработка приложения, представляющего собой базу данных о сотрудниках.

Условие задачи:

Программный продукт «Автоматизированная система начальника отдела кадров учреждения» предназначен для автоматизации процесса заполнения документации на сотрудников и работников учреждения, хранения, обработки информации, поиска информации по задаваемым критериям, получения отчета по поиску и вывод его на печать.

Задание выдано: _______________

Назначение и область применения

Программный продукт «Автоматизированная система начальника отдела кадров учреждения» предназначен для автоматизации процесса заполнения документации на сотрудников и работников учреждения, хранения, обработки информации, поиска информации по задаваемым критериям, получения отчета по поиску и вывод его на печать.

Программа имеет широкую область применения, призвана освободить работников отдела кадров от рутиной работы по заполнению форм различного рода, содержащих информацию о сотрудниках и работниках предприятия и выполнению поиска необходимой информации.

Поскольку ставилась задача разработать приложение для Windows, то и использовать программу можно только под управлением Windows.

Технические характеристики

В условие задачи «Автоматизированная система начальника отдела кадров учреждения» указывается на необходимость использования средства связи с базами данных и саму базу данных для хранения информации о сведеньях, о сотрудниках, поэтому нужно в постановку задачи включить определения структуры и организации базы данных. В задаче также требуется организовать ввод данных, редактирование, поиск информации о сотрудниках и вывод её на печать. Также требовалось организовать дружественный пользовательский интерфейс и обеспечить стабильное выполнение всех функций программы, связанных как непосредственно с управлением данными, хранящимися в базе данных, так и с сервисными функциями.

В программе решаются три подзадачи:

Внесение данных по сотруднику в базу данных (рис.1);

Поиск информации о сотруднике в базе данных, с возможностью составления отчёта (рис.2);

Редактирование информации о сотруднике в базе данных (рис3);

Рис. 1.Схема внесения данных

Рис.2. Схема поиска информации о сотруднике

Рис.3. Схема редактирование информации о сотруднике

Выходные данные представляют собой результаты обработки (добавления, изменения) данных из БД. При получении конечных (выходных данных), в основном, переменные не используются, а ведется непосредственная обработка значений в базе данных. Все эти данные имеют различный формат и тип. Полученные данные сохраняются в таблицах базы данных. Кроме того, входными данными являются условия формирования запросов, поиска и отчетов, а выходными данными являются соответствующие результаты выполнения этих функций программы. К выходным данным так же относятся сформированные печатные формы документов (таб.1).

Таблица 1

Структура главных таблиц

Список полей

Тип поля

Таблица «Общие сведения»

Фамилия

Текстовый

Имя

Текстовый

Отчество

Текстовый

Гражданство

Текстовый

Семейное положение

Текстовый

Пол

Текстовый

Номер страхового свидетельства

Числовой

Дата выдачи страхового свидетельства

Дата

Номер медполиса

Числовой

Компания выдавшая медполис

Текстовый

Адрес компании выдавшей медполис

Текстовый

Таблица «Паспорт»

Серия

Числовой

Номер

Числовой

Выдан

Текстовый

Зарегистрирован

Текстовый

По адресу

Текстовый

Дата рождения

Дата

Место рождения

Текстовый

Индекс

Числовой

Адрес проживания

Текстовый

Телефон

Текстовый

Выход на пенсию

Дата

Таблица «Образование»

Код

Счетчик

Учебное заведение

Текстовый

Наименование заведения

Текстовый

Вид обучения

Текстовый

--PAGE_BREAK----PAGE_BREAK--

AutoScroll — False;

BorderIcons — biSystemMenu,biMinimize;

ClientHeight — 694;

ClientWidth — 1024;

Color — clBtnFace;

Font — Tfont [MS Sans Serif];

FormStyle — fsMDIForm;

Menu — MainMenu1;

OldCreateOrder — False;

Position — poScreenCenter;

Scaled — False;

Visible — True;


--PAGE_BREAK----PAGE_BREAK--

Color — clBtnFace;

Font — Tfont [MS Sans Serif];

OldCreateOrder — False;

Position — poScreenCenter;

--PAGE_BREAK----PAGE_BREAK----PAGE_BREAK--

ClientWidth — 1024;

Color — clBtnFace;

Font — Tfont [MS Sans Serif];

OldCreateOrder — False;

Position — poScreenCenter;

--PAGE_BREAK----PAGE_BREAK----PAGE_BREAK--

OldCreateOrder — False;

Position — poScreenCenter;


--PAGE_BREAK----PAGE_BREAK--

Определяет функциональность для формы №7

Unit8. pas

Файл программного модуля для формы №8

Определяет функциональность для формы №8

Unit9. pas

Файл программного модуля для формы №9

Определяет функциональность для формы №9

Unit10. pas

Файл программного модуля для формы №10

Определяет функциональность для формы №10

Unit1. dfm

Файл формы №1

Содержит список свойств всех компонентов, включенных в форму №1

Unit2. dfm

Файл формы №2

Содержит список свойств всех компонентов, включенных в форму №1

Unit3. dfm

Файл формы №3

Содержит список свойств всех компонентов, включенных в форму №1

Unit4. dfm

Файл формы №4

Содержит список свойств всех компонентов, включенных в форму №1

Unit5. dfm

Файл формы №5

Содержит список свойств всех компонентов, включенных в форму №1

Unit6. dfm

Файл формы №6

Содержит список свойств всех компонентов, включенных в форму №1

Unit7. dfm

Файл формы №7

Содержит список свойств всех компонентов, включенных в форму №1

Unit8. dfm

Файл формы №8

Содержит список свойств всех компонентов, включенных в форму №1

Unit9. dfm

Файл формы №9

Содержит список свойств всех компонентов, включенных в форму №1

Unit10. dfm

Файл формы №10

Содержит список свойств всех компонентов, включенных в форму №1

Unit1. dcu

Объектный файл для Unit1. pas

Откомпилированная версия Unit1. pas

Unit2. dcu

Объектный файл для Unit2. pas

Откомпилированная версия Unit2. pas

Unit3. dcu

Объектный файл для Unit3. pas

Откомпилированная версия Unit3. pas

Unit4. dcu

Объектный файл для Unit4. pas

Откомпилированная версия Unit4. pas

Unit5. dcu

Объектный файл для Unit5. pas

Откомпилированная версия Unit5. pas

Unit6. dcu

Объектный файл для Unit6. pas

Откомпилированная версия Unit6. pas

Unit7. dcu

Объектный файл для Unit7. pas

Откомпилированная версия Unit7. pas

Unit8. dcu

Объектный файл для Unit8. pas

Откомпилированная версия Unit8. pas

Unit9. dcu

Объектный файл для Unit9. pas

Откомпилированная версия Unit9. pas

Unit10. dcu

Объектный файл для Unit10. pas

Откомпилированная версия Unit10. pas

Саша

Файл базы данных Access

Содержит информацию о сотрудниках

Текст программы

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Menus, ActnList, StdActns, ShellAPI, ComCtrls;

type

TForm1 = class(TForm) MainMenu1: TMainMenu; PopupMenu1: TPopupMenu;

ActionList1: TActionList; Open: TAction; N3: TMenuItem; N4: TMenuItem;

N5: TMenuItem; N6: TMenuItem; N7: TMenuItem; N12: TMenuItem;

Pasport: TAction; Obrazov: TAction; Rabota: TAction; VSY: TAction;

Poisc: TAction; N1: TMenuItem; N2: TMenuItem; N8: TMenuItem; StatusBar1: TStatusBar; procedure N4Click(Sender: TObject); procedure OpenExecute(Sender: TObject); procedure PoiscExecute(Sender: TObject); procedure N2Click(Sender: TObject); procedure N8Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure N1Click(Sender: TObject); private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit2, Unit3, Unit4, Unit5, Unit6, Unit7, Unit8;

{$R *. dfm}

procedure TForm1. N4Click(Sender: TObject);

begin

Close; // закрывает программу

end;

procedure TForm1. OpenExecute(Sender: TObject);

begin

form2: =tform2. Create(self); // открывает форму «Сведения о сотрудниках»

form2. showmodal;

end;

procedure TForm1. PoiscExecute(Sender: TObject);

begin

form7: =tform7. Create(self); // открывает форму «Поиск»

form7. showmodal;

end;

procedure TForm1. N2Click(Sender: TObject);

begin

form8: =tform8. Create(self); // открывает форму «Редактировать»

form8. showmodal;

end;

procedure TForm1. N8Click(Sender: TObject);

begin

    продолжение
--PAGE_BREAK--

ShellAbout(Form1. Handle, 'Картотека работников',

'Разработал студент 2 курса Рыженков А.В. ' + #13#10 +

'специальность«Информатика и ВТ»', Application. Icon. Handle);

end;

procedure TForm1. FormCreate(Sender: TObject);

begin

statusbar1. Panels. Items [1]. Text: =datetostr(date);

end;

procedure TForm1. N1Click(Sender: TObject);

begin

aPPLICATION. HelpFile: ='HELP. HLP';

APPLICATION. HelpCommand(HELP_FINDER,0);

end;

end.

unit Unit2;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, DB, ADODB, Grids, DBGrids, ExtCtrls, DBCtrls, StdCtrls, Mask,

ComCtrls;

type

TForm2 = class(TForm)

Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel;

Label6: TLabel; Label7: TLabel; Label8: TLabel; Label10: TLabel; Label11: TLabel; Label12: TLabel; DBEdit1: TDBEdit; DBEdit2: TDBEdit; DBEdit3: TDBEdit; DBEdit4: TDBEdit; DBEdit5: TDBEdit; DBEdit9: TDBEdit; DBEdit10: TDBEdit;

Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton;

Button5: TButton; Button6: TButton; DataSource1: TDataSource;

Table1: TADOTable; DataSource2: TDataSource; Table6: TADOTable; DBLookupComboBox1: TDBLookupComboBox; Table7: TADOTable; DataSource3: TDataSource; DBLookupComboBox2: TDBLookupComboBox; DateTimePicker1: TDateTimePicker; MaskEdit1: TMaskEdit; procedure Button6Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject);

procedure FormCreate(Sender: TObject); procedure dbedit1KeyPress(Sender: TObject; var Key: Char); procedure dbedit2KeyPress(Sender: TObject; var Key: Char); procedure DBEdit3KeyPress(Sender: TObject; var Key: Char);

procedure DBEdit4KeyPress(Sender: TObject; var Key: Char);

private

{ Private declarations }

public

{ Public declarations }

end; var

Form2: TForm2;

implementation

uses Unit3, Unit4, Unit5, Unit6;

{$R *. dfm}

procedure TForm2. Button6Click(Sender: TObject);

begin

Close; // закрываетформу"Свединияосотруднике"

end;

procedure TForm2. Button1Click(Sender: TObject);

begin

form3: =tform3. Create(self); // запускаетформу"Паспорт"

form3. showmodal;

end;

procedure TForm2. Button2Click(Sender: TObject);

begin

unit4. Form4. Edit1. Text: =table1. Fields. Fields [0]. AsString;

/ / form4. edit1. text: =table1. fieldbyname('код_с'). asstring;

/ / form4: =tform4. Create(self); // запускает форму «Образование»

form4. showmodal;

end;

procedure TForm2. Button3Click(Sender: TObject);

begin

form5: =tform5. Create(self); // запускает форму «Работа»

form5. showmodal;

end;

procedure TForm2. Button4Click(Sender: TObject);

begin

form6: =tform6. Create(self); // запускает форму «ВУС»

form6. showmodal;

end;

procedure TForm2. Button5Click(Sender: TObject);

var

spisok: string;

begin

if (Dbedit1. text='') or (Dbedit2. text='') or (Dbedit3. text='') or (DblookupCombobox1. text='') or (DblookupCombobox2. text='') or (Dbedit5. text='') or (MaskEdit1. Text='') or (Dbedit9. text='') or (Dbedit10. text='') then Begin

if dbedit1. text='' then spisok: =spisok+'Фамилия, ';

if dbedit2. text='' then spisok: =spisok+'Имя, ';

if dbedit3. text='' then spisok: =spisok+'Отчество, ';

if DblookupCombobox1. text='' then spisok: =spisok+'Семейноеположение, ';

if DblookupCombobox2. text='' then spisok: =spisok+'Пол, ';

if dbedit5. text='' then spisok: =spisok+'Номерстраховогосвидетельства, ';

if MaskEdit1. Text='' then spisok: =spisok+'Номермедполиса, ';

if dbedit9. text='' then spisok: =spisok+'Компаниявыдававшаямедполис, ';

if dbedit10. text='' then spisok: =spisok+'Адрескомпаниивыдававшеймедполис, ';

Showmessage('Вы не заполнили поля: '+Spisok);

End else begin

table1. FieldByName('Номермедполиса'). Asstring: =(MaskEdit1. Text);

table1. FieldByName('Датавыдачистраховогосвидетельства'). AsDateTime: =DateTimePicker1. DateTime;

table1. post;

end; button1. Enabled: =true; button2. Enabled: =true; button3. Enabled: =true;

button4. Enabled: =true;

end;

procedure TForm2. FormCreate(Sender: TObject);

begin

table1. ConnectionString: ='Provider=Microsoft. Jet. OLEDB.4.0; Data Source='+getcurrentdir+'\Саша. mdb'; // связываетформу"Свединияосотруднике" сбазойданных, таблицей"Общиесведения"

table1. Active: =true;

table6. ConnectionString: ='Provider=Microsoft. Jet. OLEDB.4.0; Data Source='+getcurrentdir+'\Саша. mdb'; // связывает форму «Свединия о сотруднике» с базой данных, таблицей ""

table6. Active: =true;

Table7. ConnectionString: ='Provider=Microsoft. Jet. OLEDB.4.0; Data Source='+getcurrentdir+'\Саша. mdb '; // связываетформу"ВУС" сбазойданных, таблицей""

table7. Active: =true;

table1. insert;

end;

procedure TForm2. dbedit1KeyPress(Sender: TObject; var Key: Char);

begin

case Key of

'а'. 'я':; 'А'. 'Я':; #8: else Key: = #0;

end; end;

procedure TForm2. dbedit2KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm2. DBEdit3KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm2. DBEdit4KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end; end.

unit Unit3;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, DBGrids, DB, ADODB, ExtCtrls, DBCtrls, StdCtrls, Mask,

ComCtrls;

Type

    продолжение
--PAGE_BREAK--

TForm3 = class(TForm) Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; Label8: TLabel; Label9: TLabel; Label10: TLabel; Label11: TLabel; DBEdit4: TDBEdit; DBEdit5: TDBEdit; DBEdit8: TDBEdit; DBEdit9: TDBEdit; DataSource1: TDataSource; Table2: TADOTable;

Button1: TButton; Button2: TButton; DBLookupComboBox1: TDBLookupComboBox; DataSource2: TDataSource; Table8: TADOTable;

DateTimePicker1: TDateTimePicker; MaskEdit1: TMaskEdit; MaskEdit2: TMaskEdit; MaskEdit3: TMaskEdit; DBEdit1: TDBEdit; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure DBEdit1KeyPress(Sender: TObject; var Key: Char);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

{$R *. dfm}

procedure TForm3. Button1Click(Sender: TObject);

var

spisok1: string;

begin

if (MaskEdit1. Text='') or (MaskEdit2. Text='') or(Dbedit4. text='') or (DblookupCombobox1. text='') or (Dbedit5. text='') or (MaskEdit3. Text='') or (Dbedit8. text='') then Begin

if MaskEdit1. Text='' then spisok1: =spisok1+'Серия, ';

if MaskEdit2. Text='' then spisok1: =spisok1+'Номер, ';

if dbedit4. text='' then spisok1: =spisok1+'Выдан, ';

if DblookupCombobox1. text='' then spisok1: =spisok1+'Зарегестрирован, ';

if dbedit5. text='' then spisok1: =spisok1+'Поадресу, ';

/ / if dbedit6. text='' then spisok1: =spisok1+'Датарождения, ';

if MaskEdit3. Text='' then spisok1: =spisok1+'Индекс, ';

Showmessage('Вы не заполнили поля: '+Spisok1);

End else begin

table2. FieldByName('Серия'). Asstring: =(MaskEdit1. Text);

table2. FieldByName('Номер'). Asstring: =(MaskEdit2. Text);

table2. FieldByName('Датарождения'). AsDateTime: =DateTimePicker1. DateTime;

table2. FieldByName('Индекс'). Asstring: =(MaskEdit3. Text);

table2. post;

end; end;

procedure TForm3. Button2Click(Sender: TObject);

begin

close; // закрывает форму «Паспорт»

end;

procedure TForm3. FormCreate(Sender: TObject);

begin

Table2. ConnectionString: ='Provider=Microsoft. Jet. OLEDB.4.0; Data Source='+getcurrentdir+'\Саша. mdb '; // связываетформу"Паспорт" сбазойданных, таблицей"Паспорт"

table2. Active: =true;

Table8. ConnectionString: ='Provider=Microsoft. Jet. OLEDB.4.0; Data Source='+getcurrentdir+'\Саша. mdb '; // связываетформу"Паспорт" сбазойданных, таблицей""

table8. Active: =true;

table2. insert;

end;

procedure TForm3. DBEdit1KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end; end.

unit Unit4;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, DBGrids, DB, ADODB, ExtCtrls, DBCtrls, StdCtrls, ComCtrls;

type

Form4 = class(TForm)

DataSource1: TDataSource; Table3: TADOTable; DBGrid1: TDBGrid;

Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Button1: TButton;

Edit5: TEdit; Edit7: TEdit; Edit8: TEdit; Edit9: TEdit; Edit10: TEdit;

Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; Label8: TLabel; Label9: TLabel;

Label10: TLabel; Label11: TLabel; Button2: TButton; DateTimePicker1: TDateTimePicker; Edit4: TEdit; Edit6: TEdit; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Edit1KeyPress(Sender: TObject; var Key: Char); procedure Edit2KeyPress(Sender: TObject; var Key: Char);

procedure Edit6KeyPress(Sender: TObject; var Key: Char);

private

{ Private declarations }

public

{ Public declarations }

end; var

Form4: TForm4;

implementation

{$R *. dfm}

procedure TForm4. FormCreate(Sender: TObject);

begin

Table3. ConnectionString: ='Provider=Microsoft. Jet. OLEDB.4.0; Data Source='+getcurrentdir+'\Саша. mdb '; // связывает форму «Образование» с базой данных, таблицей «Образование»

table3. Active: =true;

end;

procedure TForm4. Button1Click(Sender: TObject);

var

spisok: string;

begin

table3. Insert;

table3. FieldByName('код'). AsInteger: =strtoint(edit1. Text);

table3. FieldByName('Учебноезаведение'). Asstring: =(edit2. Text);

table3. FieldByName('Наименование заведения'). Asstring: =(edit3. Text);

table3. FieldByName('Видобучения'). Asstring: =(edit4. Text);

table3. FieldByName('Факультет'). Asstring: =(edit5. Text);

table3. FieldByName('Образование'). Asstring: =(edit6. Text);

table3. FieldByName('Документ'). Asstring: =(edit7. Text);

table3. FieldByName('Специалность'). Asstring: =(edit8. Text);

table3. FieldByName('Квалификация'). Asstring: =(edit9. Text);

table3. FieldByName('Номер'). Asstring: =(edit10. Text);

table3. FieldByName('Датавыдачи'). AsDateTime: =DateTimePicker1. DateTime;

if (edit1. Text='') or(edit4. Text='') then Begin

if edit1. Text='' then spisok: =spisok+'код, ';

if edit4. Text='' then spisok: =spisok+'Видобучения, ';

Showmessage('Вы не заполнили поля: '+Spisok);

End else

table3. Post;

end;

procedure TForm4. Button2Click(Sender: TObject);

begin

close;

end;

procedure TForm4. Edit1KeyPress(Sender: TObject; var Key: Char);

begin

case Key of '0'. '9':; #8:

else Key: = #0;

end; end;

procedure TForm4. Edit2KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm4. Edit6KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:; #32:

else Key: = #0;

end;

end; end.

unit Unit5;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, DBGrids, DB, ADODB, ExtCtrls, DBCtrls, StdCtrls, Mask,

ComCtrls;

type

TForm5 = class(TForm)

    продолжение
--PAGE_BREAK--

DataSource1: TDataSource; Table4: TADOTable; Label1: TLabel;

Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel;

Label6: TLabel; DBEdit1: TDBEdit; DBEdit2: TDBEdit; DBEdit3: TDBEdit;

DBEdit4: TDBEdit; DBEdit6: TDBEdit; Button1: TButton; Button2: TButton;

DBEdit5: TDBEdit; procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure DBEdit4KeyPress(Sender: TObject; var Key: Char); procedure DBEdit1KeyPress(Sender: TObject; var Key: Char); procedure DBEdit2KeyPress(Sender: TObject; var Key: Char);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form5: TForm5;

implementation

{$R *. dfm}

procedure TForm5. Button2Click(Sender: TObject);

begin

Close; // закрывает форму «Работа»

end;

procedure TForm5. Button1Click(Sender: TObject);

var

spisok2: string;

begin

if (Dbedit4. text='') then

Begin

if dbedit4. text='' then spisok2: =spisok2+'Профессия(Должность), ';

Showmessage('Вы не заполнили поля: '+Spisok2);

End else table4. post;

end;

procedure TForm5. FormCreate(Sender: TObject);

begin

Table4. ConnectionString: ='Provider=Microsoft. Jet. OLEDB.4.0; Data Source='+getcurrentdir+'\Саша. mdb '; // связывает форму «Работа» с базой данных, таблицей «Работа»

table4. Active: =true;

table4. insert;

end;

procedure TForm5. DBEdit4KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm5. DBEdit1KeyPress(Sender: TObject; var Key: Char);

begin

case Key of '0'. '9':; #8:

else Key: = #0;

end; end;

procedure TForm5. DBEdit2KeyPress(Sender: TObject; var Key: Char);

begin

case Key of '0'. '9':; #8:

else Key: = #0;

end; end; end.

unit Unit6;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, DB, ADODB, ExtCtrls, DBCtrls, Grids, DBGrids, StdCtrls, Mask,

ComCtrls;

type

TForm6 = class(TForm)

Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel;

Label5: TLabel; Label6: TLabel; DBEdit1: TDBEdit; DBEdit2: TDBEdit;

DBEdit3: TDBEdit; Label7: TLabel; Label8: TLabel; Label9: TLabel;

Label10: TLabel; Label11: TLabel; DBEdit4: TDBEdit; DBEdit5: TDBEdit;

DBEdit6: TDBEdit; DBEdit7: TDBEdit; Table5: TADOTable;

DataSource1: TDataSource; Button1: TButton; Button2: TButton;

DBLookupComboBox1: TDBLookupComboBox; DataSource2: TDataSource; Table9: TADOTable; Table10: TADOTable; DataSource3: TDataSource;

DBLookupComboBox2: TDBLookupComboBox; DBLookupComboBox3: TDBLookupComboBox; DataSource4: TDataSource; Table11: TADOTable; DateTimePicker1: TDateTimePicker; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end; var

Form6: TForm6;

implementation

{$R *. dfm}

procedure TForm6. Button1Click(Sender: TObject);

var

spisok4: string;

begin

if (DblookupCombobox1. text='') or (DblookupCombobox2. text='') then Begin

if DblookupCombobox1. text='' then spisok4: =spisok4+'Годностьквоенойслужбе,';

if DblookupCombobox2. text='' then spisok4: =spisok4+'Обязанность, ';

Showmessage('Вы не заполнили поля: '+Spisok4);

end

else

begin

table5. FieldByName('Выдан'). AsDateTime: =DateTimePicker1. DateTime;

table5. post;

end; end;

procedure TForm6. Button2Click(Sender: TObject);

begin

close; // закрывает форму «ВУС»

end;

procedure TForm6. FormCreate(Sender: TObject);

begin

Table5. ConnectionString: ='Provider=Microsoft. Jet. OLEDB.4.0; Data Source='+getcurrentdir+'\Саша. mdb '; // связываетформу"ВУС" сбазойданных, таблицей"ВУС"

table5. Active: =true;

Table9. ConnectionString: ='Provider=Microsoft. Jet. OLEDB.4.0; Data Source='+getcurrentdir+'\Саша. mdb '; // связываетформу"ВУС" сбазойданных, таблицей""

table9. Active: =true;

Table10. ConnectionString: ='Provider=Microsoft. Jet. OLEDB.4.0; Data Source='+getcurrentdir+'\Саша. mdb '; // связываетформу"ВУС" сбазойданных, таблицей""

table10. Active: =true;

Table11. ConnectionString: ='Provider=Microsoft. Jet. OLEDB.4.0; Data Source='+getcurrentdir+'\Саша. mdb '; // связываетформу"ВУС" сбазойданных, таблицей""

table11. Active: =true;

table5. insert;

end; end.

unit Unit7;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, DB, ADODB, Grids, DBGrids, ExtCtrls, StdCtrls, DBCtrls, ImgList;

type

TForm7 = class(TForm)

DBGrid1: TDBGrid; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit;

Edit5: TEdit; Edit6: TEdit; Edit7: TEdit; Edit8: TEdit; Edit9: TEdit;

Edit10: TEdit; Edit11: TEdit; Edit12: TEdit; Panel1: TPanel; Button1: TButton; Button2: TButton; ADOQuery1: TADOQuery; Label1: TLabel;

Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel;

Label6: TLabel; Label7: TLabel; Label8: TLabel; Label9: TLabel;

Label10: TLabel; Label11: TLabel; Label12: TLabel; DataSource1: TDataSource; Button4: TButton; DBNavigator1: TDBNavigator;

Button3: TButton; Button5: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject);

procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Edit1KeyPress(Sender: TObject; var Key: Char);

procedure Edit2KeyPress(Sender: TObject; var Key: Char);

procedure Edit3KeyPress(Sender: TObject; var Key: Char);

procedure Edit11KeyPress(Sender: TObject; var Key: Char);

procedure Button3Click(Sender: TObject);

procedure Edit4KeyPress(Sender: TObject; var Key: Char);

procedure Edit5KeyPress(Sender: TObject; var Key: Char);

procedure Edit7KeyPress(Sender: TObject; var Key: Char);

procedure Edit8KeyPress(Sender: TObject; var Key: Char);

procedure Edit10KeyPress(Sender: TObject; var Key: Char);

private

{ Private declarations }

public

{ Public declarations }

end;

    продолжение
--PAGE_BREAK--

var

Form7: TForm7;

implementation

uses Unit9, Unit10;

{$R *. dfm}

procedure TForm7. Button1Click(Sender: TObject);

begin

if (edit1. text='') and (edit2. text='') and (edit3. text='') and (edit4. text='') and (edit5. text='') and (edit6. text='') and (edit7. text='') and (edit8. text='') and (edit9. text='') and (edit10. text='') and (edit11. text='') and (edit12. text='') then Showmessage('Выневнесликритериипоиска')

else

Begin

adoquery1. Parameters. ParamByName('p1'). Value: ='%'+edit1. text+'%';

adoquery1. Parameters. ParamByName('p2'). Value: ='%'+edit2. text+'%';

adoquery1. Parameters. ParamByName('p3'). Value: ='%'+edit3. text+'%';

adoquery1. Parameters. ParamByName('p4'). Value: ='%'+edit4. text+'%';

adoquery1. Parameters. ParamByName('p5'). Value: ='%'+edit5. text+'%';

adoquery1. Parameters. ParamByName('p6'). Value: ='%'+edit6. text+'%';

adoquery1. Parameters. ParamByName('p7'). Value: ='%'+edit7. text+'%';

adoquery1. Parameters. ParamByName('p8'). Value: ='%'+edit8. text+'%';

adoquery1. Parameters. ParamByName('p9'). Value: ='%'+edit9. text+'%';

adoquery1. Parameters. ParamByName('p10'). Value: ='%'+edit10. text+'%';

adoquery1. Parameters. ParamByName('p11'). Value: ='%'+edit11. text+'%';

adoquery1. Parameters. ParamByName('p12'). Value: ='%'+edit12. text+'%';

ADOQuery1. Active: = True;

end; end;

procedure TForm7. Button2Click(Sender: TObject);

begin

Form9. QuickRep1. Preview;

end;

procedure TForm7. Button4Click(Sender: TObject);

begin

Edit1. Text: = ''; Edit2. Text: = ''; Edit3. Text: = ''; Edit4. Text: = '';

Edit5. Text: = ''; Edit6. Text: = ''; Edit7. Text: = ''; Edit8. Text: = '';

Edit9. Text: = ''; Edit10. Text: = ''; Edit11. Text: = ''; Edit12. Text: = '';

ADOQuery1. Active: = False;

end;

procedure TForm7. Button5Click(Sender: TObject);

begin

close;

end;

procedure TForm7. Edit1KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm7. Edit2KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm7. Edit3KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm7. Edit11KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm7. Button3Click(Sender: TObject);

begin

Form10. QuickRep1. Preview;

end;

procedure TForm7. Edit4KeyPress(Sender: TObject; var Key: Char);

begin

case Key of '0'. '9':; #8:

else Key: = #0;

end; end;

procedure TForm7. Edit5KeyPress(Sender: TObject; var Key: Char);

begin

case Key of '0'. '9':; #8:

else Key: = #0;

end; end;

procedure TForm7. Edit7KeyPress(Sender: TObject; var Key: Char);

begin

case Key of '0'. '9':; #8:

else Key: = #0;

end; end;

procedure TForm7. Edit8KeyPress(Sender: TObject; var Key: Char);

begin

case Key of '0'. '9':; #8:

else Key: = #0;

end; end;

procedure TForm7. Edit10KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:; #32:

else Key: = #0;

end; end; end.

unit Unit8;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, DB, ADODB, StdCtrls, ExtCtrls, DBCtrls, Grids, DBGrids;

type

TForm8 = class(TForm)

Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel;

Label5: TLabel; Label6: TLabel; Label7: TLabel; Label8: TLabel;

Label9: TLabel; Label10: TLabel; Label11: TLabel; Label12: TLabel;

DBGrid1: TDBGrid; DBNavigator1: TDBNavigator; Edit1: TEdit;

Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; Edit6: TEdit;

Edit7: TEdit; Edit8: TEdit; Edit9: TEdit; Edit10: TEdit; Edit11: TEdit;

Edit12: TEdit; Panel1: TPanel; Button1: TButton; Button4: TButton;

ADOQuery1: TADOQuery; DataSource1: TDataSource; Button2: TButton;

Button3: TButton; procedure Button1Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Edit1KeyPress(Sender: TObject; var Key: Char);

procedure Edit2KeyPress(Sender: TObject; var Key: Char);

procedure Edit3KeyPress(Sender: TObject; var Key: Char);

procedure Edit11KeyPress(Sender: TObject; var Key: Char);

procedure Edit4KeyPress(Sender: TObject; var Key: Char);

procedure Edit5KeyPress(Sender: TObject; var Key: Char);

procedure Edit7KeyPress(Sender: TObject; var Key: Char);

procedure Edit8KeyPress(Sender: TObject; var Key: Char);

procedure Edit10KeyPress(Sender: TObject; var Key: Char); private

{ Private declarations }

public

{ Public declarations }

end;

var

Form8: TForm8;

implementation

{$R *. dfm}

procedure TForm8. Button1Click(Sender: TObject);

begin

if (edit1. text='') and (edit2. text='') and (edit3. text='') and (edit4. text='') and (edit5. text='') and (edit6. text='') and (edit7. text='') and (edit8. text='') and (edit9. text='') and (edit10. text='') and (edit11. text='') and (edit12. text='') then Showmessage('Выневнесликритериипоиска')

else

Begin

adoquery1. Parameters. ParamByName('p1'). Value: ='%'+edit1. text+'%';

adoquery1. Parameters. ParamByName('p2'). Value: ='%'+edit2. text+'%';

adoquery1. Parameters. ParamByName('p3'). Value: ='%'+edit3. text+'%';

adoquery1. Parameters. ParamByName('p4'). Value: ='%'+edit4. text+'%';

adoquery1. Parameters. ParamByName('p5'). Value: ='%'+edit5. text+'%';

adoquery1. Parameters. ParamByName('p6'). Value: ='%'+edit6. text+'%';

adoquery1. Parameters. ParamByName('p7'). Value: ='%'+edit7. text+'%';

adoquery1. Parameters. ParamByName('p8'). Value: ='%'+edit8. text+'%';

adoquery1. Parameters. ParamByName('p9'). Value: ='%'+edit9. text+'%';

adoquery1. Parameters. ParamByName('p10'). Value: ='%'+edit10. text+'%';

adoquery1. Parameters. ParamByName('p11'). Value: ='%'+edit11. text+'%';

adoquery1. Parameters. ParamByName('p12'). Value: ='%'+edit12. text+'%';

ADOQuery1. Active: = True;

    продолжение
--PAGE_BREAK--

end;

end;

procedure TForm8. Button4Click(Sender: TObject);

begin

Edit1. Text: = ''; Edit2. Text: = ''; Edit3. Text: = ''; Edit4. Text: = '';

Edit5. Text: = ''; Edit6. Text: = ''; Edit7. Text: = ''; Edit8. Text: = '';

Edit9. Text: = ''; Edit10. Text: = ''; Edit11. Text: = ''; Edit12. Text: = '';

ADOQuery1. Active: = false;

end;

procedure TForm8. Button2Click(Sender: TObject);

begin

ADOQuery1. Post; end

procedure TForm8. Button3Click(Sender: TObject);

begin close; end;

procedure TForm8. Edit1KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm8. Edit2KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm8. Edit3KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm8. Edit11KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm8. Edit4KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end;

procedure TForm8. Edit5KeyPress(Sender: TObject; var Key: Char);

begin

case Key of '0'. '9':; #8:

else Key: = #0;

end; end;

procedure TForm8. Edit7KeyPress(Sender: TObject; var Key: Char);

begin

case Key of '0'. '9':; #8:

else Key: = #0;

end; end;

procedure TForm8. Edit8KeyPress(Sender: TObject; var Key: Char);

begin

case Key of '0'. '9':; #8:

else Key: = #0;

end; end;

procedure TForm8. Edit10KeyPress(Sender: TObject; var Key: Char);

begin

case Key of 'а'. 'я':; 'А'. 'Я':; #8:

else Key: = #0;

end; end; end.

unit Unit9;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ExtCtrls, QuickRpt, QRCtrls;

type

TForm9 = class(TForm)

QuickRep1: TQuickRep; QRBand1: TQRBand; QRLabel1: TQRLabel;

QRBand2: TQRBand; QRSubDetail1: TQRSubDetail; DetailBand1: TQRBand; QRLabel9: TQRLabel; QRLabel8: TQRLabel; QRLabel7: TQRLabel;

QRLabel6: TQRLabel; QRLabel51: TQRLabel; QRLabel50: TQRLabel;

QRLabel5: TQRLabel; QRLabel49: TQRLabel; QRLabel48: TQRLabel;

QRLabel47: TQRLabel; QRLabel46: TQRLabel; QRLabel45: TQRLabel;

QRLabel44: TQRLabel; QRLabel43: TQRLabel; QRLabel42: TQRLabel;

QRLabel41: TQRLabel; QRLabel40: TQRLabel; QRLabel4: TQRLabel; QRLabel39: TQRLabel; QRLabel38: TQRLabel; QRLabel37: TQRLabel;

QRLabel36: TQRLabel; QRLabel35: TQRLabel; QRLabel34: TQRLabel;

QRLabel33: TQRLabel; QRLabel32: TQRLabel; QRLabel31: TQRLabel;

QRLabel30: TQRLabel; QRLabel3: TQRLabel; QRLabel29: TQRLabel;

QRLabel28: TQRLabel; QRLabel27: TQRLabel; QRLabel26: TQRLabel;

QRLabel25: TQRLabel; QRLabel24: TQRLabel; QRLabel23: TQRLabel;

QRLabel22: TQRLabel; QRLabel21: TQRLabel; QRLabel20: TQRLabel; QRLabel2: TQRLabel; QRLabel19: TQRLabel; QRLabel18: TQRLabel;

QRLabel17: TQRLabel; QRLabel16: TQRLabel; QRLabel15: TQRLabel; QRLabel14: TQRLabel; QRLabel13: TQRLabel; QRLabel12: TQRLabel; QRLabel11: TQRLabel; QRLabel10: TQRLabel; QRDBText9: TQRDBText;

QRDBText8: TQRDBText; QRDBText7: TQRDBText; QRDBText6: TQRDBText; QRDBText50: TQRDBText; QRDBText5: TQRDBText; QRDBText49: TQRDBText; QRDBText48: TQRDBText; QRDBText47: TQRDBText; QRDBText46: TQRDBText; QRDBText45: TQRDBText;

QRDBText44: TQRDBText; QRDBText43: TQRDBText; QRDBText42: TQRDBText; QRDBText41: TQRDBText; QRDBText40: TQRDBText;

QRDBText4: TQRDBText; QRDBText39: TQRDBText; QRDBText38: TQRDBText; QRDBText37: TQRDBText; QRDBText36: TQRDBText;

QRDBText35: TQRDBText; QRDBText34: TQRDBText; QRDBText33: TQRDBText; QRDBText32: TQRDBText; QRDBText31: TQRDBText;

QRDBText30: TQRDBText; QRDBText3: TQRDBText; QRDBText29: TQRDBText; QRDBText28: TQRDBText; QRDBText27: TQRDBText;

QRDBText26: TQRDBText; QRDBText25: TQRDBText; QRDBText24: TQRDBText; QRDBText23: TQRDBText; QRDBText22: TQRDBText;

QRDBText21: TQRDBText; QRDBText20: TQRDBText;

QRDBText2: TQRDBText; QRDBText19: TQRDBText; QRDBText18: TQRDBText; QRDBText17: TQRDBText; QRDBText16: TQRDBText;

QRDBText15: TQRDBText; QRDBText14: TQRDBText; QRDBText13: TQRDBText; QRDBText12: TQRDBText; QRDBText11: TQRDBText; QRDBText10: TQRDBText; QRDBText1: TQRDBText;

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form9: TForm9;

implementation

uses Unit1, Unit2, Unit3, Unit7;

{$R *. dfm}

end;

end.

unit Unit10;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, QuickRpt, QRCtrls, ExtCtrls;

type

TForm10 = class(TForm)

QuickRep1: TQuickRep; QRBand1: TQRBand; QRLabel1: TQRLabel;

QRSubDetail1: TQRSubDetail; QRDBText1: TQRDBText; QRDBText2: TQRDBText; QRDBText3: TQRDBText; QRDBText4: TQRDBText;

QRDBText5: TQRDBText; QRBand2: TQRBand; QRLabel2: TQRLabel;

QRLabel3: TQRLabel; QRLabel4: TQRLabel; QRLabel5: TQRLabel;

QRLabel6: TQRLabel;

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form10: TForm10;

implementation

{$R *. dfm}

end.

Описание программы

Для работы с программой не требуется никаких специфических знаний компьютерных технологий, кроме навыков работы в среде операционной системы Windows 98 SE / ME / 2000/XP.

Помимо всего, для нормального функционирования программы необходима установка всех ее компонентов и модулей, а так же наличие необходимых программных средств (наличие исполняемого файла BazaDann. exe и файла базы данных Access Саша в одной папке). Запуск программы осуществляется двойным щелчком правой кнопки «мыши» по исполняемому файлу. После открытия главной форм «Картотека работников» пользователь выбирает в строке главного меню режим работы с программой. Программа должна, применяться при заданных условиях и в определенных целях.

Программный продукт «Автоматизированная система начальника отдела кадров учреждения» предназначен для автоматизации процесса заполнения документации на сотрудников и работников учреждения, хранения, обработки информации, поиска информации по задаваемым критериям, получения отчета по поиску и вывод его на печать.

Программа имеет широкую область применения, призвана освободить работников отдела кадров от рутиной работы по заполнению форм различного рода, содержащих информацию о сотрудниках и работниках предприятия и выполнению поиска необходимой информации.

Для разработки программного продукта была выбрана система визуального программирования Borland Delphi 7.0, основой которого является язык программирования Object Pascal.

    продолжение
--PAGE_BREAK--

Программа содержит 10 форм, хранение данных производится в 6 главных и 6 второстепенных таблицах. Главные таблицы: «Основные сведения», «Паспорт», «Образование», «ВУС» связаны между собой и объединены в таблицу «Запрос1». Второстепенные таблицы (справочники): «Семейное положение», «Пол», «Зарегистрирован», «Годность к военной службе», «Обязанность», «Воинское звание» — они не связаны между собой и используются для заполнения главных таблиц. Связь с файлами базы данных (MS Access) осуществляется с использованием технологии ADO (Active Data Object — объекты данных как объекты ActiveX) и провайдера данных Microsoft Jet 4.0 OLE DB Provider. При помощи SQL-запросов введётся расширенный поиск по таблице.

Тестирование программы

Методом проверки корректности работы программы является тестирование. Тест — это последовательность наборов исходных данных, которые подаются на вход изделия и соответствующие им эталоны правильных результатов, которые должны быть получены на выходе. Проверка программы представляет собой тестирование. Для тестирования данного программного продукта могут быть применены следующие виды тестов:

Тесты для ввода данных: режим добавления (с допустимыми значениями)

При выборе подпункта «Сведения о сотрудниках» открывается форма «Сведения о сотрудниках», на которой находятся следующие текстовые поля, которые заполняются данными, представленными в табл.12:

Таблица 12

Входные данные для проверки режима добавления

Фамилия

Петров

Имя

Алексей

Отчество

Владимирович

Гражданство

Российское

Семейное положение

женат

Пол

муж

Номер страхового свидетельства

12 344567890

Дата выдачи страхового свидетельства

25.03. 1998

Номер медполиса

012345

Компания выдавшая медполис

Страхком

Адрес компании, выдавшей медполис

Пр. Гагарина д.32

Данные заполнены без ошибок, и они вносятся в базу данных после нажатия кнопки «Внести».

При нажатии на кнопку «Паспорт» открывается форма «Паспорт», на которой находятся следующие текстовые поля, представленными в табл.13:

Таблица13

Входные данные для проверки режима добавления

Серия

0999

Номер

123456

Выдан

РОВД Промышленного р-он

Зарегистрирован

Постояно

По адресу

Пр. Гагарина д.52

Дата рождения

19.02. 1980

Место рождения

Пр. Гагарина

Индекс

123456

Адрес проживания

Пр. Гагарина д.52

Данные заполнены без ошибок, и они вносятся в базу данных после нажатия кнопки «Внести».

При нажатии кнопки «Образование» открывается форма «Образование», на которой находятся следующие текстовые поля, представленными в табл.14:

Таблица14

Входные данные для проверки режима добавления

Код

3

Учебное заведение

колледж

Наименование заведения

СПЭК

Вид обучения

очное

Факультет

Программное обеспечение ВТ и АС

Образование

Средне специальное

Документ

диплом

Специальность

Программное обеспечение ВТ и АС

Номер

45456467

Дата выдачи

19.06. 2000

Данные заполнены без ошибок, и они вносятся в базу данных после нажатия кнопки «Внести».

При нажатии кнопки «Работа» открывается форма «Работа», на которой находятся следующие текстовые поля, представленными в табл.15:

Таблица15

Входные данные для проверки режима добавления

Общий стаж работы

2

Непрерывный стаж работы

2

Последнее место работы

СПЭК

Профессия(Должность)

Программист

Дата увольнения

30.06. 2001

Причина увольнения

По своему желанию

Данные заполнены без ошибок, и они вносятся в базу данных после нажатия кнопки «Внести».

При нажатии кнопки «ВУС» открывается форма «ВУС», на которой находятся следующие текстовые поля, представленными в табл.16:

Таблица16

Входные данные для проверки режима добавления

Годность к военной службе

Не годен

Обязанность

Не военобязан

Номер военного билета

АБ 123456

Выдан

19.09. 2003

Данные заполнены без ошибок, и они вносятся в базу данных после нажатия кнопки «Внести».

Тест выполнен, сбоев в работе программы не произошло.

Внедрение

Минимальный набор технических средств для работы программы:

компьютер на базе процессора Intel 486 DX 4-100 и выше;

FDD 3.5 или CD-ROM для установки программного продукта на компьютер;

ОЗУ — не менее 32-х Мегабайт памяти.

свободное дисковое пространство — не менее 2-х Мегабайт для установки программы + размер базы данных.

SVGA-монитор c поддержкой режима минимум 800х600 точек.

Клавиатура, мышь.

    продолжение
--PAGE_BREAK--

Принтер (для распечатки отчетов).

При запуске программы открывается главная форма «Картотека работников», на которой располагается строка Главного меню, содержащая пункты: «Файл», «Поиск», «Начать работу», «О программе».

Пункт «Файл» содержит подпункт «Выход», выбор которого позволяет выйти из программы.

При нажатии на пункт «Поиск» запускается форма «Поиск». На этой форме находятся 12 текстовых полей: «Фамилия», «Имя», «Отчество», «Серия» и «Номер» паспорта, «По адресу», «Номер медполиса», «Номер страхового свидетельства», «Дата рождения», «Образование», «Профессия (Должность)», «Номер военного билета», — в них вносятся данные на сотрудника или рабочего, которые должны быть найдены. После заполнения этих полей и нажатия кнопки «Поиск» производится поиск в базе данных. Результаты поиска отображается в сетки таблицы, расположенной на этой форме. Если ни одно текстовое поле не заполнено, то выдаётся сообщение «Вы не внесли критерии поиска». После выполнения поиска по получены данным на сотрудника или работника предприятия можно получить два вида отчётов. Для получения полного отчёта по сотруднику нужно нажать кнопку «Полный отчёт». Для получения краткого отчёта по сотруднику нужно нажать кнопку «Краткий отчёт». Для обнуления результатов поиска надо нажать кнопку «Очистить». Для выхода из формы «Поиск» следует нажать кнопку «Выход».

В пункте «Начать работу» находятся два подпункта: «Сведения о сотрудниках» и «Редактирование»

При выборе подпункта «Сведения о сотрудниках» открывается форма «Сведения о сотрудниках», на которой находятся следующие текстовые поля для заполнения: «Фамилия», «Имя», «Отчество», «Гражданство» (в них можно вводить только русские буквы), «Семейное положение» (раскрывающийся список из которого можно выбрать: «холост», «женат», «не замужем», «замужем»), «Пол» (раскрывающийся список из которого можно выбрать: «муж» или «жен»), «Номер страхового свидетельства» (вводится в это поле только цифры), «Дата выдачи страхового свидетельства» (в него вносится дата, имеющий формат, д.н.мц. гггг.), «Номер медполиса» (вводятся только числа), «Компания выдававшая медполис», «Адрес компании выдавшей медполис». Чтобы занести введённую запись в базу данных, нажимаем на кнопку «Внести» (которая находится в правой стороне форме, в колонке из шести кнопок: «Паспорт», «Образование», «Работа», «ВУС», «Внести», «Выход»). После нажатия на кнопку «Внести» производится проверка наличия внесённых обязательных данных (к ним относятся: «Фамилия», «Имя», «Отчество», «Гражданство», «Пол», «Семейное положение», «Номер страхового свидетельства», «Дата выдачи страхового свидетельства», «Номер медполиса», «Компания выдававшая медполис», «Адрес компании выдавшей медполис». Если не все они внесены, то выводится сообщение, какие именно обязательные данные не заполнены, а сами данные в базу данных не заносятся. Если все данные заполнены без ошибок, то они вносятся в базу данных. После нажатия кнопки «Внести» активируются кнопки «Паспорт», «Образование», «Работа», «ВУС», которые до этого были заблокированы. При нажатие на кнопку «Выход» форма «Сведения о сотрудниках» закрывается.

При нажатие на кнопку «Паспорт» открывается форма «Паспорт», на которой находятся текстовые поля: «Серия» (вводятся только 4 цифры), «Номер»(вводятся только 6 цифры), «Выдан», «Зарегистрирован»(раскрывающийся список из которого можно выбрать: временно или постоянно), «По адресу», «Дата рождения» (в него вносится дата, имеющий формат. д.н.мц. гггг.), «Место рождения», «Индекс» (вводятся только 6 цифры), «Адрес проживание», «Телефон», «Выход на пенсию» (в него вносится дата, имеющий формат. д.н.мц. гггг.), после заполнения этих полей нажимается кнопка «Внести». После нажатия на кнопку «Внести» производится проверка наличия внесённых обязательных данных (к ним относятся: «Серия», «Номер», «Выдан», «Зарегистрирован», «По адресу», «Дата рождения»,«Индекс». Если не все они внесены, то выводится сообщение, какие именно обязательные данные не заполнены, а сами данные в базу данных не заносятся. Если все данные заполнены без ошибок, то они вносятся в базу данных. При нажатии на кнопку «Выход» форма «Паспорт» закрывается.

При нажатии кнопки «Образование» открывается форма «Образование», на которой отображается таблица «Образование». Так же на ней находятся текстовые поля: «Код» (в него вносится код сотрудника или рабочего для образования), «Учебное заведение», «Наименование заведения», «Вид обучения», «Факультет», «Вид образования», «Документ», «Специальность», «Квалификация», «Номер», «Дата выдачи» (в него вносится дата, имеющий формат. д.н.мц. гггг.), после заполнения этих полей нажимается кнопка «Внести». В случае если сотрудник или рабочий предприятия имеет несколько образований то повторяется порядок действий (описанный выше), а в текстовое поле «Код» вносится код этого сотрудника или рабочего. При нажатие на кнопку «Выход» форма «Паспорт» закрывается.

При нажатие кнопки «Работа» открывается форма «Работа», на который находятся текстовые поля: «Общий стаж» (вводятся цифры), «Непрерывный стаж» (вводятся цифры), «Последнее место работы», «Профессия (Должность)», «Дата увольнения» (в него вносится дата, имеющий формат дн. мц. гггг.), «Причина увольнения» — после заполнения этих полей нажимается кнопка «Внести». После нажатия на кнопку «Внести» производится проверка наличия внесённых обязательных данных (к ним относятся: «Профессия (Должность)». Если не все они внесены, то выводится сообщение, какие именно обязательные данные не заполнены, а сами данные в базу данных не заносятся. Если все данные заполнены без ошибок, то они вносятся в базу данных. При нажатии на кнопку «Выход» форма «Паспорт» закрывается.

При нажатии кнопки «ВУС» открывается форма «ВУС», на которой располагаются текстовые поля: «Годность к военной службе» (раскрывающийся список из которого можно выбрать: «годен», «не годен», «ограничено годен»), «Обязанность» (раскрывающийся список из которого можно выбрать: «военнообязан», «военнослужащий», «не военнообязан»), «Группа войск», «Категория запаса», «Состав», «Воинское звание» (раскрывающийся список из которого можно выбрать звание), «Военно-учётная специальность (номер)» (вводится 6 цифр), «Состоит на спецучёте (номер)», «Наименование военкомата по месту жительства», «Номер военного билета», «Выдан» (в него вносится дата, имеющий формат мц. дн. гггг.), после заполнения этих полей нажимается кнопка «Внести». После нажатия на кнопку «Внести» производится проверка наличия внесённых обязательных данных (к ним относятся: «Годность к военной службе», «Обязанность». Если не все они внесены, то выводится сообщение, какие именно обязательные данные не заполнены, а сами данные в базу данных не заносятся. Если все данные заполнены без ошибок, то они вносятся в базу данных. При нажатии на кнопку «Выход» форма «Паспорт» закрывается.

При нажатии на пункт «Редактировать» открывается форма «Редактировать». На этой форме находятся 12 текстовых полей: «Фамилия», «Имя», «Отчество», «Серия» и «Номер» паспорта, «По адресу», «Номер медполиса», «Номер страхового свидетельства», «Дата рождения», «Образование», «Профессия (Должность)», «Номер военного билета», — в них вносятся данные на сотрудника или рабочего которые должны быть найдены. Позже по этим полям после нажатия кнопки «Поиск» введётся поиск по базе данных. Результаты поиска отображается в сетки таблицы расположенной на этой форме. Если ни одно текстовое поле не заполнено выдаётся сообщение «Вы не внесли критерии поиска». После выполнения поиска по получены данным на сотрудника или работника предприятия можно эти данные редактировать. После редактирования данных нужно нажать кнопку «Сохранить». Для обнуления результатов поиска надо нажать кнопку «Очистить». Для выхода из формы «Поиск» следует нажать кнопку «Выход».

Использую пункт «Помощь» можно получить информацию о программе.

В пункте «Создатель» можно просмотреть сведенья о разработчике программы.

Литература

Архангельский А.Я. Delphi 7. Справочное пособие. — М.: ЗАО «Издательство БИНОП», 2005 г.

Карпова.Г.С. — Базы данных: модели, разработка, реализация — СПб.: Питер, 2005 г.

Кириллов В.В. Структурированный язык запросов (SQL). — СПб.: ИТМО, 2004 г. — 80 с.

Фаронов В.В. — Delphi «Программирование на языке высокого уровня» — СПб: «ПИТЕР», 2005г.

Фаронов В.В. — Программирование баз данных в Delphi 6: учебный курс — СПб.: Питер, 2004 г.

Хомоненко.А.Д., Цыганков В.М., Мальцев В. Г — Базы данных: Учебник для высших учебных заведений — СПб.: КОРОНА принт, 2005 г.


еще рефераты
Еще работы по информатике