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



Оглавление
Введение 2
Назначение и область применения 3
Технические характеристики 3
Разработка программы 9
Специфика программы 28
Текст программы 30
Описание программы 57
Тестирование программы 58
Внедрение 61
Литература 66
Введение
Задание на курсовую работу по дисциплине: "Программирование на языке высокого уровня".
Тема: Разработка приложения, представляющего собой базу данных о сотрудниках.
Условие задачи:
Программный продукт "Автоматизированная система начальника отдела кадров учреждения" предназначен для автоматизации процесса заполнения документации на сотрудников и работников учреждения, хранения, обработки информации, поиска информации по задаваемым критериям, получения отчета по поиску и вывод его на печать.
Задание выдано: _______________
Назначение и область применения
Программный продукт "Автоматизированная система начальника отдела кадров учреждения" предназначен для автоматизации процесса заполнения документации на сотрудников и работников учреждения, хранения, обработки информации, поиска информации по задаваемым критериям, получения отчета по поиску и вывод его на печать.
Программа имеет широкую область применения, призвана освободить работников отдела кадров от рутиной работы по заполнению форм различного рода, содержащих информацию о сотрудниках и работниках предприятия и выполнению поиска необходимой информации.
Поскольку ставилась задача разработать приложение для Windows, то и использовать программу можно только под управлением Windows.
Технические характеристики
В условие задачи "Автоматизированная система начальника отдела кадров учреждения" указывается на необходимость использования средства связи с базами данных и саму базу данных для хранения информации о сведеньях, о сотрудниках, поэтому нужно в постановку задачи включить определения структуры и организации базы данных. В задаче также требуется организовать ввод данных, редактирование, поиск информации о сотрудниках и вывод её на печать. Также требовалось организовать дружественный пользовательский интерфейс и обеспечить стабильное выполнение всех функций программы, связанных как непосредственно с управлением данными, хранящимися в базе данных, так и с сервисными функциями.
В программе решаются три подзадачи:
Внесение данных по сотруднику в базу данных (рис.1);
Поиск информации о сотруднике в базе данных, с возможностью составления отчёта (рис.2);
Редактирование информации о сотруднике в базе данных (рис3);
Начало
Внесение данных о сотруднике
Сортировка данных о сотруднике
Формирование базы данных о сотрудниках
Конец
Рис. 1.Схема внесения данных
Ввод критерия поиска
Вывод результата поиска
Начало
Редактирование информации по сотруднику
Сохранение результатов редактирования
Конец
Рис.2. Схема поиска информации о сотруднике
Ввод критерия поиска
Вывод результата поиска
Начало
Редактирование информации по сотруднику
Сохранение результатов редактирования
Конец
Рис.3. Схема редактирование информации о сотруднике
Выходные данные представляют собой результаты обработки (добавления, изменения) данных из БД. При получении конечных (выходных данных), в основном, переменные не используются, а ведется непосредственная обработка значений в базе данных. Все эти данные имеют различный формат и тип. Полученные данные сохраняются в таблицах базы данных. Кроме того, входными данными являются условия формирования запросов, поиска и отчетов, а выходными данными являются соответствующие результаты выполнения этих функций программы. К выходным данным так же относятся сформированные печатные формы документов (таб.1).
Таблица 1
Структура главных таблиц
Список полей
Тип поля
Таблица "Общие сведения"
Фамилия
Текстовый
Имя
Текстовый
Отчество
Текстовый
Гражданство
Текстовый
Семейное положение
Текстовый
Пол
Текстовый
Номер страхового свидетельства
Числовой
Дата выдачи страхового свидетельства
Дата
Номер медполиса
Числовой
Компания выдавшая медполис
Текстовый
Адрес компании выдавшей медполис
Текстовый
Таблица "Паспорт"
Серия
Числовой
Номер
Числовой
Выдан
Текстовый
Зарегистрирован
Текстовый
По адресу
Текстовый
Дата рождения
Дата
Место рождения
Текстовый
Индекс
Числовой
Адрес проживания
Текстовый
Телефон
Текстовый
Выход на пенсию
Дата
Таблица "Образование"
Код
Счетчик
Учебное заведение
Текстовый
Наименование заведения
Текстовый
Вид обучения
Текстовый
Факультет
Текстовый
Образование
Текстовый
Документ
Текстовый
Специальность
Текстовый
Квалификация
Текстовый
Номер
Числовой
Дата выдачи
Дата
Таблица "Работа"
Общий стаж работы
Числовой
Непрерывный стаж работы
Числовой
Последнее место работы
Текстовый
Профессия(Должность)
Текстовый
Дата увольнения
Дата
Причина увольнения
Текстовый
Таблица "ВУС"
Годность к военной службе
Текстовый
Обязанность
Текстовый
Группа войск
Текстовый
Категория запаса
Текстовый
Состав
Текстовый
Воинское звание
Текстовый
Военно-учётная специальность
Текстовый
Состоит на спецучёте номер
Числовой
Наименование военкомата по месту жительства
Текстовый
Номер военного билета
Текстовый
Выдан
Дата
Структура 6 второстепенных таблиц представлена в табл.2.
Таблица 2
Структура второстепенных таблиц
Список полей
Тип поля
Таблица "Семейное положение"
Семейное положение
Текстовый
код
Счетчик
Таблица "Пол"
Пол
Текстовый
код
Счетчик
Таблица "Зарегистрирован"
Зарегистрирован
Текстовый
код
Счетчик
Таблица "Годность к военной службе"
Годность к военной службе
Текстовый
код
Счетчик
Таблица "Обязанность"
Обязанность
Текстовый
код
Таблица "Воинское звание"
Воинское звание
Текстовый
код
Счетчик
Для разработки программного продукта была выбрана система визуального программирования Borland Delphi 7.0, основой которого является язык программирования Object Pascal. Данная система была выбрана по нескольким критериям. Во-первых, она за долгие годы использования зарекомендовала себя как наиболее удобное, надежное и гибкое средство разработки приложений баз данных. Во-вторых, Borland Delphi 7.0 имеет широкие возможности по проектированию приложений различной сложности, предоставляет разработчику удобные средства осуществления различных методов обработки информации. В-третьих, эта система поддерживает широкий спектр технологий, применяемых как для доступа к данным, так и для организации взаимодействия создаваемой программы с другими объектами операционной системы Windows. Кроме того, Object Pascal, является высоко структурированным языком программирования, что значительно упрощает разработку подобных приложений.
Для установки работы на компьютере данного программного продукта должна быть установлена операционная система Windows 98 SE / ME / 2000/XP.
Минимальный набор технических средств для работы программы:
компьютер на базе процессора Intel 486 DX 4-100 и выше;
FDD 3.5 или CD-ROM для установки программного продукта на компьютер;
ОЗУ - не менее 32-х Мегабайт памяти.
свободное дисковое пространство - не менее 2-х Мегабайт для установки программы + размер базы данных.
SVGA-монитор c поддержкой режима минимум 800х600 точек.
Клавиатура, мышь.
Принтер (для распечатки отчетов).
Разработка программы
Для разработки программы "Автоматизированная система начальника отдела кадров учреждения" используется среда визуального программирования Delphi. Проект программы содержит 10 окон:
Form1 - главная форма;
Form2 - вносятся общие сведенья о сотруднике;
Form3 - вносятся паспортные данные и прописка;
Form4 - вносятся сведенья об образование;
Form5 - вносятся сведения о работе;
Form6 - вносятся сведенья о военной службе;
Form7 - поиск информации по базе данных;
Form8 - редактирование информации в базе данных;
1
2
3
Окно Form1. (рис.4).
Рис.4 "Картотека работников"
Таблица 3
№
Компонент
Свойства
Событие
Form1
Caption - Картотека работников;
Align - al Custom;
Anchors - akLeft, akTop, akRight, akBottom;
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;
OnCreative - FormCreate;
1
TMainMenu
Смотрите схему 1
N4Click - закрывает программу;
N5Click - открывает форму "Поиск";
N7Click - открывает форму "Сведенья о сотруднике";
N2Click - открывает форму "Редактирование";
N1Click - вызывает подсказку о программе;
N8Click - вызывает сведения о создателе.
2
PopupMenu
Items
Нет
3
ActionList
Нет
1 - компонент TMainMenu.
Свойства:
Схема 1
Items
Файл (N1) Поиск(N5) Начало работы (N6) О программе(N12)
Выход (N4) Сведения о сотруднике(N7) Помощь(N1)
Редактирование(N2) Создатель(N8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
29
30
31
32
33
34
23
24
25
26
27
28
Окно Form2 заносятся общие сведенья о сотруднике. (Рис.5).
28 27 26 25 24 23
Таблица 4
№
Компонент
Свойства
Событие
Form2
Caption - Сведения о сотрудниках;
BorderIcons - biSystemMenu;
BorderStyle - bsToolWindow;
ClientHeight - 468;
ClientWidth - 844;
Color - clBtnFace;
Font - Tfont [MS Sans Serif] ;
OldCreateOrder - False;
Position - poScreenCenter;
OnCreative - FormCreate;
1
Tlabel1
Caption - Фамилия
Нет
2
Tlabel2
Caption - Имя
Нет
3
Table1
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password=""; Data Source=Саша. mdb; Persist Security Info=True;
Table Name - Семейное положение;
Нет
4
Tlabel4
Caption - Отчество
Нет
5
Table6
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password=""; Data Source=Саша. mdb; Persist Security Info=True;
Table Name - Семейное положение;
Нет
6
Tlabel5
Caption - Семейное положение
Нет
7
DataSource2
Data Set - Table6;
Data Set - Table6;
8
Tlabel5
Caption - Гражданство
Нет
9
Table7
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password=""; Data Source=Саша. mdb; Persist Security Info=True;
Нет
10
Tlabel6
Table Name - Пол;
Нет
11
Tlabel7
Caption - Пол.
Нет
12
Tlabel8
Caption - Номер страхового свидетельства.
Нет
13
Tlabel10
Caption - Номер медполиса.
Нет
14
Tlabel11
Caption - Компания выдавшая медполис.
Нет
15
Tlabel12
Caption - Адрес компании выдавшей медполис.
Нет
16
DataSource3
Data Set - Table7;
Data Set - Table7;
17
DBLookupComboBox2
Data Field - Пол;
Data Sourse - DataSource1;
Key Field - Пол;
List Field - Пол;
List Source - DataSource3;
Data Sourse - DataSource1;
List Source - DataSource3;
18
DBEdit5
Data Field - Номер страхового свидетельства;
Data Sourse - DataSource1;
Data Sourse - DataSource1;
19
DateTimePicker1
Date - 04.06. 2005;
Tab Order - 15;
Time - 11: 10: 53;
Нет
20
Mask Edit1
EditMask - ! 999999; 0;
Нет
21
DBEdit9
Data Field - Компания выдавшая медполис;
Data Sourse - DataSource1;
Data Sourse - DataSource1;
22
DBEdit10
Data Field - Адрес компании выдавшей медполис;
Data Sourse - DataSource1;
Data Sourse - DataSource1;
23
Button6
Caption - Выход
OnClick - Button6Click.
24
Button5
Caption - Внести
Enabled - False;
OnClick - Button5Click.
25
Button4
Caption - ВУС;
Enabled - False;
OnClick - Button4Click.
26
Button3
Caption - Работа
Enabled - False;
OnClick - Button3Click
27
Button2
Caption - Образование
Enabled - False;
OnClick - Button2Click.
28
Button1
Caption - Паспорт
Enabled - False;
OnClick - Button1Click.
29
DBEdit1
Data Field - Фамилия
Data Sourse - DataSource1;
Data Sourse - DataSource1;
OnKeyPress - dbedit1KeyPress.
30
DBEdit2
Data Field - Имя
Data Sourse - DataSource1;
Data Sourse - DataSource1;
OnKeyPress - dbedit2KeyPress.
31
DBEdit3
Data Field - Гражданство;
Data Sourse - DataSource1;
Data Sourse - DataSource1;
OnKeyPress - dbedit3KeyPress.
32
DBLookupComboBox1
Data Field - Семейное положение;
Data Sourse - DataSource1;
Key Field - Семейное положение;
List Field - Семейное положение;
List Source - DataSource2;
Data Sourse - DataSource1;
List Source - DataSource2;
33
DBEdit4
Data Field - Отчество;
Data Sourse - DataSource1;
Data Sourse - DataSource1;
OnKeyPress - dbedit4KeyPress.
Окно Form3 заносятся паспортные данные. (Рис.6).
Рис.6. Окно программы - "Паспорт"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Таблица 5
№
Компонент
Свойства
Событие
Form3
Caption - Паспорт;
BorderIcons - biSystemMenu;
BorderStyle - bsToolWindow;
ClientHeight - 298;
ClientWidth - 783;
Color - clBtnFace;
Font - Tfont [MS Sans Serif] ;
OldCreateOrder - False;
Position - poScreenCenter;
OnCreative - FormCreate;
1
Tlabel2
Caption - Серия.
Нет
2
Tlabel3
Caption - Номер.
Нет
3
Tlabel4
Caption - Выдан.
Нет
4
Tlabel5
Caption - Зарегесрирован.
Нет
5
Tlabel6
Caption - По адресу.
Нет
6
DataSource1
Data Set - Table2
Data Set - Table2
7
DataSource2
Data Set - Table8
Data Set - Table8
8
Table2
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password=""; Data Source=Саша. mdb; Persist Security Info=True;
Table Name - Паспорт;
Нет
9
Table8
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password=""; Data Source=Саша. mdb; Persist Security Info=True;
Table Name - Зарегестрирован;.
Нет
10
Button1
Caption - Внести;
OnClick - Button1Click
11
DBEdit5
Data Field - По адресу;
Data Sourse - DataSource1;
Data Sourse - DataSource1;
12
DBLookupComboBox1
Data Field - Зарегистрирован;
Data Sourse - DataSource1;
Key Field - Зарегистрирован;
List Field - Зарегистрирован;
List Source - DataSource2;
Data Sourse - DataSource1;
List Source - DataSource2;
13
DBEdit4
Data Field - Выдан;
Data Sourse - DataSource1;
Data Sourse - DataSource1;
14
Mask Edit2
EditMask - ! 999999; 0;
Нет
15
Mask Edit1
EditMask - ! 999999; 0;
Нет
16
Tlabel6
Caption - Выход на пенсию.
Нет
17
Tlabel6
Caption - Телефон.
Нет
18
Tlabel6
Caption - Адрес проживания.
Нет
19
Button2
Caption - Выход
OnClick - Button2Click.
20
DBEdit8
Data Field - Адрес проживания
Data Sourse - DataSource1;
Data Sourse - DataSource1;
21
DBEdit9
Data Field - Телефон
Data Sourse - DataSource1;
Data Sourse - DataSource1;
22
DBEdit1
Data Field - Выход на пенсию;
Data Sourse - DataSource1;
23
Mask Edit3
EditMask - ! 999999; 0;
Нет
24
DateTimePicker1
Date - 04.06. 2005;
Tab Order - 15;
Time - 11: 10: 53;
Нет
25
Tlabel7
Caption - Дата рождения (формат дн. мц. гггг.).
Нет
26
Tlabel8
Caption - Индекс.
Нет
Окно Form4 заносятся данные по образованию. (Рис.7).
Рис.7. Окно программы - "Образование"
Таблица 6
№
Компонент
Свойства
Событие
Form4
Caption - Образования;
BorderIcons - biSystemMenu;
BorderStyle - bsToolWindow;
ClientHeight - 436;
ClientWidth - 804;
Color - clBtnFace;
Font - Tfont [MS Sans Serif] ;
OldCreateOrder - False;
Position - poScreenCenter;
OnCreative - FormCreate;
1
Tlabel1
Caption - Код сотрудника
Нет
2
Tlabel2
Caption - Учебное заведение.
Нет
3
Tlabel3
Caption - Наименование заведения.
Нет
4
Tlabel4
Caption - Вид обучения.
Нет
5
Tlabel5
Caption - Факультет.
Нет
6
Tlabel6
Caption - Вид образования.
Нет
7
DataSource1
Data Set - Table3
Data Set - Table3
8
Table3
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password=""; Data Source=Саша. mdb; Persist Security Info=True;
Table Name - Образование;
Нет
9
DBGrid1
DataSource - DataSource1.
DataSource - DataSource1.
10
Edit6
Text - очистить.
Нет
11
Edit5
Text - очистить.
Нет
12
Edit4
Text - очистить.
Нет
13
Edit3
Text - очистить.
Нет
14
Edit2
Text - очистить
OnKeyPress - Edit2KeyPress
15
Edit1
Text - очистить
OnKeyPress - Edit1KeyPress
16
Button1
Caption - Внести;
OnClick - Button1Click.
17
Tlabel11
Caption - Дата выдачи (формат дн. мц. гггг.)
Нет
18
Tlabel10
Caption - Номер.
Нет
19
Tlabel9
Caption - Квалификация.
Нет
20
Tlabel8
Caption - Специальность.
Нет
21
Tlabel7
Caption - Документ.
Нет
22
Button2
Caption - Выход;
OnClick - Button2Click
23
DateTimePicker1
Date - 04.06. 2005;
Tab Order - 15;
Time - 11: 10: 53;
Нет
24
Edit10
Text - очистить
Нет
25
Edit9
Text - очистить
Нет
26
Edit8
Text - очистить
Нет
27
Edit7
Text - очистить
Нет
Окно Form5 заносятся данные по работе. (Рис.8).
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Рис.8 Окно программы - "Работа"
Таблица 7
№
Компонент
Свойства
Событие
Form5
Caption - Работа;
BorderIcons - biSystemMenu;
BorderStyle - bsToolWindow;
ClientHeight - 283;
ClientWidth - 750;
Color - clBtnFace;
Font - Tfont [MS Sans Serif] ;
OldCreateOrder - False;
Position - poScreenCenter;
OnCreative - FormCreate;
1
Tlabel1
Caption - Общий стаж работы.
Нет
2
Tlabel2
Caption - Непрерывный стаж работы.
Нет
3
Tlabel3
Caption - Последнее место работы.
Нет
4
Table4
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password="";
Data Source=Саша. mdb; Persist Security Info=True;
Table Name - Работа;
Нет
5
DataSource1
Data Set - Table4;
Data Set - Table4;
6
Button1
Caption - Внести;
OnClick - Button1Click.
7
DBEdit3
Data Field - Последнее место работы;
Data Sourse - DataSource1.
Data Sourse - DataSource1.
8
DBEdit2
Data Field - Непрерывный стаж работы;
Data Sourse - DataSource1.
Data Sourse - DataSource1. OnKeyPress - Edit2KeyPress;
9
DBEdit1
Data Field - Общий стаж работы;
Data Sourse - DataSource1.
Data Sourse - DataSource1. OnKeyPress - Edit1KeyPress;
10
Tlabel4
Caption - Причина увольнения.
Нет
11
Tlabel5
Caption - Дата увольнения (формат дн. мц. гггг.).
Нет
12
Tlabel6
Caption - Профессия(Должность).
Нет
13
Button2
Caption - Выход;
OnClick - Button2Click.
14
DBEdit6
Data Field - Причины увольнения;
Data Sourse - DataSource1.
Data Sourse - DataSource1.
15
DBEdit5
Data Field - Дата увольнения;
Data Sourse - DataSource1.
Data Sourse - DataSource1.
16
DBEdit4
Data Field - Профессия (Должность);
Data Sourse - DataSource1.
Data Sourse - DataSource1. OnKeyPress - Edit4KeyPress;
Окно Form6 заносятся сведенья о военной службе. (Рис.9).
Рис.9. Окно программы - "ВУС"
Таблица 8
№
Компонент
Свойства
Событие
Form5
Caption - ВУС;
BorderIcons - biSystemMenu;
BorderStyle - bsToolWindow;
ClientHeight - 724;
ClientWidth - 1024;
Color - clBtnFace;
Font - Tfont [MS Sans Serif] ;
OldCreateOrder - False;
Position - poScreenCenter;
OnCreative - FormCreate;
1
Tlabel1
Caption - Годность к военной службе.
Нет
2
Tlabel2
Caption - Обязанность.
Нет
3
Tlabel3
Caption - Группа войск.
Нет
4
Tlabel4
Caption - Категория запаса
Нет
5
Tlabel5
Caption - Состав.
Нет
6
Tlabel6
Caption - Воинское звание.
Нет
7
Table9
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password="";
Data Source=Саша. mdb; Persist Security Info=True;
Table Name - Годность к военной службе;
Нет
8
Table11
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password="";
Data Source=Саша. mdb; Persist Security Info=True;
Table Name - Воиннское звание;
Нет
9
Table10
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password="";
Data Source=Саша. mdb; Persist Security Info=True;
Table Name - Обязаность;
Нет
10
Table5
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password="";
Data Source=Саша. mdb; Persist Security Info=True;
Table Name - ВУС;
Нет
11
DataSource2
Data Set - Table9
Data Set - Table9
12
DataSource4
Data Set - Table11
Data Set - Table11
13
DataSource3
Data Set - Table10
Data Set - Table10
14
DataSource1
Data Set - Table5;
Data Set - Table5;
15
DBLookup
ComboBox3
Data Field - Воинское звание;
Data Sourse - DataSource1;
Key Field - Воинское звание;
List Field - Воинское звание;
List Source - DataSource4;
Data Sourse - DataSource1;
List Source - DataSource4;
16
Button1
Caption - Внести;
OnClick - Button1Click.
17
Tlabel11
Caption - Выдан.
Нет
18
Tlabel10
Caption - Номер военного билета.
Нет
19
Tlabel9
Caption - Наименование военкомата по месту жительства.
Нет
20
Tlabel8
Caption - Состоит на спецучете.
Нет
21
Tlabel7
Caption - Военно-учётная специальная номер.
Нет
22
Button2.
Caption - Выход;
OnClick - Button2Click.
23
DateTimePicker1.
Date - 04.06. 2005;
Tab Order - 15;
Time - 11: 10: 53;
Нет
24
DBEdit7.
Data Field - Номер военного билета;
Data Sourse - DataSource1
Data Sourse - DataSource1
25
DBEdit6
Data Field - Наименование военкомата по месту жительства;
Data Sourse - DataSource1
Data Sourse - DataSource1
26
DBEdit5
Data Field - Состоит на спецучете номер;
Data Sourse - DataSource1
Data Sourse - DataSource1
27
DBEdit4
Data Field - Военно-учетная специальность
номер;
Data Sourse - DataSource1
Data Sourse - DataSource1
28
DBEdit3
Data Field - Состав;
Data Sourse - DataSource1
Data Sourse - DataSource1
29
DBEdit2
Data Field - Категория запаса;
Data Sourse - DataSource1
Data Sourse - DataSource1
30
DBEdit3
Data Field - Группа войск;
Data Sourse - DataSource1
Data Sourse - DataSource1
31
DBLookupComboBox2
Data Field - Обязанность;
Data Sourse - DataSource1;
Key Field - Обязанность;
List Field - Обязанность;
List Source - DataSource3
Data Sourse - DataSource1
List Source - DataSource3
32
DBLookupComboBox1
Data Field - Годность к военной служб;
Data Sourse - DataSource1;
Key Field - Годность к военной служб;
List Field - Годность к военной служб;
List Source - DataSource2;
Data Sourse - DataSource1;
List Source - DataSource2;
Окно Form7 поиск информации по базе данных. (Рис.10).
Рис.10 Окно программы - "Поиск"
Таблица 9
№
Компонент
Свойства
Событие
Form7
Caption - Поиск;
BorderIcons - biSystemMenu;
BorderStyle - bsToolWindow;
ClientHeight - 338;
ClientWidth - 808;
Color - clBtnFace;
Font - Tfont [MS Sans Serif] ;
OldCreateOrder - False;
Position - poScreenCenter;
Нет
1
DBGrid1
DataSource - DataSource1.
DataSource - DataSource1;
DataSource - DataSource1.
2
DBNavigator1
DataSource - DataSource1;
VisibleButtons - nbPrior,nbNext
DataSource - DataSource1.
3
Tlabel1
Caption - Фамилия.
Нет
4
Tlabel2
Caption - Имя.
Нет
5
Tlabel3
Caption - Отчество
Нет
6
Tlabel4
Caption - Серия.
Нет
7
Tlabel5
Caption - Номер.
Нет
8
Tlabel6
Caption - По адресу
Нет
9
ADOQuery1
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password="";
Data Source=Саша. mdb; Persist Security Info=True;
CursorType - ctStatic;
Parameters - (TParameters);
Нет
10
DataSource1
Data Set - ADOQuery1
Data Set - ADOQuery1
11
Edit6
Text - очистить.
OnKeyPress - Edit2KeyPress;
OnKeyPress - Edit2KeyPress;
Нет
12
Edit5
Text - очистить.
OnKeyPress - Edit5KeyPress;
13
Edit4
Text - очистить.
OnKeyPress - Edit4KeyPress;
14
Edit3
Text - очистить.
OnKeyPress - Edit3KeyPress;
15
Edit2
Text - очистить.
OnKeyPress - Edit2KeyPress
16
Edit1
Text - очистить.
OnKeyPress - Edit1KeyPress
17
Tlabel12
Caption - Номер военного билета.
Нет
18
Tlabel11
Caption - Профессия(Должность).
Нет
19
Tlabel10
Caption - Вид образования.
Нет
20
Tlabel9
Caption - Дата рождения (формат дн. мц. гггг.).
Нет
21
Tlabel8
Caption - Номер медполиса.
Нет
22
Tlabel7
Caption - Номер страхового свидетельства.
Нет
23
Edit12
Text - очистить.
Нет
24
Edit11
Text - очистить.
OnKeyPress - Edit11KeyPress
25
Edit10
Text - очистить.
OnKeyPress - Edit12KeyPress
26
Edit9
Text - очистить.
Нет
27
Edit8
Text - очистить.
OnKeyPress - Edit8KeyPress
28
Panel1
Text - очистить.
Нет
29
Button5
Caption - Выход;
OnClick - Button5Click
30
Button4
Caption - Очистить
OnClick - Button4Click.
31
Button3
Caption - Краткий отчёт;
OnClick - Button3Click.
32
Button2
Caption - Полный отчёт;
OnClick - Button2Click.
33
Button1
Caption - Поиск;
OnClick - Button1Click.
34
Edit7
Text - очистить.
OnKeyPress - Edit7KeyPress;
Окно Form8 поиск информации по базе данных. (Рис.11).
Рис.11. Окно программы - "Редактирование"
Таблица 10
№
Компонент
Свойства
Событие
Form7
Caption - Поиск;
BorderIcons - biSystemMenu;
BorderStyle - bsToolWindow;
ClientHeight - 724;
ClientWidth - 1024;
Color - clBtnFace;
Font - Tfont [MS Sans Serif] ;
OldCreateOrder - False;
Position - poScreenCenter;
Нет
1
DBGrid1
DataSource - DataSource1.
DataSource - DataSource1;
DataSource - DataSource1.
2
DBNavigator1
DataSource - DataSource1;
VisibleButtons - nbFirst, nbPrior, bNext, nbLast, nbEdit, nbPost, nbCancel, nbRefresh.
DataSource - DataSource1.
3
Tlabel1
Caption - Фамилия.
Нет
4
Tlabel2
Caption - Имя.
Нет
5
Tlabel3
Caption - Отчество
Нет
6
Tlabel4
Caption - Серия.
Нет
7
Tlabel5
Caption - Номер.
Нет
8
Tlabel6
Caption - По адресу
Нет
9
ADOQuery1
Connection String - Provider=Microsoft. Jet. OLEDB.4.0; Password="";
Data Source=Саша. mdb; Persist Security Info=True;
CursorType - ctStatic;
Parameters - (TParameters);
Нет
10
DataSource1
Data Set - ADOQuery1
Data Set - ADOQuery1
11
Edit6
Text - очистить.
OnKeyPress - Edit2KeyPress;
OnKeyPress - Edit2KeyPress;
Нет
12
Edit5
Text - очистить.
OnKeyPress - Edit5KeyPress;
13
Edit4
Text - очистить.
OnKeyPress - Edit4KeyPress;
14
Edit3
Text - очистить.
OnKeyPress - Edit3KeyPress;
15
Edit2
Text - очистить.
OnKeyPress - Edit2KeyPress
16
Edit1
Text - очистить.
OnKeyPress - Edit1KeyPress
17
Tlabel12
Caption - Номер военного билета.
Нет
18
Tlabel11
Caption - Профессия(Должность).
Нет
19
Tlabel10
Caption - Вид образования.
Нет
20
Tlabel9
Caption - Дата рождения (формат дн. мц. гггг.).
Нет
21
Tlabel8
Caption - Номер медполиса.
Нет
22
Tlabel7
Caption - Номер страхового свидетельства.
Нет
23
Edit12
Text - очистить.
Нет
24
Edit11
Text - очистить.
OnKeyPress - Edit11KeyPress
25
Edit10
Text - очистить.
OnKeyPress - Edit12KeyPress
26
Edit9
Text - очистить.
Нет
27
Edit8
Text - очистить.
OnKeyPress - Edit8KeyPress
28
Panel1
Text - очистить.
Нет
29
Button3
Caption - Выход;
OnClick - Button3Click
30
Button2
Caption - Сохранить
OnClick - Button2Click
31
Button4
Caption - Очистить
OnClick - Button4Click
32
Button1
Caption - Поиск
OnClick - Button1Click
33
Edit7
Text - очистить.
OnKeyPress - Edit7KeyPress;
Обработчик Form2. Button5Click.
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;
При нажатие кнопки программа проверяет заполнения полей, в случае не заполнения их, выводится сообщение. Если все поля заполнены правильно таблица активизируется и данные заносятся в неё. Так же разблокируются кнопки button1, button2, button3, button4.
Обработчик Form8. Button1Click
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;
При нажатие кнопки проверяет заполнения полей, в случае не заполнения их, выводится сообщение: "Вы не внесли критерии поиска". Если задан критерий, то по нему введётся поиск
Специфика программы
Исполняемый файл программы "Автоматизированная система начальника отдела кадров учреждения" имеет название BazaDann,exe.
Таблица 11
Наименование
Обозначение
Примечание
HELP
Файл помощник
Содержит пояснительную информацию
Project1. dof
Файл параметров проекта
Содержит текущие установки проекта: настройки компилятора и компоновщика, имена служебных каталогов, условные директивы
Project1. dpr
Файл проекта
Связывает все файлы из, которых состоит проект
Project1. res
Файл ресурсов
Содержит пиктограммы, графические рисунки
Unit1. pas
Файл программного модуля для формы №1
Определяет функциональность для формы №1
Unit2. pas
Файл программного модуля для формы №2
Определяет функциональность для формы №2
Unit3. pas
Файл программного модуля для формы №3
Определяет функциональность для формы №3
Unit4. pas
Файл программного модуля для формы №4
Определяет функциональность для формы №4
Unit5. pas
Файл программного модуля для формы №5
Определяет функциональность для формы №5
Unit6. pas
Файл программного модуля для формы №6
Определяет функциональность для формы №6
Unit7. pas
Файл программного модуля для формы №7
Определяет функциональность для формы №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
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
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)
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;
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;
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.
Программа содержит 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 точек.
Клавиатура, мышь.
Принтер (для распечатки отчетов).
При запуске программы открывается главная форма "Картотека работников", на которой располагается строка Главного меню, содержащая пункты: "Файл", "Поиск", "Начать работу", "О программе".
Пункт "Файл" содержит подпункт "Выход", выбор которого позволяет выйти из программы.
При нажатии на пункт "Поиск" запускается форма "Поиск". На этой форме находятся 12 текстовых полей: "Фамилия", "Имя", "Отчество", "Серия" и "Номер" паспорта, "По адресу", "Номер медполиса", "Номер страхового свидетельства", "Дата рождения", "Образование", "Профессия (Должность)", "Номер военного билета", - в них вносятся данные на сотрудника или рабочего, которые должны быть найдены. После заполнения этих полей и нажатия кнопки "Поиск" производится поиск в базе данных. Результаты поиска отображается в сетки таблицы, расположенной на этой форме. Если ни одно текстовое поле не заполнено, то выдаётся сообщение "Вы не внесли критерии поиска". После выполнения поиска по получены данным на сотрудника или работника предприятия можно получить два вида отчётов. Для получения полного отчёта по сотруднику нужно нажать кнопку "Полный отчёт". Для получения краткого отчёта по сотруднику нужно нажать кнопку "Краткий отчёт". Для обнуления результатов поиска надо нажать кнопку "Очистить". Для выхода из формы "Поиск" следует нажать кнопку "Выход".
В пункте "Начать работу" находятся два подпункта: "Сведения о сотрудниках" и "Редактирование"
При выборе подпункта "Сведения о сотрудниках" открывается форма "Сведения о сотрудниках", на которой находятся следующие текстовые поля для заполнения: "Фамилия", "Имя", "Отчество", "Гражданство" (в них можно вводить только русские буквы), "Семейное положение" (раскрывающийся список из которого можно выбрать: "холост", "женат", "не замужем", "замужем"), "Пол" (раскрывающийся список из которого можно выбрать: "муж" или "жен"), "Номер страхового свидетельства" (вводится в это поле только цифры), "Дата выдачи страхового свидетельства" (в него вносится дата, имеющий формат, д.н.мц. гггг.), "Номер медполиса" (вводятся только числа), "Компания выдававшая медполис", "Адрес компании выдавшей медполис". Чтобы занести введённую запись в базу данных, нажимаем на кнопку "Внести" (которая находится в правой стороне форме, в колонке из шести кнопок: "Паспорт", "Образование", "Работа", "ВУС", "Внести", "Выход"). После нажатия на кнопку "Внести" производится проверка наличия внесённых обязательных данных (к ним относятся: "Фамилия", "Имя", "Отчество", "Гражданство", "Пол", "Семейное положение", "Номер страхового свидетельства", "Дата выдачи страхового свидетельства", "Номер медполиса", "Компания выдававшая медполис", "Адрес компании выдавшей медполис". Если не все они внесены, то выводится сообщение, какие именно обязательные данные не заполнены, а сами данные в базу данных не заносятся. Если все данные заполнены без ошибок, то они вносятся в базу данных. После нажатия кнопки "Внести" активируются кнопки "Паспорт", "Образование", "Работа", "ВУС", которые до этого были заблокированы. При нажатие на кнопку "Выход" форма "Сведения о сотрудниках" закрывается.
При нажатие на кнопку "Паспорт" открывается форма "Паспорт", на которой находятся текстовые поля: "Серия" (вводятся только 4 цифры), "Номер"(вводятся только 6 цифры), "Выдан", "Зарегистрирован"(раскрывающийся список из которого можно выбрать: временно или постоянно), "По адресу", "Дата рождения" (в него вносится дата, имеющий формат. д.н.мц. гггг.), "Место рождения", "Индекс" (вводятся только 6 цифры), "Адрес проживание", "Телефон", "Выход на пенсию" (в него вносится дата, имеющий формат. д.н.мц. гггг.), после заполнения этих полей нажимается кнопка "Внести". После нажатия на кнопку "Внести" производится проверка наличия внесённых обязательных данных (к ним относятся: "Серия", "Номер", "Выдан", "Зарегистрирован", "По адресу", "Дата рождения","Индекс". Если не все они внесены, то выводится сообщение, какие именно обязательные данные не заполнены, а сами данные в базу данных не заносятся. Если все данные заполнены без ошибок, то они вносятся в базу данных. При нажатии на кнопку "Выход" форма "Паспорт" закрывается.
При нажатии кнопки "Образование" открывается форма "Образование", на которой отображается таблица "Образование". Так же на ней находятся текстовые поля: "Код" (в него вносится код сотрудника или рабочего для образования), "Учебное заведение", "Наименование заведения", "Вид обучения", "Факультет", "Вид образования", "Документ", "Специальность", "Квалификация", "Номер", "Дата выдачи" (в него вносится дата, имеющий формат. д.н.мц. гггг.), после заполнения этих полей нажимается кнопка "Внести". В случае если сотрудник или рабочий предприятия имеет несколько образований то повторяется порядок действий (описанный выше), а в текстовое поле "Код" вносится код этого сотрудника или рабочего. При нажатие на кнопку "Выход" форма "Паспорт" закрывается.
При нажатие кнопки "Работа" открывается форма "Работа", на который находятся текстовые поля: "Общий стаж" (вводятся цифры), "Непрерывный стаж" (вводятся цифры), "Последнее место работы", "Профессия (Должность)", "Дата увольнения" (в него вносится дата, имеющий формат дн. мц. гггг.), "Причина увольнения" - после заполнения этих полей нажимается кнопка "Внести". После нажатия на кнопку "Внести" производится проверка наличия внесённых обязательных данных (к ним относятся: "Профессия (Должность)". Если не все они внесены, то выводится сообщение, какие именно обязательные данные не заполнены, а сами данные в базу данных не заносятся. Если все данные заполнены без ошибок, то они вносятся в базу данных. При нажатии на кнопку "Выход" форма "Паспорт" закрывается.
При нажатии кнопки "ВУС" открывается форма "ВУС", на которой располагаются текстовые поля: "Годность к военной службе" (раскрывающийся список из которого можно выбрать: "годен", "не годен", "ограничено годен"), "Обязанность" (раскрывающийся список из которого можно выбрать: "военнообязан", "военнослужащий", "не военнообязан"), "Группа войск", "Категория запаса", "Состав", "Воинское звание" (раскрывающийся список из которого можно выбрать звание), "Военно-учётная специальность (номер)" (вводится 6 цифр), "Состоит на спецучёте (номер)", "Наименование военкомата по месту жительства", "Номер военного билета", "Выдан" (в него вносится дата, имеющий формат мц. дн. гггг.), после заполнения этих полей нажимается кнопка "Внести". После нажатия на кнопку "Внести" производится проверка наличия внесённых обязательных данных (к ним относятся: "Годность к военной службе", "Обязанность". Если не все они внесены, то выводится сообщение, какие именно обязательные данные не заполнены, а сами данные в базу данных не заносятся. Если все данные заполнены без ошибок, то они вносятся в базу данных. При нажатии на кнопку "Выход" форма "Паспорт" закрывается.
При нажатии на пункт "Редактировать" открывается форма "Редактировать". На этой форме находятся 12 текстовых полей: "Фамилия", "Имя", "Отчество", "Серия" и "Номер" паспорта, "По адресу", "Номер медполиса", "Номер страхового свидетельства", "Дата рождения", "Образование", "Профессия (Должность)", "Номер военного билета", - в них вносятся данные на сотрудника или рабочего которые должны быть найдены. Позже по этим полям после нажатия кнопки "Поиск" введётся поиск по базе данных. Результаты поиска отображается в сетки таблицы расположенной на этой форме. Если ни одно текстовое поле не заполнено выдаётся сообщение "Вы не внесли критерии поиска". После выполнения поиска по получены данным на сотрудника или работника предприятия можно эти данные редактировать. После редактирования данных нужно нажать кнопку "Сохранить". Для обнуления результатов поиска надо нажать кнопку "Очистить". Для выхода из формы "Поиск" следует нажать кнопку "Выход".
Использую пункт "Помощь" можно получить информацию о программе.
В пункте "Создатель" можно просмотреть сведенья о разработчике программы.
Литература
1.Архангельский А.Я. Delphi 7. Справочное пособие. - М.: ЗАО "Издательство БИНОП", 2005 г.
2.Карпова.Г.С. - Базы данных: модели, разработка, реализация - СПб.: Питер, 2005 г.
3.Кириллов В.В. Структурированный язык запросов (SQL). - СПб.: ИТМО, 2004 г. - 80 с.
4.Фаронов В.В. - Delphi "Программирование на языке высокого уровня" - СПб: "ПИТЕР", 2005г.
5.Фаронов В.В. - Программирование баз данных в Delphi 6: учебный курс - СПб.: Питер, 2004 г.
6.Хомоненко.А.Д., Цыганков В.М., Мальцев В. Г - Базы данных: Учебник для высших учебных заведений - СПб.: КОРОНА принт, 2005 г.

Нравится материал? Поддержи автора!
Ещё документы из категории информатика:
Чтобы скачать документ, порекомендуйте, пожалуйста, его своим друзьям в любой соц. сети.
После чего кнопка «СКАЧАТЬ» станет доступной!
Кнопочки находятся чуть ниже. Спасибо!
Кнопки:
Скачать документ