РефератыИнформатика, программированиеРаРазработка базы данных Кадры

Разработка базы данных Кадры

усский
гуманитарно-технический
колледж



«Тантал»

Факультет
технической
кибернетики


«Утверждаю»


Зав. кафедрой


факультета
технической



кибернетики


__________________________



«_____»_____________2001 г.


Дипломная
работаСтудента
Жучкова М.Ю.
рег. номер
___________
Тема:
Разработка
базы данных
«Кадры»

Руководитель:
____________/
/

Рецензент:
_______________/ /



2001 г.



г. Москва




Оглавление:

1.
Введение 3-4


2.
Основная часть.



Разработка
базы данных
«Кадры»


2.1
Описание предметной
области 5-8


2.2
Построение
инфологической
и даталогической
модели 9-28


2.3
Проектирование
базы данных 29-37


2.4
Разработка
приложения 38-43


3.
Охрана труда 44-46


4.
Заключение 47


5.
Библиографический
список 48


6.
Приложение 49-87


7.
Графический
материал 88-93



1. ВВЕДЕНИЕ


Открытое
акционерное
общество
«Судостроительный
завод «Лотос»
предназначен
для строительства
морских буровых
стационарных
платформ разведки
и добычи нефти
и строительства
судов различного
назначения.
Предприятие
располагает
большими техническими
возможностями
(до 30000 тонн металла
в год) и квалифицированными
кадрами, аттестовано
на класс Речного
Регистра, Морского
Регистра Судоходства,
а также Германского
Ллойда.



ОАО «ССЗ
«ЛОТОС» предлагает
к изготовлению:



технические
средства для
освоения газовых
и нефтяных
месторождений
на шельфе мирового
океана и внутренних
морей;



сухогрузные
и нефтеналивные
суда различного
района плавания
- морского, речного
и смешанного
«река – море»
(спусковой вес
около 15000 т);



вспомогательные
суда различного
назначения;



суда технического
флота.


В данной
дипломной
работе осуществлена
разработка
базы данных
для отдела
кадров.



Автоматизация
подсистемы
управления
кадрами является
одной из важнейших
частей автоматизации
производственно-хозяйственной
деятельности
предприятия.



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



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



2. ОСНОВНАЯ
ЧАСТЬ


Разработка
базы данных
«Кадры»


2.1 Описание
предметной
области


Предметной
областью называется
часть реального
мира, представляющая
интерес для
данного исследования
(использования)
[1].



Вкратце
рассмотрим
схему работы
отдела кадров.
Инспектор
отдела кадров
заполняет
личное дело
сотрудника
данными. В список
анкетных данных
входят:



- фамилия;



- имя;



- отчество;



- табельный
номер;



- страховой
номер;



- пол;



- дата рождения;



- место рождения;



- национальность;



- социальное
происхождение;



- гражданство;



- образование;



- название
учебного заведения;



- форма обучения;



- год окончания
учебного заведения;



- диплом
(серия, номер);



- квалификация
по диплому;



- специальность
по диплому;



- образование
(дополнительное);



- вид найма;



- вид работы;



- ученая
степень;



- ученое
звание;



- узкая
специальность;



- владение
иностранными
языками;



- наличие
судимости;



- семейное
положение;



- состав
семьи;



- состоит
ли в профсоюзе;



- имеет ли
группу инвалидности;



- является
ли пенсионером;



- является
ли участником
войны;



- домашний
почтовый индекс;



- район
проживания;



- область;



- домашний
адрес;



- домашний
телефон;



- паспортные
данные
(серия,
номер, кем выдан,
прописка);



- воинская
обязанность;



- воинское
звание;



- номер
военно-учетной
специальности;



- военный
билет (серия,
номер);



- годность
к военной службе;



- отношение
к бронированию;



- наличие
моб. предписания;



- группа
учета;



- категория
учета;



- к какому
райвоенкомату
причислен;



- дата начала
срочной службы



- дата окончания
срочной службы;



- дата последнего
прохождения
мед. комиссии;



- данные
трудовой книжки;



- данные о
назначениях
и перемещениях;



- квалификационный
разряд;



- учреждение;



- подразделение;



- текущая
должность;



- дата приема
на работу;



- дата окончания
испытательного
срока;



- информация
о командировках;



- информация
об отпусках;



- дата увольнения;



- ИНН;



- серия
свидетельства
налогоплательщика;



- номер
свидетельства
налогоплательщика;



- дата выдачи
свидетельства
налогоплательщика.



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



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


2.2 Построение
инфологической
и даталогической
модели


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



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



Для описания
инфологической
модели были
использованы
графические
средства.



Описание
связи «объект-свойство»
изображено
на рис. 2.2.1 графического
материала.



База данных
«Кадры» разрабатывается
для хранения
текстовой
информации
(хотя для удобства
ввода некоторые
поля таблиц
– числовые),
поэтому в приложении
не будут применены
вычисления
введенных
оператором
данных.



Даталогическая
модель является
моделью логического
уровня и представляет
собой отображение
логических
связей между
элементами
данных безотносительно
к их содержанию
и среде хранения.
Эта модель
строится в
терминах
информационных
единиц, допустимых
в той конкретной
СУБД, в среде
которой мы
проектируем
базу данных
[1].



Отделу кадров
ОАО «ССЗ «Лотос»
необходимо
решать следующие
задачи:



Регистрация
новых сотрудников.



Уточнение
данных по
существующим
сотрудникам.



Удаление
сотрудников.



Опишем задачи,
заполнив рабочий
бланк №1.



В рабочий
бланк задачи
нужно занести
имя каждого
элемента данных,
его использование
и краткое описание
этого элемента.
При заполнении
столбца «Использование»
рабочего бланка
применяются
пять обозначений
- I,O,U,D, и C. Это первые
буквы слов
Input(Ввод), Output(Вывод),
Update(Изменения),
Delete(Удаление),
Calculate(Вычисления).
В столбец «Объект»
записывается
имя объекта.



В качестве
имен элементов/объектов
подберем краткий
английский
перевод описания
этих элементов/объектов.








































































































































































































































































































































































































































































































































































































































































































































































РАБОЧИЙ
БЛАНК №1 ОПИСАНИЯ
ЗАДАЧ



Наименование
задачи:


Анкетные
данные сотрудников

Краткое
описание:



Регистрация
новых сотрудников.


Уточнение
данных по
существующим
сотрудникам.


Удаление.



Список
связанных
задач:



Ввод,
изменения,
анкетных данных.


Имя
элемента данных



Использование



Описание



Объект


Organic number I, U Табельный
номер сотрудника
Stuff
Insurance number I, U Страховой
номер
Stuff
Surname I, U Фамилия Stuff
Name I, U Имя Stuff
Patronymic name I, U Отчество Stuff
Sex I, U Пол Stuff
Date of birth I, U Дата
рождения
Stuff
Birthplace I, U Место
рождения
Stuff
Nationality I, U Национальность Stuff
Social origin I, U Социальное
происхождение
Stuff
Citizenship I, U Гражданство Stuff
Education I, U Образование Stuff
Education institution I, U Название
учебного заведения
Stuff
Form of training I, U Форма
обучения
Stuff
Year of the ending I, U Год
окончания
Stuff
Diploma I, U Диплом
(серия)
Stuff
Qualification I, U Квалификация
по диплому
Stuff
Speciality I, U Специальность
по диплому
Stuff

Amount
education additional


O Количество
записей в разделе
«Дополнительное
образование»
Stuff
Kind of hiring I, U Вид
найма
Stuff
Kind of work I, U Вид
работы
Stuff
Scientific degree I, U Ученая
степень
Stuff
Scientific rank I, U Ученое
звание
Stuff
Narrow speciality

I,
U


Узкая
специальность
Stuff
Amount foreign languages O Количество
записей в разделе
«Владение
иностранными
языками»
Stuff
Amount conviction O Количество
записей в разделе
«Наличие
судимости»
Stuff
Marital status I, U Семейное
положение
Stuff

Amount
family


O Количество
записей в разделе
«Состав семьи»
Stuff
Trade union I, U Профсоюз Stuff
Group of inability I, U Группа
инвалидности
Stuff
Pensioner I, U Пенсионер
?
Stuff
Participant of a war I, U Участник
войны
Stuff
Postal index I, U Домашний
индекс
Stuff
Region I, U Район Stuff
Area I, U Область Stuff
Home address I, U Домашний
адрес
Stuff
Telephone number I, U Домашний
телефон
Stuff
Passport I, U Серия,
номер
Stuff
Conscription I, U Воинская
обязанность
Stuff
Military rank I, U Воинское
звание
Stuff
Number I, U Номер
ВУС
Stuff
Military ticket I, U Номер
военного билета
Stuff
Validity to military service I, U Годность
к военной службе
Stuff
Attitude to booking I, U Отношение
к бронированию
Stuff
Mobile instructions I, U Наличие
моб, предписания
Stuff
Group of thee account I, U Группа
учета
Stuff
Category of the account I, U Категория
учета
Stuff
Commissioners I, U Райвоенкомат Stuff
Date started service I, U Дата
начала срочной
службы
Stuff
Date close service I, U Дата
окончания
срочной службы
Stuff
Date of last I, U Дата
последнего
прохождения
мед. комиссии
Stuff
Amount work record cards O Количество
записей в разделе
«Трудовая
книжка»
Stuff
Amount purpose and moving O Количество
записей в разделе
«Назначения
и перемещения»
Stuff
Amount qualifying category O Количество
записей в разделе
«Квалификационный
разряд»
Stuff
Company name I, U Название
учреждения
Stuff
Subdivision I, U Подразделение Stuff
Current post I, U Текущая
должность
Stuff
Date of employment I, U Дата
приема на работу
Stuff
Date closed of a trial period I, U Дата
окончания
испытательного
срока
Stuff
Amount business trip O Количество
записей в разделе
«Командировки»
Stuff
Amount holiday O Количество
записей в разделе
«Отпуска»
Stuff
Date of dismissal I, U Дата
увольнения
Stuff
Reason of dismissal I, U Причина
увольнения
Stuff
Individual number I, U Индивидуальный
номер налогоплательщика
Stuff
Tax bearer series I, U Серия
свидетельства
налогоплательщика
Stuff
Tax bearer number I, U Номер
свидетельства
налогоплательщика
Stuff
Tax bearer distribution date I, U Дата
выдачи свидетельства
налогоплательщика
Stuff
Date begin in education I, U Дата
поступления
в у/з
Education additional
Date of end education I, U Дата
окончания
у/з
Education additional

Additional
education


I, U Образование Education additional
Name education I, U Название
у/з
Education additional
Diploma education I, U Диплом Education additional
Form of training additional I, U Форма
обучения
Education additional
Qualification additional

I,
U


Квалификация Education additional
Speciality additional I, U Специальность Education additional
Other language I, U Язык Language
Level of possession I, U Уровень
владения
Language
Date of verdict I, U Дата
вынесения
приговора
Conviction
Article

I,
U


Статья Conviction
Period I, U Срок Conviction
Degree of relationship I, U Степень
родства
Family
Names I, U Фамилия,
инициалы
родственника
Family
Date of birth relative I, U Дата
рождения
Family
Expense I, U На
иждивении
Family
By whom is given

I,
U


Кем
выдан
Passport registration
Date of distribution I, U Дата
выдачи
Passport registration
Index I, U Индекс Passport
Area registration I, U Область Passport registration
Region registration I, U Район Passport registration
City I, U Город

Passport
registration


Point I, U Населенный
пункт
Passport registration
Street I, U Улица Passport registration
House I, U Дом Passport registration
Corps I, U Корпус Passport registration
Flat I, U Квартира Passport registration
Date of statement I, U Дата
постановки
Work record card
Date of dismissal I, U Дата
увольнения
Work record card
Name of company I, U Название
учреждения
Work record card
A post I, U Должность Work record card
Reason card I, U Причина Work record card
Basis card I, U Основание Work-record card
Date moving I, U Дата Purpose and moving
Reason moving I, U Основание Purpose and moving
Department I, U Отдел Purpose and moving
Post I, U Должность Purpose and moving
Method of operating I, U Режим
работы
Purpose and moving

Date
qualification


I, U Дата Qualification
Reason qualification I, U Основание Qualification
Qualification I, U Квалификация Qualification
Date started trip I, U Дата
начала
Business trip
Date closed trip I, U Дата
окончания
Business trip
Destination I, U Место
назначения
Business trip
Kind of holiday I, U Вид
отпуска
Holiday
Basis holiday I, U Основание Holiday
In time with I, U За время
с
Holiday
In time on I, U За время
по
Holiday
Date started holiday I, U Дата
начала
Holiday
Amount I, U Количество
дней
Holiday
Date closed holiday I, U Дата
окончания
Holiday

Теперь
можно приступить
к более тщательному
анализу данных
и объединению
отдельных
элементов
данных в объекты.
Эти объекты
станут впоследствии
основой для
создания таблиц
в проектируемой
базе данных.


Далее
следует заполнить
еще один комплект
рабочих бланков,
который поможет
объединить
элементы данных
в объекты. В
верхней части
бланка для
каждого объекта
надо перечислить
все объекты
связанные с
данным. В графе
бланка «Связь»
указывается
тип связи
(«один-ко-многим»
или «один-к-одному»).


Для
каждого элемента
данных, в рабочем
бланке объекта,
обязательно
должны быть
указаны тип
данных (текстовый,
числовой, денежный,
Мемо и т.д.) и длина
поля, необходимая
для их хранения.
Должно быть
дано краткое
описание этого
элемента, которое
впоследствии
будет использоваться
при определении
таблицы.


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


Опишем
используемые
объекты, заполнив
рабочий бланк
№2.







































































































































































































































































































































































































































































































































































/>






























































































































































































































































































































































































































































































































РАБОЧИЙ
БЛАНК №2 (ОБЪЕКТЫ)



Имя
объекта:


KADRES

Краткое
описание:


Основные
анкетные данные
сотрудников

Связанные
объекты:



Имя:


Education
additional


Language


Conviction


Family


Passport registration


Work record card


Purpose and moving


Qualifications


Business trip


Holiday



Связь:


Многие


Многие


Многие


Многие


Многие


Многие


Многие


Многие


Многие


Многие



Имя
элемента данных



Тип
данных



Описание



Условие
на значение


Organic number Числовой
(6)
Табельный
номер сотрудника
Требуется
Не должны
повторяться
Insurance number Текстовый
(14)
Страховой
номер
NNN-NNN-NNN
Surname Текстовый
(15)
Фамилия Требуется
Name Текстовый
(15)
Имя Требуется
Patronymic name Текстовый
(15)
Отчество Требуется
Sex Текстовый
(15)
Пол Требуется
М или
Ж
Date of birth Дата Дата
рождения
Требуется
Birthplace Текстовый
(47)
Место
рождения
Требуется
Nationality Текстовый
(15)
Национальность Требуется

Social
origin


Текстовый
(47)
Социальное
происхождение
Требуется
Citizenship Текстовый
(30)
Гражданство Требуется
Education Текстовый
(47)
Образование Требуется
Education institution Текстовый
(47)
Название
учебного заведения
Требуется
Form of training Текстовый
(20)
Форма
обучения
Требуется
Year of the ending Дата
(8)
Год
окончания
Требуется
Diploma Текстовый
(25)
Диплом
(серия)
Требуется
Серия:ХХХХ
номер:NNNNNNNN
Qualification Текстовый
(47)
Квалификация
по диплому
Требуется
Speciality Текстовый
(47)
Специальность
по диплому
Требуется
Amount education additional Числовой
(2)
Количество
записей в разделе
«Дополнительное
образование»
Kind of hiring Текстовый
(30)
Вид
найма
Требуется
Kind of work Текстовый
(30)
Вид
работы
Требуется
Scientific degree Текстовый
(30)
Ученая
степень
Scientific rank Текстовый
(30)
Ученое
звание
Narrow speciality Текстовый
(47)
Узкая
специальность
Amount foreign languages Числовой
(2)
Количество
записей в разделе
«Владение
иностранными
языками»
Amount conviction Числовой
(2)
Количество
записей в разделе
«Наличие
судимости»
Marital status Текстовый
(20)
Семейное
положение
Требуется
Amount family Числовой
(2)
Количество
записей в разделе
«Состав семьи»
Trade union Текстовый
(40)
Профсоюз Требуется

Group
of inability


Числовой
(1)
Группа
инвалидности
Pensioner Текстовый
(1)
Пенсионер
?
Требуется
Д или
Н
Participant of a war Текстовый
(1)
Участник
войны
Требуется
Д или
Н
Postal index Числовой
(6)
Домашний
индекс
Требуется
Region Текстовый
(20)
Район Требуется
Area Текстовый
(40)
Область Требуется
Home address Текстовый
(40)
Домашний
адрес
Требуется
Telephone number Текстовый
(18)
Домашний
телефон
###-##-## код:
###
Passport Текстовый
(29)
Серия,
номер
Требуется
Серия:
XXXXXXX-XX номер: ######

Conscription


Текстовый
(20)
Воинская
обязанность
Military rank Текстовый
(20)
Воинское
звание
Number Числовой
(12)
Номер
ВУС
Military ticket Текстовый
(23)
Номер
военного билета

Серия:
XXX


номер:
#######


Validity to military service Текстовый
(47)
Годность
к военной службе
Attitude to booking Текстовый
(47)
Отношение
к бронированию
Mobile instructions Текстовый
(1)
Наличие
моб, предписания
Д или
Н
Group of thee account Текстовый(47) Группа
учета
Category of the account Текстовый
(20)
Категория
учета
Commissioners Текстовый
(47)
Райвоенкомат
Date started service Дата Дата
начала срочной
службы
Date close service Дата Дата
окончания
срочной службы
Date of last Дата Дата
последнего
прохождения
мед. Комиссии
Amount work record cards Числовой
(2)
Количество
записей в разделе
«Трудовая
книжка»
Amount purpose and moving Числовой
(2)
Количество
записей в разделе
«Назначения
и перемещения»
Amount qualifying category Числовой
(2)
Количество
записей в разделе
«Квалификационный
разряд»

Company
name


Текстовый
(47)
Название
учреждения
Требуется
Subdivision Текстовый
(30)
Подразделение Требуется
Current post Текстовый
(30)
Текущая
должность
Требуется
Date of employment Дата Дата
приема на работу
Требуется
Date closed of a trial period Дата Дата
окончания
испытательного
срока
Требуется
Amount business trip Числовой
(2)
Количество
записей в разделе
«Командировки»
Amount holiday Числовой
(2)
Количество
записей в разделе
«Отпуска»
Date of dismissal Дата Дата
увольнения
Требуется

Reason
of dismissal


Текстовый
(47)
Причина
увольнения
Требуется
Individual number Текстовый
(12)
Индивидуальный
номер налогоплательщика
Требуется
Tax bearer series Текстовый
(14)
Серия
свидетельства
налогоплательщика
Требуется
Tax bearer number Текстовый
(14)
Номер
свидетельства
налогоплательщика
Требуется
Tax bearer distribution date Дата Дата
выдачи свидетельства
налогоплательщика
Требуется

Имя
объекта:


Education additional

Краткое
описание:


Сведения
о дополнительном
образовании

Связанные
объекты:



Имя:


Stuff



Связь:


Один



Имя
элемента данных



Тип
данных



Описание



Условие
на значение


Date begin in
education
Дата Дата
поступления
в у/з
Требуется
Date of end education Дата Дата
окончания
у/з
Требуется
Additional education Текстовый
(30)
Образование Требуется
Name education Текстовый
(15)
Название
у/з
Требуется
Diploma education Текстовый
(15)
Диплом Требуется
Form of training
additional
Текстовый
(15)
Форма
обучения
Требуется
Qualification
additional
Текстовый
(15)
Квалификация Требуется

Speciality
additional


Текстовый
(15)
Специальность Требуется

Имя
объекта:


Language

Краткое
описание:


Знание
дополнительных
иностранных
языков

Связанные
объекты:



Имя:


Stuff



Связь:


Один



Имя
элемента данных



Тип
данных



Описание



Условие
на значение


Other language Текстовый
(20)
Язык Требуется
Level of possession Текстовый
(30)
Уровень
владения
Требуется

Имя
объекта:


Conviction

Краткое
описание:


Наличие
судимости у
сотрудника

Связанные
объекты:



Имя:


Stuff



Связь:


Один



Имя
элемента данных



Тип
данных



Описание



Условие
на значение


Date of verdict Дата Дата
вынесения
приговора
Требуется
Article Текстовый
(20)
Статья Требуется
Period Текстовый
(20)
Срок Требуется

Имя
объекта:


Family

Краткое
описание:


Сведения
о составе семьи

Связанные
объекты:



Имя:


Stuff



Связь:


Один



Имя
элемента данных



Тип
данных



Описание



Условие
на значение


Degree of
relationship
Текстовый
(20)
Степень
родства
Требуется
Names Текстовый
(20)
Фамилия,
инициалы
родственника
Требуется
Date of birth
relative
Дата Дата
рождения
Требуется
Expense Текстовый
(20)
На
иждивении
Требуется

Имя
объекта:


Passport registration

Краткое
описание:


Паспортные
данные (прописка)

Связанные
объекты:



Имя:


Stuff



Связь:


Один



Имя
элемента данных



Тип
данных



Описание



Условие
на значение



By whom
is given


Текстовый
(50)
Кем
выдан
Требуется
Date of distribution Дата Дата
выдачи
Требуется
Index Текстовый
(6)
Индекс Требуется
Area registration Текстовый
(30)
Область Требуется
Region registration Текстовый
(30)
Район Требуется
City Текстовый
(30)
Город Требуется
Point Текстовый
(30)
Населенный
пункт
Требуется
Street Текстовый
(30)
Улица Требуется
House Текстовый
(10)
Дом Требуется
Corps Текстовый
(10)
Корпус Требуется
Flat Текстовый
(10)
Квартира Требуется

Имя
объекта:


Work record card

Краткое
описание:


Записи
в трудовой
книжке

Связанные
объекты:



Имя:


Stuff



Связь:


Один



Имя
элемента данных



Тип
данных



Описание



Условие
на значение


Date of statement Дата Дата
постановки
Требуется
Date of dismissal Дата Дата
увольнения
Требуется

Name of
company


Текстовый
(20)
Название
учреждения
Требуется
A post Текстовый
(20)
Должность Требуется
Reason card Текстовый
(20)
Причина Требуется
Basis card Текстовый
(20)
Основание Требуется

Имя
объекта:


Purpose and moving

Краткое
описание:


Сведения
о назначениях
и перемещениях
сотрудника

Связанные
объекты:



Имя:


Stuff



Связь:


Один



Имя
элемента данных



Тип
данных



Описание



Условие
на значение


Date moving Дата Дата Требуется
Reason moving Текстовый
(20)
Основание Требуется
Department Текстовый
(20)
Отдел Требуется
Post Текстовый
(15)
Должность Требуется
Method of operating Текстовый
(15)
Режим
работы
Требуется

Имя
объекта:


Qualification

Краткое
описание:


Сведения
о квалификационном
разряде сотрудника

Связанные
объекты:



Имя:


Stuff



Связь:


Один



Имя
элемента данных



Тип
данных



Описание



Условие
на значение


Date qualification Дата Дата Требуется
Reason qualification Текстовый
(20)
Основание Требуется
Qualification Текстовый
(20)
Квалификация Требуется

Имя
объекта:


Business trip

Краткое
описание:


Командировки

Связанные
объекты:



Имя:


Stuff



Связь:


Один



Имя
элемента данных



Тип
данных



Описание



Условие
на значение


Date started trip Дата Дата
начала
Требуется
Date closed trip Дата Дата
окончания
Требуется
Destination Текстовый
(25)
Место
назначения
Требуется

Имя
объекта:


Holiday

Краткое
описание:


Отпуска

Связанные
объекты:



Имя:


Stuff



Связь:


Один



Имя
элемента данных



Тип
данных



Описание



Условие
на значение


Kind of holiday Текстовый
(15)
Вид
отпуска
Требуется
Basis holiday

Текстовый
(15)


Основание Требуется
In time with Дата За время
с
Требуется
In time on Дата За время
по
Требуется
Date started holiday Дата Дата
начала
Требуется
Amount Числовой
(3)
Количество
дней
Требуется
Date closed holiday Дата Дата
окончания
Требуется


Теперь, после
заполнения
всех рабочих
бланков для
объектов, каждый
из них можно
рассматривать
в качестве
основы для
создания некоторой
таблицы.


2.3 Проектирование
базы данных

При
проектировании
базы данных
следует придерживаться
правил нормализации
таблиц:


Правило
1: Каждое поле
любой таблицы
должно быть
уникальным.


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


Правило
3: Для каждого
значения первичного
ключа должно
быть одно и
только одно
значение любого
из столбцов
данных, и это
значение должно
относиться
к объекту таблицы.


Правило
4: Должна иметься
возможность
изменять значения
любого поля
(не входящего
в первичный
ключ), и это не
должно повлечь
за собой изменение
другого поля.[2]


Каждый
агрегированный
объект будет
представлен
отдельной
таблицей базы
данных. Элементы
данных будут
представлены
полями таблиц.
Имена таблиц
и их полей подберем
исходя из имен
объектов и
элементов
данных. В качестве
первичного
ключа используем
табельный
номер. Проект
базы данных
включает в себя
11 таблиц.


Опишем
базу данных
в табличной
форме.
























































































































































































































































































































































































































































































































































































































































































































































































































































ОПИСАНИЕ
ТАБЛИЦ БАЗЫ
ДАННЫХ «КАДРЫ»


Имя таблицы: STUFF.DBF
Краткое
описание:
Основная
таблица базы
данных

Имя
поля



Тип
данных



Описание


ORG_NUM Числовой
(6)
Табельный
номер сотрудника
INS_NUM Текстовый
(14)
Страховой
номер
SURNAME Текстовый
(15)
Фамилия
NAME Текстовый
(15)
Имя
PATRON Текстовый
(15)
Отчество
SEX Текстовый
(15)
Пол
BIRTH_DATE Дата Дата
рождения
BIRTHPLACE Текстовый
(47)
Место
рождения
NATIONAL Текстовый
(15)
Национальность
SOCIAL Текстовый
(47)
Социальное
происхождение
CITIZEN Текстовый
(30)
Гражданство
EDUCAT Текстовый
(47)
Образование
NAME_EDU Текстовый
(47)
Название
учебного заведения
FORM_TRAIN

Текстовый
(20)


Форма
обучения
YEAR_END Дата
(8)
Год
окончания
DIPLOMA Текстовый
(25)
Диплом
(серия)
QUAL_DIP Текстовый
(47)
Квалификация
по диплому
SPEC_DIP Текстовый
(47)
Специальность
по диплому
EDU_NUM Числовой
(2)
Количество
записей в разделе
«Дополнительное
образование»
KIND_HIR Текстовый
(30)
Вид
найма
KIND_WRK Текстовый
(30)
Вид
работы
S_DEGREE Текстовый
(30)
Ученая
степень
S_RANK Текстовый
(30)
Ученое
звание
MAR_SPEC Текстовый
(47)
Узкая
специальность
LANG_NUM Числовой
(2)
Количество
записей в разделе
«Владение
иностранными
языками»
CONV_NUM Числовой
(2)
Количество
записей в разделе
«Наличие
судимости»
MAR_STATUS Текстовый
(20)
Семейное
положение
FAMIL_NUM Числовой
(2)
Количество
записей в разделе
«Состав семьи»
TR_UNION Текстовый
(40)
Профсоюз
GROUP Числовой
(1)
Группа
инвалидности
PENSIONER Текстовый
(1)
Пенсионер
?
PARTIC_WAR Текстовый
(1)
Участник
войны
POST_INDEX Числовой
(6)
Домашний
индекс
REGION Текстовый
(20)
Район
AREA Текстовый
(40)
Область
ADDRESS Текстовый
(40)
Домашний
адрес
TELEPHONE Текстовый
(18)
Домашний
телефон
PASSPORT Текстовый
(29)
Серия,
номер
CONSCRIPT Текстовый
(20)
Воинская
обязанность
MILIT_RANK Текстовый
(20)
Воинское
звание
NUMBER Числовой
(12)
Номер
ВУС
MIL_TICKET Текстовый
(23)
Номер
военного билета
MIL_VALID Текстовый
(47)
Годность
к военной службе
ATTITUDE Текстовый
(47)
Отношение
к бронированию
MOBILE_INS Текстовый
(1)
Наличие
моб, предписания
GROUP_ACC Текстовый(47) Группа
учета
CATEGORY_A Текстовый
(20)
Категория
учета
COMMISSAR Текстовый
(47)
Райвоенкомат
START_DATE Дата Дата
начала срочной
службы
CLOSE_DATE Дата Дата
окончания
срочной службы
LAST_DATE Дата Дата
последнего
прохождения
мед. Комиссии
RECORD_NUM Числовой
(2)
Количество
записей в разделе
«Трудовая
книжка»
PURPOS_NUM Числовой
(2)
Количество
записей в разделе
«Назначения
и перемещения»
QUAL_NUM Числовой
(2)
Количество
записей в разделе
«Квалификационный
разряд»
COMPANY Текстовый
(47)
Название
учреждения
SUBDIVIS Текстовый
(30)
Подразделение
CUR_POST Текстовый
(30)
Текущая
должность
EMPLOYMENT Дата Дата
приема на работу
TRIAL_CLOS Дата Дата
окончания
испытательного
срока
TRIAL_NUM Числовой
(2)
Количество
записей в разделе
«Командировки»
HOLID_NUM Числовой
(2)
Количество
записей в разделе
«Отпуска»
DATE_DIS Дата Дата
увольнения
REASON_DIS Текстовый
(47)
Причина
увольнения
INN Текстовый
(12)
Индивидуальный
номер налогоплательщика
SERIES_TAX Текстовый
(14)
Серия
свидетельства
налогоплательщика
NUM_TAX Текстовый
(14)
Номер
свидетельства
налогоплательщика
DATE_TAX Дата Дата
выдачи свидетельства
налогоплательщика
Имя таблицы: EDUCAT.DBF
Краткое
описание:
Дополнительное
образование

Имя
поля



Тип
данных



Описание


ORG_NUM Числовой
(6)
Табельный
номер сотрудника
DATE_BEGIN Дата Дата
поступления
в у/з
DATE_END Дата Дата
окончания
у/з
EDUCATION Текстовый
(30)
Образование
NAME_EDUC Текстовый
(15)
Название
у/з
DIPL Текстовый
(15)
Диплом
FORM_TR Текстовый
(15)
Форма
обучения
QUALIFIC Текстовый
(15)
Квалификация
SPECIAL Текстовый
(15)
Специальность
Имя таблицы: LANGUAGE.DBF
Краткое
описание:
Владение
иностранными
языками

Имя
поля



Тип
данных



Описание


ORG_NUM Числовой
(6)
Табельный
номер сотрудника
OTH_LANG Текстовый
(20)
Язык
LEVEL Текстовый
(30)
Уровень
владения
Имя таблицы: CONVICT.DBF
Краткое
описание:
Наличие
судимости

Имя
поля



Тип
данных



Описание


ORG_NUM Числовой
(6)
Табельный
номер сотрудника
DATE_VERD Дата Дата
вынесения
приговора
ARTICLE Текстовый
(20)
Статья
PERIOD Текстовый
(20)
Срок
Имя таблицы: FAMILY.DBF
Краткое
описание:
Состав
семьи

Имя
поля



Тип
данных



Описание


ORG_NUM Числовой
(6)
Табельный
номер сотрудника
RELATION Текстовый
(20)
Степень
родства
NAMES Текстовый
(20)
Фамилия,
инициалы
родственника
DATE_RELAT Дата Дата
рождения
EXPENSE Текстовый
(20)
На
иждивении
Имя таблицы: PASSPORT.DBF
Краткое
описание:
Паспортные
данные

Имя
поля



Тип
данных



Описание


ORG_NUM Числовой
(6)
Табельный
номер сотрудника
EXP_GIVEN Текстовый
(50)
Кем
выдан
DATE_DISTR Дата Дата
выдачи
INDEX_P Текстовый
(6)
Индекс
AREA_P Текстовый
(30)
Область
REGION_P Текстовый
(30)
Район
CITY_P Текстовый
(30)
Город
POINT_P Текстовый
(30)
Населенный
пункт
STREET_P Текстовый
(30)
Улица
HOUSE_P Текстовый
(10)
Дом
CORPS_P Текстовый
(10)
Корпус
FLAT_P Текстовый
(10)
Квартира
Имя таблицы: WORKCARD.DBF
Краткое
описание:
Трудовая
книжка

Имя
поля



Тип
данных



Описание


ORG_NUM Числовой
(6)
Табельный
номер сотрудника
DATE_WRK Дата Дата
постановки
DATE_DISM Дата Дата
увольнения
NAME_WRK Текстовый
(20)
Название
учреждения
POST_WRK Текстовый
(20)
Должность
REASON_WRK Текстовый
(20)
Причина
BASIS_WRK Текстовый
(20)
Основание
Имя таблицы: MOVING.DBF
Краткое
описание:
Назначения
и перемещения

Имя
поля



Тип
данных



Описание


ORG_NUM Числовой
(6)
Табельный
номер сотрудника
DATE_MOV Дата Дата
REASON_MOV Текстовый
(20)
Основание
DEPART Текстовый
(20)
Отдел
POST_MOV Текстовый
(15)
Должность
METHOD_MOV Текстовый
(15)
Режим
работы
Имя таблицы: QUALIFIC.DBF
Краткое
описание:
Квалификационный
разряд

Имя
поля



Тип
данных



Описание


ORG_NUM Числовой
(6)
Табельный
номер сотрудника
DATE_QUAL Дата Дата
REASON_QUAL Текстовый
(20)
Основание
QUALIFICAT Текстовый
(20)
Квалификация
Имя таблицы: BUS_TRIP.DBF
Краткое
описание:
Командировки

Имя
поля



Тип
данных



Описание


ORG_NUM Числовой
(6)
Табельный
номер сотрудника
START_TRP Дата Дата
начала
CLOSED_TRP Дата Дата
окончания
DESTINAT Текстовый
(25)
Место
назначения
Имя таблицы: HOLIDAY.DBF
Краткое
описание:
Отпуска

Имя
поля



Тип
данных



Описание


ORG_NUM Числовой
(6)
Табельный
номер сотрудника
KIND_HOL Текстовый
(15)
Вид
отпуска
BASIS_HOL Текстовый
(15)
Основание
WITH_HOL Дата За время
с
ON_HOL Дата За время
по
D_ST_HOL Дата Дата
начала
AMOUNT Числовой
(3)
Количество
дней
D_END_HOL Дата Дата
окончания


Итак, спроектировано
11 таблиц базы
данных «Кадры».
Для удобства
работы, 10 из них
следует проиндексировать:



таблицу
STUFF.DBF по полю ORG_NUM;



таблицу
EDUCAT.DBF по полю DATE_BEGIN;



таблицу
LANGUAGE.DBF по полю OTH_LANG;



таблицу
CONVICT.DBF по полю DATE_VERD;



таблицу
FAMILY.DBF по полю DATE_RELAT;



таблицу
WORKCARD.DBF по полю DATE_WRK;



таблицу
MOVING.DBF по полю DATE_MOV;



таблицу
QUALIFIC.DBF по полю DATE_QUAL;



таблицу
BUS_TRIP.DBF по полю START_TRP;



таблицу
HOLIDAY.DBF по полю WITH_HOL.


2.4 Разработка
приложения


Для создания
проекта использовалась
СУБД FoxPro 2.6.



В состав
проекта входит
28 командных
файлов. Можно
было бы в качестве
процедур объединить
их в один файл,
но тогда, в
дальнейшем,
стало было
неудобно их
изменять. Взаимосвязь
командных
файлов представлена
на рис. 2.4.1 графического
материала.



Стартовым
в проекте является
файл START.PRG, в котором
устанавливается
операционная
среда системы,
формируется
экран, а также
описывается
рабочее меню.
В состав рабочего
меню входят
горизонтальное
BAR-меню и три
вертикальных
POPUP-меню:









Данные
о сотрудниках



Сервис



Справки



Выход




В пункте
:














Просмотр



Редактирование



Добавление



Удаление



В пункте
:








Переиндексация
баз



Инициализация
баз


В
пункте :





Краткая
справка о
сотруднике



При выборе
,
или ,
запускаются
программные
файлы (модули)
READ.PRG, WRITE.PRG или NEW.PRG соответственно.
Задача этих
модулей - запуск
R_W.PRG с необходимыми
параметрами.
В частности
задаются переменные
edit и type (edit=.t. – редактирование
полей разрешено,
edit=.f. – редактирование
запрещено,
type=1 – выводится
сообщение
«просмотр
данных», type=2 –
«редактирование
данных», type=3 –
«добавление
данных»). NEW.PRG также
должен добавить
пустую запись
в таблицу STUFF.DBF.



Так как анкетные
данные довольно
обширны, для
их отображения
пользоваться
только командами
BROWSE или CHANGE неудобно.
В данном проекте
использовались
GET-поля для таблиц
STUFF.DBF, PASSPORT.DBF и BROWSE-окна
для остальных.
Описание экранов
с GET-полями, а также
условия ввода
данных, заложены
в модулях WIEV1.PRG,
WIEV2.PRG, WIEV3.PRG, WIEV4.PRG, WIEV5.PRG, которые
запускает
R_W.PRG (чтобы не
перечислять
каждый раз,
назову их WIEVn). В
зависимости
от значения
переменной
edit, в GET-полях разрешено
или запрещено
редактирование
данных. Экраны,
формируемые
этими модулями,
кроме области
редактирования
данных содержат
в верхней части
экрана номер
«листа», Ф.И.О.
сотрудника,
вид операции,
а в нижней части
экрана - опции
управления:








ЛИСТАТЬ





ЗАПИСЬ






-
передает управление
следующему
экрану.



- передает
управление
предыдущему
экрану



- переходит к
следующему
сотруднику.



- возвращается
к предыдущему
сотруднику



Если номер
экрана больше
5, то управление
передается
экрану №1.



Если номер
экрана меньше
1, то управление
передается
экрану №5.



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



- позволяет
не перебирать
сотрудников
по порядку, а
сразу выбрать
его из списка.



-
выводит на
печать все
данные о текущем
сотруднике.



- возврат
в главное меню.



Кроме данных
опций, экраны
содержат
дополнительно
опции, позволяющие
просмотреть
связанную с
ними дополнительную
информацию.
На каждом экране
эти опции разные.
С правой части
от опции - выводится
количество
записей в разделе.



Все опции
описаны LIGHTBAR-меню.



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
































































































































Переменная Значение Условие
на выполнение
Действие
Выбрано не
выбрано
up 1 5 Up=1

list=list+1


(затем
в соответствии
со значением
list запускается
один из модулей
WIEV.PRG)


down 1 5 Down=1

list=list-1


(затем
в соответствии
со значением
list запускается
один из модулей
WIEV.PRG)


previos 1 5 Previos=1

SKIP –1


(затем
в соответствии
со значением
list запускается
один из модулей
WIEV.PRG (при этом
меняется
сотрудник))


next 1 5 Next=1

SKIP 1


(затем
в соответствии
со значением
list запускается
один из модулей
WIEV.PRG (при этом
меняется
сотрудник))


find 1 5 Find=1

DO search.prg WITH
orgnum1, edit


(переменная
orgnum1 необходима
для связи с
ключом, переменная
edit разрешает
(edit=.t.) или запрещает
(edit=.f.) редактирование
поля)


print 1 5 Print=1 DO print.prg
exit 1 5 Exit=1

END DO


(возвращение
в вышестоящий
модуль и затем
в модуль с главным
меню START.PRG)


eduadd 1 5 Eduadd=1 DO educat.prg WITH
orgnum1, edit

forlang


1 5 Forlang=1 DO language.prg WITH
orgnum1, edit
conv 1 5 Conv=1 DO convict.prg WITH
orgnum1, edit
structfam 1 5 Structfam=1 DO family.prg WITH
orgnum1, edit
bok 1 5 Bok=1 DO workcard.prg WITH
orgnum1, edit
purpos 1 5 Purpos=1 DO move.prg WITH
orgnum1, edit
qualcateg 1 5 Qualcateg=1 DO qualif.prg WITH
orgnum1, edit
tripsbus 1 5 Tripsbus=1 DO bus_trip.prg WITH
orgnum1, edit
holid 1 5 Holid=1 DO holiday.prg WITH
orgnum1, edit
pass 1 5 Pass=1 DO passport.prg WITH
orgnum1, edit
Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Разработка базы данных Кадры

Слов:11544
Символов:107501
Размер:209.96 Кб.