Смекни!
smekni.com

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

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

«Тантал»


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


«Утверждаю»

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

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

кибернетики


__________________________

«_____»_____________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

Amounteducation 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

Amountfamily

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

Additionaleducation

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 Город

Passportregistration

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

Datequalification

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

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

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

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

Имя:

Educationadditional

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) Национальность Требуется

Socialorigin

Текстовый(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) Профсоюз Требуется

Groupof 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) Количествозаписей в разделе«Квалификационныйразряд»

Companyname

Текстовый(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 Дата Датаувольнения Требуется

Reasonof dismissal

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


Имяобъекта:

Education additional

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

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

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

Имя:

Stuff

Связь:

Один


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

Типданных

Описание

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

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

Specialityadditional

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


Имяобъекта:

Language

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

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

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

Имя:

Stuff

Связь:

Один


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

Типданных

Описание

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

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


Имяобъекта:

Conviction

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

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

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

Имя:

Stuff

Связь:

Один


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

Типданных

Описание

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

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


Имяобъекта:

Family

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

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

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

Имя:

Stuff

Связь:

Один


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

Типданных

Описание

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

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


Имяобъекта:

Passport registration

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

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

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

Имя:

Stuff

Связь:

Один


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

Типданных

Описание

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

By whomis 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 ofcompany

Текстовый(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 WITHorgnum1, 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 WITHorgnum1, edit

forlang

1 5 Forlang=1 DO language.prg WITHorgnum1, edit
conv 1 5 Conv=1 DO convict.prg WITHorgnum1, edit
structfam 1 5 Structfam=1 DO family.prg WITHorgnum1, edit
bok 1 5 Bok=1 DO workcard.prg WITHorgnum1, edit
purpos 1 5 Purpos=1 DO move.prg WITHorgnum1, edit
qualcateg 1 5 Qualcateg=1 DO qualif.prg WITHorgnum1, edit
tripsbus 1 5 Tripsbus=1 DO bus_trip.prg WITHorgnum1, edit
holid 1 5 Holid=1 DO holiday.prg WITHorgnum1, edit
pass 1 5 Pass=1 DO passport.prg WITHorgnum1, edit

Модули BUS_TRIP.PRG,CONVICT.PRG, EDUCAT.PRG, FAMILY.PRG, HOLIDAY.PRG, LANGUAGE.PRG,MOVE.PRG, QUALIF.PRG, WORKCARD.PRG, формируютBROWSE-окна для отображениядополнительнойинформации.PASSPORT.PRG формируетGET-поля.

Модуль PRINT выводитвсе анкетныеданные сотрудникана печать.

Модуль SEARCH.PRGпозволяетвыбрать нужногосотрудника.Этот модульвызываетсякак из R_W.PRG, так ииз REFEREN.PRG.

Чтобы удалитьанкетные данныесотрудника(ов)из базы, следуетвыбрать пунктподменю .При этом запускаетсямодуль DEL_REC.PRG позволяющийнажатием клавишCtrl+T пометить кудалениюсотрудника(ов).Можно отменитьметку, повторнонажав Ctrl+T. Этидействия реализуетмодуль DL_UNDL.PRG путемпометки кудалению/снятияпометки к удалениюво всех таблицахзаписей, имеющихто же значениеORG_NUM, что и в таблицеSTUFF.DBF. Затем, послевыхода изBROWSE-окна, модульDEL_REC.PRG упаковываетвсю базу «КАДРЫ».

При выборепункта меню запускаетсямодуль INDEX.PRG, индексирующийтаблицы. Пункт запускаетмодуль INITIAL.PRG, которыйвыдает запрос«ЭТО действиеуничтожит вседанные. Вы увереныв его необходимости?»и в случаеположительногоответа, удаляетвсе данные избазы, сохраняяпри этом еелогическуюструктуру.

Для формированияна печать краткойсправки сотрудникаследует выбратьпункт меню =>.В результатезапуститсямодуль REFEREN.PRG, которыйдля выборанужного сотрудникапередаст управлениемодулю SEARCH.PRG и затемсформируетсправку и отправитее на печать.Пункт меню былсоздал длятого, чтобы, вдальнейшембыло удобнодобавлять новыемодули печатидругих справок.

Выбор пунктаглавного меню передаступравлениемодулю END.PRG, которыйзакроет всеоткрытые файлыи завершитработу.

Листингкомандныхфайлов и DOS-распечаткиэкранов, приведеныв приложении.

3. ОХРАНАТРУДА


Охрана труда– системазаконодательныхактов, постановлений,организационных,санитарныхи техническихмер, обеспечивающихбезопасныедля здоровьяусловия трудана рабочемместе. Научно-техническийпрогресс внесизменения вусловия производ­ственнойдеятельностиработниковумственноготруда. Их трудстал болееинтенсивным,напряженным,требующимзатрат умственной,эмоциональнойи физическойэнергии. Этоимеет прямоеотношение ик специалистам,связанным спроектированием,разработкой,эксплуатацией,сопровождениеми модернизациейавтоматизированныхсистем управленияразличногоназначения.

На рабочемместе операторадолжны бытьсозданы условиядля высокопроизводительноготруда. ОператорАРМ испытываетзначительнуюнагрузку, какфизическую(сидячее положение,нагрузка наглаза), так иумственную,что приводитк снижению еготрудоспособностик концу рабочегодня.

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

Развитиюутомляемостина производствеспособствуютследующиефакторы:

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

-характер протеканиятруда. Трудовойпроцесс организовантаким образом,что операторвынужден спервых минутрабочего днярешать наиболеесложные и трудоемкиезадачи, в товремя как впервые минутыработы функциональнаяподвижностьнервных клетокмозга низка.Важное значениеимеет чередованиетруда и отдыха,смена однихформ работыдругими.[4]

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

Для освещенияпомещения, вкотором работаетоператор,используетсясмешанноеосвещение, т.е.сочетаниеестественногои искусственногоосвещения.

Естественноеосвещение –осуществляетсячерез окна внаружных стенахздания.

Искусственноеосвещение –используетсяпри недостаточноместественномосве­ще­ниии осуществляетсяс помощью двухсистем: общегои местногоосвещения.Общим называютосвещение,светильникикоторого освещаютвсю площадьпомещения.Мест­ным называютосвещение,предназначенноедля определенногорабочего места.

Для помещения,где находитсярабочее местооператора,используетсясистема общегоосвещения.

Нормамидля данныхработ установленанеобходимаяосвещенностьрабочего местаЕН=300лк (для работвысокой точности,когда наименьшийразмер объектаразличенияравен 0.3 – 0.5 мм).

Для исключениязасветки экрановдисплеев прямымисветовымипотоками светиль­никиобщего освещениярасполагаютсбоку от рабочегоместа, параллельнолинии зренияоператора истене с окнами.[5]

Кроме того,необходимов течение 8-мичасового рабочегодня предусмотретьодин часовойперерыв наобед, 5-ти минутныеперерывы каждыеполчаса и 15-тиминутные перерывыкаждые 1.5 – 2 часа.Работу необходимоорганизоватьтаким образом,чтобы наиболеесложные задачирешались с11:00 до 16:00 – в периоднаибольшейактивностичеловека, а нев начале дня,когда оператореще не достигмаксимальнойактивности,и не в концедня, когда ужеразвиваетсяутомление.

Так как работаоператора несвязана с решениемкрупных логическихзадач и достаточнооднообразна,то рекомендуетсяпо-возможностичередоватьвиды деятель­ности.

4. ЗАКЛЮЧЕНИЕ


Вданной дипломнойработе разработанаархитектурабазы «Кадры».в результатеанализа данныхприведенынеобходимыеполя базы данных,их структураи тип. Сведениеих в определенныеобъекты и построениесвязи междуобъектами базы.

Показаныопределенныеправила, покоторым проектироваласьбаза данных.

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

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

Работа базына контрольныхданных ОАО «ССЗ«Лотос» показалаее работоспособностьи эффективность.

5. БИБЛИОГРАФИЧЕСКИЙСПИСОК


1.Теоретическоеучебное пособиеРГТК «Тантал»по дисциплине«Создание иведение информационногообеспечения».

2. Теоретическоеучебное пособиеРГТК «Тантал»по дисциплине«Технологияразработкипрограммногообеспечения».

3. Попов А. А.«Программированиев среде СУБДFoxPro 2.0.», М. изд. Радиои связь, 1993 г.

4.Сибаров Ю. Б.«Охрана трудав вычислительныхцентрах» и др.,М. Машиностроение,1990 г.

5.Самгин Э. Б.«Освещениерабочих мест»,изд. МИРЭА, 1989 г.

6. ПРИЛОЖЕНИЕ


Распечаткакомандныхфайлов


START.PRG


CLEAR

CLEARMACROS


SETCOLOR TO N

SETHELP OFF

SETCLOCK OFF

SETRESOURCE OFF

SETTALK OFF

SETDOHISTORY OFF

SETSTATUS OFF

SETBRSTATUS OFF

SETESCAPE OFF

SETBELL OFF

SETSCOREBOARD OFF

SETCONFIRM ON

SETDATE GERMAN

SETCENTURY ON

SETDELETED ON

SETEXACT ON

SETHOURS TO 24

SETSTICKY ON

SETCURSOR ON

SETSAFETY OFF


RELEASEMENU

RELEASEPOPUP

RELEASEWINDOW

SETMESSAGE TO SROWS()-1 CENTER


USEstuff.dbf IN a INDEX stuff.idx

USEpassport.dbf IN b

USEeducat.dbf IN c INDEX educat.idx

USElanguage.dbf IN d INDEX language.idx

USEconvict.dbf IN e INDEX convict.idx

USEfamily.dbf IN f INDEX family.idx

USEworkcard.dbf IN g INDEX workcard.idx

USEmoving.dbf IN h INDEX moving.idx

USEqualific.dbf IN i INDEX qualific.idx

USEbus_trip.dbf IN j INDEX bus_trip.idx

USEholiday.dbf IN 11 INDEX holiday.idx


SELECTa

SETCOLOR TO W+/B

@0, 0, 24, 79 BOX (REPLICATE(CHR(176),9))


DOWHILE .T.

DEFINEMENU MAINMENU COLOR SCHEME 3

DEFINEPAD data OF MAINMENU PROMPT ' Д\

AT0,0

DEFINEPAD service OF MAINMENU PROMPT ' \

DEFINEPAD list OF MAINMENU PROMPT ' СП\

DEFINEPAD exit OF MAINMENU ;

PROMPT' ВЫ\

ONSELECTION PAD data OF MAINMENU ACTIVATE POPUP dat

ONSELECTION PAD service OF MAINMENU ACTIVATE POPUP serv

ONSELECTION PAD list OF MAINMENU ACTIVATE POPUP lst

ONSELECTION PAD exit OF MAINMENU DO end.prg


DEFINEPOPUP dat FROM 1,0 SHADOW COLOR SCHEME 4

DEFINEBAR 1 OF dat PROMPT ' Просмотр'COLORSCHEME 3

DEFINEBAR 2 OF dat PROMPT '\-'

DEFINEBAR 3 OF dat PROMPT ' Редактирование'COLOR SCHEME 3

DEFINEBAR 4 OF dat PROMPT '\-'

DEFINEBAR 5 OF dat PROMPT ' Добавление'COLOR SCHEME 3

DEFINEBAR 6 OF dat PROMPT '\-'

DEFINEBAR 7 OF dat PROMPT ' Удаление'COLOR SCHEME 3

ONSELECTION BAR 1 OF dat DO read.prg

ONSELECTION BAR 3 OF dat DO write.prg

ONSELECTION BAR 5 OF dat DO new.prg

ONSELECTION BAR 7 OF dat DO del_rec.prg


DEFINEPOPUP serv FROM 1,24 SHADOW COLOR SCHEME 4

DEFINEBAR 1 OF serv PROMPT ' Переиндексациябазы ' ;

COLORSCHEME 3

DEFINEBAR 2 OF serv PROMPT '\-'

DEFINEBAR 3 OF serv PROMPT ' Инициализациябазы' ;

COLORSCHEME 3

ONSELECTION BAR 1 OF serv DO index.prg

ONSELECTION BAR 3 OF serv DO initial.prg


DEFINEPOPUP lst FROM 1,34 SHADOW COLOR SCHEME 4

DEFINEBAR 1 OF lst PROMPT ' Краткаясправка о сотруднике' ;

COLORSCHEME 3

ONSELECTION BAR 1 OF lst DO referen.prg


SHOWMENU MAINMENU

ACTIVATEMENU MAINMENU

ENDDO


RETURN


READ.PRG


SELECTa

edit=.f.

type=1

DOr_w.prg WITH edit,type

RETURN


WRITE.PRG


SELECTa

edit=.t.

type=2

DOr_w.prg WITH edit,type

RETURN


NEW.PRG


SELECTa

edit=.t.

type=3

APPENDBLANK

DOr_w.prg WITH edit,type

RETURN


DEL_REC.PRG


SELECTa

DEFINEWINDOW win3 FROM 2, 11 TO 23, 69 NOGROW ;

NOFLOATNOZOOM SHADOW CLOSE ;

TITLE'Пометьте удаляемыезаписи [CTRL+T] и нажмите' COLOR SCHEME 10

ACTIVATEWINDOW win3

ONKEY LABEL ctrl+t DO dl_undl.prg WITH org_num

SETDELETED OFF

BROWSENOAPPEND NOMODIFY LOCK 0 FIELDS org_num :H='Таб.N:', ;

surname:H='Фамилия:', name:H='Имя:',patron :H='Отчество:'

ONKEY LABEL ctrl+t

RELEASEWINDOW win3


WAIT'Удаление помеченныхзаписей' NOWAIT WINDOW

PACK

SELECTb

PACK

SELECTc

PACK

SELECTd

PACK

SELECTe

PACK

SELECTf

PACK

SELECTg

PACK

SELECTh

PACK

SELECTi

PACK

SELECTj

PACK

SELECT11

PACK

WAITCLEAR

SETDELETED ON

RETURN


DL_UNDL.PRG


PARAMETERorg_num

org_num1=org_num

IFDELETED()=.t.

RECALL

SELECTb

RECALLFOR org_num=org_num1

SELECTc

RECALLFOR org_num=org_num1

SELECTd

RECALLFOR org_num=org_num1

SELECTe

RECALLFOR org_num=org_num1

SELECTf

RECALLFOR org_num=org_num1

SELECTg

RECALLFOR org_num=org_num1

SELECTh

RECALLFOR org_num=org_num1

SELECTi

RECALLFOR org_num=org_num1

SELECTj

RECALLFOR org_num=org_num1

SELECT11

RECALLFOR org_num=org_num1

ELSE

DELETE

SELECTb

DELETEFOR org_num=org_num1

SELECTc

DELETEFOR org_num=org_num1

SELECTd

DELETEFOR org_num=org_num1

SELECTe

DELETEFOR org_num=org_num1

SELECTf

DELETEFOR org_num=org_num1

SELECTg

DELETEFOR org_num=org_num1

SELECTh

DELETEFOR org_num=org_num1

SELECTi

DELETEFOR org_num=org_num1

SELECTj

DELETEFOR org_num=org_num1

SELECT11

DELETEFOR org_num=org_num1

ENDIF

SELECTa

RETURN


R_W.PRG


PARAMETERedit,type,up,down,next,previos,find,print,exit,eduadd,forlang, ;

conv,structfam,pass,bok,purpos,qualcateg,tripsbus,holid

list=1

exit=5

SETCOLOR TO N/W+

SELECTA

IFRECCOUNT()=0

APPENDBLANK

ENDIF

DEFINEWINDOW win0 FROM 0, 0 TO 2, 79 NOGROW ;

NOFLOATNOZOOM COLOR W+/N

DEFINEWINDOW win1 FROM 3, 0 TO 24, 79 NOGROW;

NOFLOATNOZOOM COLOR GR+/B

DOWHILE exit1

ACTIVATEWINDOW win0

CLEAR

@0,8 SAY ALLTRIM(surname)+' '+ALLTRIM(name)+' '+ALLTRIM(patron)

IFtype=1

@0,63 SAY 'ПРОСМОТРДАННЫХ'

ENDIF

IFtype=2

@0,57 SAY 'РЕДАКТИРОВАНИЕДАННЫХ'

ENDIF

IFtype=3

@0,61 SAY 'ДОБАВЛЕНИЕДАННЫХ'

ENDIF

IFlist=1

@0,0 SAY 'Экран 1'

DOwiev1.prg WITH edit

ENDIF

IFlist=2

@0,0 SAY 'Экран 2'

DOwiev2.prg WITH edit

ENDIF

IFlist=3

@0,0 SAY 'Экран 3'

DOwiev3.prg WITH edit

ENDIF

IFlist=4

@0,0 SAY 'Экран 4'

DOwiev4.prg WITH edit

ENDIF

IFlist=5

@0,0 SAY 'Экран 5'

DOwiev5.prg WITH edit

ENDIF

IFprevios=1

SKIP-1

IFBOF()=.t.

GOBOTTOM

ENDIF

ENDIF

IFnext=1

SKIP1

IFEOF()=.t.

GOTOP

ENDIF

ENDIF

IFdown=1

IFlist1

list=list-1

ELSE

list=5

ENDIF

ENDIF

IFup=1

IFlist5

list=list+1

ELSE

list=1

ENDIF

ENDIF

IFfind=1

DOsearch.prg

ENDIF

org_num1=org_num

IFeduadd=1

DOeducat.prg WITH org_num1,edit

ENDIF

IFforlang=1

DOlanguage.prg WITH org_num1,edit

ENDIF

IFconv=1

DOconvict.prg WITH org_num1,edit

ENDIF

IFstructfam=1

DOfamily.prg WITH org_num1,edit

ENDIF

IFpass=1

DOpassport.prg WITH org_num1,edit

ENDIF

IFbok=1

DOworkcard.prg WITH org_num1,edit

ENDIF

IFpurpos=1

DOmove.prg WITH org_num1,edit

ENDIF

IFqualcateg=1

DOqualif.prg WITH org_num1,edit

ENDIF

IFtripsbus=1

DObus_trip.prg WITH org_num1,edit

ENDIF

IFholid=1

DOholiday.prg WITH org_num1,edit

ENDIF

IFprint=1

DOprint.prg

ENDIF

ENDDO

RELEASEWINDOW win1

RELEASEWINDOW win0

RETURN


WIEV1.PRG


PARAMETERedit

ACTIVATEWINDOW win1

CLEAR

eduadd=5

forlang=5

conv=5

structfam=5

pass=5

bok=5

purpos=5

qualcateg=5

tripsbus=5

holid=5

org_n=org_num

@1,1 SAY'Таб. номер:__________________'

@2,1 SAY'Страховойномер:_____________'

@3,1 SAY'Фамилия:_____________________'

@4,1 SAY'Имя:_________________________'

@5,1 SAY'Отчество:____________________'

@6,1 SAY'Пол:_________________________'

@7,1 SAY'Дата рождения:_______________'

@8,1 SAY'Место рождения:______________'

@9,1 SAY'Национальность:______________'

@10,1 SAY'Социальноепроисхождение:____'

@11,1 SAY'Гражданство:_________________'

@12,1 SAY'Образование:_________________'

@13,1 SAY'Названиеучебного заведения:_'

@14,1 SAY'Форма обучения:______________'

@15,1 SAY'Год окончания:_______________'

@18,4 SAY'ЛИСТАТЬ'

@18,29 SAY'ЗАПИСЬ'

@16,0,16,77 BOX

@17,26,19,26 BOX

@17,52,19,52 BOX

STORE6 TO org_num,ins_num,surname,name,up,down,next,;

previos,find,print,exit

@1,30 GET org_num VALID UN()=.t. ERROR ;

'Такойтабельный номеруже существует'SIZE1,6 WHEN edit=.t. COLOR SCHEME 2

@2,30 GET ins_num PICTURE 'NNN-NNN-NNN' SIZE 1,11 ;

WHENedit=.t. COLOR SCHEME 2

@3,30 GET surname SIZE 1,15 WHEN edit=.t. COLOR SCHEME 2

@4,30 GET name SIZE 1,15 WHEN edit=.t. COLOR SCHEME 2

@5,30 GET patron SIZE 1,15 WHEN edit=.t. COLOR SCHEME 2

@6,30 GET sex VALID sex='М'OR sex='Ж'OR sex='м'ORsex='ж' ;

ERROR'[М]ужской или[Ж]енский' SIZE 1,1 ;

WHENedit=.t. COLOR SCHEME 2

@7,30 GET birth_date SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2

@8,30 GET birthplace SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

@9,30 GET national SIZE 1,15 WHEN edit=.t. COLOR SCHEME 2

@10,30 GET SOCIAL SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

@11,30 GET citizen SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@12,30 GET educat SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

@13,30 GET NAME_EDU SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

@14,30 GET form_train SIZE 1,20 WHEN edit=.t. COLOR SCHEME 2

@15,30 GET year_end SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2


STORE"* ВПЕРЕД" TO MPROMPTS

@17,14 GET up FUNCTION MPROMPTS SIZE 1, 8 COLOR SCHEME 11

STORE"* НАЗАД " TO MPROMPTS

@19,14 GET down FUNCTION MPROMPTS SIZE 1, 8 COLOR SCHEME 11

STORE"* СЛЕДУЮЩАЯ" TO MPROMPTS

@17,38 GET next FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* ПРЕДЫДУЩАЯ"TO MPROMPTS

@18,38 GET previos FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* НАЙТИ " TO MPROMPTS

@19,38 GET find FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* ПЕЧАТЬ" TO MPROMPTS

@17,62 GET print FUNCTION MPROMPTS SIZE 1,5 COLOR SCHEME 11

STORE"* ВЫХОД" TO MPROMPTS

@19,62 GET exit FUNCTION MPROMPTS SIZE 1,5 COLOR SCHEME 11

READCYCLE

IForg_norg_num

org_n1=org_num

SELECT2

REPLACEorg_num WITH org_n1 FOR org_num=org_n

SELECT3

REPLACEorg_num WITH org_n1 FOR org_num=org_n

SELECT4

REPLACEorg_num WITH org_n1 FOR org_num=org_n

SELECT5

REPLACEorg_num WITH org_n1 FOR org_num=org_n

SELECT6

REPLACEorg_num WITH org_n1 FOR org_num=org_n

SELECT7

REPLACEorg_num WITH org_n1 FOR org_num=org_n

SELECT8

REPLACEorg_num WITH org_n1 FOR org_num=org_n

SELECT9

REPLACEorg_num WITH org_n1 FOR org_num=org_n

SELECT10

REPLACEorg_num WITH org_n1 FOR org_num=org_n

SELECT11

REPLACEorg_num WITH org_n1 FOR org_num=org_n

SELECT1

ENDIF

RETURN


FUNCTIONun

rec_un=RECNO()

tab_un=org_num

SEEKtab_un

IFRECNO()=rec_un

SKIP

ENDIF

IFtab_un=org_num AND !EOF()

GOrec_un

RETURN.f.

ENDIF

GOrec_un

RETURN


WIEV2.PRG


PARAMETERedit

ACTIVATEWINDOW win1

CLEAR

eduadd=5

forlang=5

conv=5

structfam=5

pass=5

bok=5

purpos=5

qualcateg=5

tripsbus=5

holid=5

@1,1 SAY'Диплом:______________________'

@2,1 SAY'Квалификацияпо диплому:_____'

@3,1 SAY'Специальностьпо диплому:_____'

@4,30 SAY EDU_NUM COLOR SCHEME 2

@5,1 SAY'Вид найма:___________________'

@6,1 SAY'Вид работы:__________________'

@7,1 SAY'Ученаястепень:______________'

@8,1 SAY'Ученоезвание:_______________'

@9,1 SAY'Узкая специальность:_________'

@10,30 SAY LANG_NUM COLOR SCHEME 2

@11,30 SAY conv_num COLOR SCHEME 2

@12,1 SAY'Семейноеположение:__________'

@13,30 SAY famil_num COLOR SCHEME 2

@14,1 SAY'Профсоюз:____________________'

@15,1 SAY'Группаинвалидности:_________'


@18,4 SAY'ЛИСТАТЬ'

@18,29 SAY'ЗАПИСЬ'

@16,0,16,77 BOX

@17,26,19,26 BOX

@17,52,19,52 BOX

STORE6 TO diploma,qual_dip,spec_dip,eduadd, ;

kind_hir,KIND_WRK,s_degree,s_rank,mar_spec,;

forlang,conv,mar_status,structfam,tr_union,group,;

up,down,next,previos,find,print,exit

@1,30 GET diploma PICTURE 'серия:XXXXномер:NNNNNNNN' ;

SIZE1,25 WHEN edit=.t. COLOR SCHEME 2

@2,30 GET qual_dip SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

@3,30 GET spec_dip SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

STORE"* Образование(дополнит.):____"TO MPROMPTS

@4,0 GET eduadd FUNCTION MPROMPTS SIZE 1, 30 COLOR SCHEME 11

@5,30 GET kind_hir SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@6,30 GET KIND_WRK SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@7,30 GET s_degree SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@8,30 GET s_rank SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@9,30 GET mar_spec SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

STORE"* Владениеиностран. языками:_"TO MPROMPTS

@10,0 GET forlang FUNCTION MPROMPTS SIZE 1, 30 COLOR SCHEME 11

STORE"* Наличиесудимости:__________"TO MPROMPTS

@11,0 GET conv FUNCTION MPROMPTS SIZE 1, 30 COLOR SCHEME 11

@12,30 GET mar_status SIZE 1,20 WHEN edit=.t. COLOR SCHEME 2

STORE"* Составсемьи:_______________" TO MPROMPTS

@13,0 GET structfam FUNCTION MPROMPTS SIZE 1, 30 COLOR SCHEME 11

@14,30 GET tr_union SIZE 1,40 WHEN edit=.t. COLOR SCHEME 2

@15,30 GET group SIZE 1,1 WHEN edit=.t. COLOR SCHEME 2


STORE"* ВПЕРЕД" TO MPROMPTS

@17,14 GET up FUNCTION MPROMPTS SIZE 1, 8 COLOR SCHEME 11

STORE"* НАЗАД " TO MPROMPTS

@19,14 GET down FUNCTION MPROMPTS SIZE 1, 8 COLOR SCHEME 11

STORE"* СЛЕДУЮЩАЯ" TO MPROMPTS

@17,38 GET next FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* ПРЕДЫДУЩАЯ"TO MPROMPTS

@18,38 GET previos FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* НАЙТИ " TO MPROMPTS

@19,38 GET find FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* ПЕЧАТЬ" TO MPROMPTS

@17,62 GET print FUNCTION MPROMPTS SIZE 1,5 COLOR SCHEME 11

STORE"* ВЫХОД" TO MPROMPTS

@19,62 GET exit FUNCTION MPROMPTS SIZE 1,5 COLOR SCHEME 11

READCYCLE

RETURN


WIEV3.PRG


PARAMETERedit

ACTIVATEWINDOW win1

CLEAR

eduadd=5

forlang=5

conv=5

structfam=5

pass=5

bok=5

purpos=5

qualcateg=5

tripsbus=5

holid=5


@1,1 SAY'Пенсионер?:__________________'

@2,1 SAY'Участниквойны?:_____________'

@3,1 SAY'Домашнийиндекс:_____________'

@4,1 SAY'Район:_______________________'

@5,1 SAY'Область:_____________________'

@6,1 SAY'Домашнийадрес:______________'

@7,1 SAY'Домашнийтелефон:____________'

@9,1 SAY'Воинскаяобязанность:________'

@10,1 SAY'Воинскоезвание:_____________'

@11,1 SAY'Номер ВУС:___________________'

@12,1 SAY'Военныйбилет:_______________'

@13,1 SAY'Годность квоенной службе:___'

@14,1 SAY'Отношениек бронированию:____'

@15,1 SAY'Наличие моб.предписания:____'


@18,4 SAY'ЛИСТАТЬ'

@18,29 SAY'ЗАПИСЬ'

@16,0,16,77 BOX

@17,26,19,26 BOX

@17,52,19,52 BOX

STORE6 TO pensioner, ;

partic_war,post_index,region,area,address,telephone,;

pass,passport,conscript,milit_rank,number,mil_ticket,;

mil_valid,attitude,mobile_ins,up,down,next,previos,find,print,exit


@1,30 GET pensioner VALID pensioner='д'OR pensioner='Д'OR;

pensioner='н'ORpensioner='Н' ERROR 'Только[Д]а или [Н]ет' ;

SIZE1,1 WHEN edit=.t. COLOR SCHEME 2

@2,30 GET partic_war VALID partic_war='д'OR partic_war='Д'OR;

partic_war='н'ORpartic_war='Н' ERROR 'Только[Д]а или [Н]ет' ;

SIZE1,1 WHEN edit=.t. COLOR SCHEME 2

@3,30 GET post_index SIZE 1,6 WHEN edit=.t. COLOR SCHEME 2

@4,30 GET region SIZE 1,20 WHEN edit=.t. COLOR SCHEME 2

@5,30 GET area SIZE 1,40 WHEN edit=.t. COLOR SCHEME 2

@6,30 GET address SIZE 1,40 WHEN edit=.t. COLOR SCHEME 2

@7,30 GET telephone PICTURE '###-##-## код: ###' ;

SIZE1,18 WHEN edit=.t. COLOR SCHEME 2

STORE"* Паспортныеданные:__________" TOMPROMPTS

@8,0 GET pass FUNCTION MPROMPTS SIZE 1, 30 COLOR SCHEME 11

@8,30 GET passport PICTURE 'серия:XXXXXXX-XXномер ######' ;

SIZE1,29 WHEN edit=.t. COLOR SCHEME 2

@9,30 GET conscript SIZE 1,20 WHEN edit=.t. COLOR SCHEME 2

@10,30 GET milit_rank SIZE 1,20 WHEN edit=.t. COLOR SCHEME 2

@11,30 GET number SIZE 1,12 WHEN edit=.t. COLOR SCHEME 2

@12,30 GET mil_ticket PICTURE 'серия:XXXномер #######' ;

SIZE1,23 WHEN edit=.t. COLOR SCHEME 2

@13,30 GET mil_valid SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

@14,30 GET attitude SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

@15,30 GET mobile_ins VALID mobile_ins='д'OR mobile_ins='Д';

ORmobile_ins='н'OR mobile_ins='Н' ;

ERROR'Только [Д]а или[Н]ет' SIZE 1,1 WHEN edit=.t. ;

COLORSCHEME 2


STORE"* ВПЕРЕД" TO MPROMPTS

@17,14 GET up FUNCTION MPROMPTS SIZE 1, 8 COLOR SCHEME 11

STORE"* НАЗАД " TO MPROMPTS

@19,14 GET down FUNCTION MPROMPTS SIZE 1, 8 COLOR SCHEME 11

STORE"* СЛЕДУЮЩАЯ" TO MPROMPTS

@17,38 GET next FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* ПРЕДЫДУЩАЯ"TO MPROMPTS

@18,38 GET previos FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* НАЙТИ " TO MPROMPTS

@19,38 GET find FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* ПЕЧАТЬ" TO MPROMPTS

@17,62 GET print FUNCTION MPROMPTS SIZE 1,5 COLOR SCHEME 11

STORE"* ВЫХОД" TO MPROMPTS

@19,62 GET exit FUNCTION MPROMPTS SIZE 1,5 COLOR SCHEME 11

READCYCLE

RETURN


WIEV4.PRG


PARAMETERedit

ACTIVATEWINDOW win1

CLEAR

eduadd=5

forlang=5

conv=5

structfam=5

pass=5

bok=5

purpos=5

qualcateg=5

tripsbus=5

holid=5


@1,1 SAY'Группаучета:________________'

@2,1 SAY'Категорияучета:_____________'

@3,1 SAY'Райвоенкомат:________________'

@4,1 SAY'Дата началасрочной службы:__'

@5,1 SAY'Дата окончаниясрочн. службы:'

@6,1 SAY'Дата посл.прохожд. мед.ком:'

@7,30 SAY record_num COLOR SCHEME 2

@8,30 SAY purpos_num COLOR SCHEME 2

@9,30 SAY qual_num COLOR SCHEME 2

@10,1 SAY'Учреждение:__________________'

@11,1 SAY'Подразделение:_______________'

@12,1 SAY'Текущаядолжность:___________'

@13,1 SAY'Дата приемана работу:_______'

@14,1 SAY'Дата окончанияиспыт. срока:_'

@15,30 SAY trial_num COLOR SCHEME 2

@18,4 SAY'ЛИСТАТЬ'

@18,29 SAY'ЗАПИСЬ'

@16,0,16,77 BOX

@17,26,19,26 BOX

@17,52,19,52 BOX

STORE4 TO group_acc, ;

category_a,commissar,start_date,close_date,last_date,bok,purpos,;

qualcateg,company,suddivis,cur_post,employment,trial_clos,;

admission,up,down,next,previos,find,print,exit,tripsbus

@1,30 GET group_acc SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

@2,30 GET category_a SIZE 1,20 WHEN edit=.t. COLOR SCHEME 2

@3,30 GET commissar SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

@4,30 GET start_date SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2

@5,30 GET close_date SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2

@6,30 GET last_date SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2

STORE"* Трудоваякнижка:____________" TOMPROMPTS

@7,0 GET bok FUNCTION MPROMPTS SIZE 1, 30 COLOR SCHEME 11

STORE"* Назначенияи перемещения:___"TO MPROMPTS

@8,0 GET purpos FUNCTION MPROMPTS SIZE 1, 30 COLOR SCHEME 11

STORE"* Квалификационныйразряд:____" TO MPROMPTS

@9,0 GET qualcateg FUNCTION MPROMPTS SIZE 1, 30 COLOR SCHEME 11

@10,30 GET company SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

@11,30 GET subdivis SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@12,30 GET cur_post SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@13,30 GET employment SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2

@14,30 GET trial_clos SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2

STORE"* Командировки:_______________"TO MPROMPTS

@15,0 GET tripsbus FUNCTION MPROMPTS SIZE 1, 30 COLOR SCHEME 11

STORE"* ВПЕРЕД" TO MPROMPTS

@17,14 GET up FUNCTION MPROMPTS SIZE 1, 8 COLOR SCHEME 11

STORE"* НАЗАД " TO MPROMPTS

@19,14 GET down FUNCTION MPROMPTS SIZE 1, 8 COLOR SCHEME 11

STORE"* СЛЕДУЮЩАЯ" TO MPROMPTS

@17,38 GET next FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* ПРЕДЫДУЩАЯ"TO MPROMPTS

@18,38 GET previos FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* НАЙТИ " TO MPROMPTS

@19,38 GET find FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* ПЕЧАТЬ" TO MPROMPTS

@17,62 GET print FUNCTION MPROMPTS SIZE 1,5 COLOR SCHEME 11

STORE"* ВЫХОД" TO MPROMPTS

@19,62 GET exit FUNCTION MPROMPTS SIZE 1,5 COLOR SCHEME 11

READCYCLE

RETURN


WIEV5.PRG


PARAMETERedit

ACTIVATEWINDOW win1

CLEAR

eduadd=5

forlang=5

conv=5

structfam=5

pass=5

bok=5

purpos=5

qualcateg=5

tripsbus=5

holid=5


@1,30 SAY holid_num COLOR SCHEME 2

@2,1 SAY'Дата увольнения:_____________'

@3,1 SAY'Причинаувольнения:__________'

@4,1 SAY'ИНН:_________________________'

@5,1 SAY'Серия свидет.налогоплател.:_'

@6,1 SAY'Номер свидет.налогоплател.:_'

@7,1 SAY'Дата свидет.налогоплател.:__'


@18,4 SAY'ЛИСТАТЬ'

@18,29 SAY'ЗАПИСЬ'

@16,0,16,77 BOX

@17,26,19,26 BOX

@17,52,19,52 BOX

STORE6 TO holid,date_dis,reason_d,inn,series_tax,num_tax, ;

date_tax,up,down,next,previos,find,print,exit


STORE"* Отпуска:____________________"TO MPROMPTS

@1,0 GET holid FUNCTION MPROMPTS SIZE 1, 30 COLOR SCHEME 11

@2,30 GET date_dis SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2

@3,30 GET reason_dis SIZE 1,47 WHEN edit=.t. COLOR SCHEME 2

@4,30 GET inn SIZE 1,12 WHEN edit=.t. COLOR SCHEME 2

@5,30 GET series_tax SIZE 1,14 WHEN edit=.t. COLOR SCHEME 2

@6,30 GET num_tax SIZE 1,14 WHEN edit=.t. COLOR SCHEME 2

@7,30 GET date_tax SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2


STORE"* ВПЕРЕД" TO MPROMPTS

@17,14 GET up FUNCTION MPROMPTS SIZE 1, 8 COLOR SCHEME 11

STORE"* НАЗАД " TO MPROMPTS

@19,14 GET down FUNCTION MPROMPTS SIZE 1, 8 COLOR SCHEME 11

STORE"* СЛЕДУЮЩАЯ" TO MPROMPTS

@17,38 GET next FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* ПРЕДЫДУЩАЯ"TO MPROMPTS

@18,38 GET previos FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* НАЙТИ " TO MPROMPTS

@19,38 GET find FUNCTION MPROMPTS SIZE 1, 12 COLOR SCHEME 11

STORE"* ПЕЧАТЬ" TO MPROMPTS

@17,62 GET print FUNCTION MPROMPTS SIZE 1,5 COLOR SCHEME 11

STORE"* ВЫХОД" TO MPROMPTS

@19,62 GET exit FUNCTION MPROMPTS SIZE 1,5 COLOR SCHEME 11

READCYCLE

RETURN


BUS_TRIP.PRG


PARAMETERorg_num1,edit


SELECTj

DEFINEWINDOW win3 FROM 3, 11 TO 20, 68 NOGROW ;

NOFLOATNOZOOM CLOSE COLOR SCHEME 10

DEFINEWINDOW win4 FROM 21, 0 TO 24, 79 NOGROW ;

NOFLOATNOZOOM COLOR R+/N


IFedit=.t.

ACTIVATEWINDOW win4

@0,1 SAY'[Ctrl+T]-удалитьзапись, [Ctrl+N]-создатьновую, [Ctrl+W]-сохранитьи выйти'

@1,30 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Командировки'LOCK 0 ;

FIELDSstart_trp :H='Дата начала:',closed_trp :H='Дата окончания:',;

destinat:H='Место назначения:'

REPLACEorg_num WITH org_num1 FOR org_num=0

ELSE

ACTIVATEWINDOW win4

@0,26 SAY'Нажмите [ESC] длявыхода'

@1,28 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Командировки'NOAPPEND NOMODIFY NODELETE ;

LOCK0 FIELDS start_trp :H='Дата начала:',closed_trp :H='Дата окончания:',;

destinat:H='Место назначения:'

ENDIF


GOTOP

f=0

LOCATEFOR org_num=org_num1

DOWHILE EOF()=.f.

IFFOUND()=.t.

f=f+1

ENDIF

CONTINUE

ENDDO

SELECTa

RELEASEWINDOW win4

RELEASEWINDOW win3

REPLACEtrial_num WITH f

RETURN


CONVICT.PRG


PARAMETERorg_num1,edit

SELECTe

DEFINEWINDOW win3 FROM 3, 5 TO 20, 75 NOGROW ;

NOFLOATNOZOOM CLOSE COLOR SCHEME 10

DEFINEWINDOW win4 FROM 21, 0 TO 24, 79 NOGROW ;

NOFLOATNOZOOM COLOR R+/N


IFedit=.t.

ACTIVATEWINDOW win4

@0,1 SAY'[Ctrl+T]-удалитьзапись, [Ctrl+N]-создатьновую, [Ctrl+W]-сохранитьи выйти'

@1,30 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Наличиесудимости' LOCK0 ;

FIELDSdate_verd :H='Дата вынесенияприговора:',article :H='Статья:', ;

period:H='Срок:'

REPLACEorg_num WITH org_num1 FOR org_num=0

ELSE

ACTIVATEWINDOW win4

@0,26 SAY'Нажмите [ESC] длявыхода'

@1,28 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Наличиесудимости' ;

NOAPPENDNOMODIFY NODELETE LOCK 0 ;

FIELDSdate_verd :H='Дата вынесенияприговора:',article :H='Статья:', ;

period:H='Срок:'

ENDIF


GOTOP

f=0

LOCATEFOR org_num=org_num1

DOWHILE EOF()=.f.

IFFOUND()=.t.

f=f+1

ENDIF

CONTINUE

ENDDO

SELECTa

RELEASEWINDOW win4

RELEASEWINDOW win3

REPLACEconv_num WITH f

RETURN


EDUCAT.PRG


PARAMETERorg_num1,edit

SELECTc

DEFINEWINDOW win3 FROM 3, 0 TO 20, 79 NOGROW ;

NOFLOATNOZOOM CLOSE COLOR SCHEME 10

DEFINEWINDOW win4 FROM 21, 0 TO 24, 79 NOGROW ;

NOFLOATNOZOOM COLOR R+/N

IFedit=.t.

ACTIVATEWINDOW win4

@0,1 SAY'[Ctrl+T]-удалитьзапись, [Ctrl+N]-создатьновую, [Ctrl+W]-сохранитьи выйти'

@1,30 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Образование(дополнительно)'LOCK 0 ;

FIELDSdate_begin :H='Поступил:',date_end:H='Окончил:', ;

education:H='Образование:',name_educ:H='Название у/з:',;

dipl:H='Диплом:',form_tr :H='Формаобучения:', ;

qualific:H='Квалификация:',special:H='Специальность:'

REPLACEorg_num WITH org_num1 FOR org_num=0

ELSE

ACTIVATEWINDOW win4

@0,26 SAY'Нажмите [ESC] длявыхода'

@1,28 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Образование(дополнительно)'NOAPPEND ;

NOMODIFYNODELETE LOCK 0 FIELDS date_begin :H='Поступил:',;

date_end:H='Окончил:', education:H='Образование:',;

name_educ:H='Названиеу/з:',dipl :H='Диплом:',;

form_tr:H='Форма обучения:',qualific:H='Квалификация:',;

special:H='Специальность:'

ENDIF


GOTOP

f=0

LOCATEFOR org_num=org_num1

DOWHILE EOF()=.f.

IFFOUND()=.t.

f=f+1

ENDIF

CONTINUE

ENDDO

SELECTa

RELEASEWINDOW win4

RELEASEWINDOW win3

REPLACEEDU_NUM WITH f

RETURN


FAMILY.PRG


PARAMETERorg_num1,edit

SELECTf

DEFINEWINDOW win3 FROM 3, 0 TO 20, 79 NOGROW ;

NOFLOATNOZOOM CLOSE COLOR SCHEME 10

DEFINEWINDOW win4 FROM 21, 0 TO 24, 79 NOGROW ;

NOFLOATNOZOOM COLOR R+/N


IFedit=.t.

ACTIVATEWINDOW win4

@0,1 SAY'[Ctrl+T]-удалитьзапись, [Ctrl+N]-создатьновую, [Ctrl+W]-сохранитьи выйти'

@1,30 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Составсемьи' LOCK 0 ;

FIELDSrelation :H='Степеньродства:', names:H='Фамилия, инициалы:',;

date_relat:H='Дата рождения:',expense :H='На иждивении:'

REPLACEorg_num WITH org_num1 FOR org_num=0

ELSE

ACTIVATEWINDOW win4

@0,26 SAY'Нажмите [ESC] длявыхода'

@1,28 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Составсемьи' NOAPPEND NOMODIFY NODELETE ;

LOCK0 FIELDS relation :H='Степеньродства:', ;

names:H='Фамилия, инициалы:',date_relat :H='Дата рождения:',;

expense:H='На иждивении:'

ENDIF


GOTOP

f=0

LOCATEFOR org_num=org_num1

DOWHILE EOF()=.f.

IFFOUND()=.t.

f=f+1

ENDIF

CONTINUE

ENDDO

SELECTa

RELEASEWINDOW win4

RELEASEWINDOW win3

REPLACEfamil_num WITH f

RETURN


HOLIDAY.PRG


PARAMETERorg_num1,edit


SELECT11

DEFINEWINDOW win3 FROM 3, 0 TO 20, 79 NOGROW ;

NOFLOATNOZOOM CLOSE COLOR SCHEME 10

DEFINEWINDOW win4 FROM 21, 0 TO 24, 79 NOGROW ;

NOFLOATNOZOOM COLOR R+/N


IFedit=.t.

ACTIVATEWINDOW win4

@0,1 SAY'[Ctrl+T]-удалитьзапись, [Ctrl+N]-создатьновую, [Ctrl+W]-сохранитьи выйти'

@1,30 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Отпуска'LOCK 0 ;

FIELDSkind_hol :H='Вид отпуска:',basis_hol :H='Основание:',;

with_hol:H='За время с',on_hol:H='За время по:',;

d_st_hol:H='Дата начала:',amount :H='Кол-во дней:',;

d_en_hol:H='Дата окончания:'

REPLACEorg_num WITH org_num1 FOR org_num=0

ELSE

ACTIVATEWINDOW win4

@0,26 SAY'Нажмите [ESC] длявыхода'

@1,28 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Отпуска'NOAPPEND NOMODIFY NODELETE LOCK 0 ;

FIELDSkind_hol :H='Вид отпуска:',basis_hol :H='Основание:',;

with_hol:H='За время с',on_hol:H='За время по:',d_st_hol :H='Дата начала:',;

amount:H='Кол-во дней:',d_en_hol:H='Дата окончания:'

ENDIF


GOTOP

f=0

LOCATEFOR org_num=org_num1

DOWHILE EOF()=.f.

IFFOUND()=.t.

f=f+1

ENDIF

CONTINUE

ENDDO

SELECTa

RELEASEWINDOW win4

RELEASEWINDOW win3

REPLACEholid_num WITH f

RETURN


LANGUAGE.PRG


PARAMETERorg_num1,edit

SELECTd

DEFINEWINDOW win3 FROM 3, 13 TO 20, 67 NOGROW ;

NOFLOATNOZOOM CLOSE COLOR SCHEME 10

DEFINEWINDOW win4 FROM 21, 0 TO 24, 79 NOGROW ;

NOFLOATNOZOOM COLOR R+/N


IFedit=.t.

ACTIVATEWINDOW win4

@0,1 SAY'[Ctrl+T]-удалитьзапись, [Ctrl+N]-создатьновую, [Ctrl+W]-сохранитьи выйти'

@1,30 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Владениеиностраннымиязыками' LOCK 0 ;

FIELDSoth_lang :H='Язык:', level :H='Уровеньвладения:'

REPLACEorg_num WITH org_num1 FOR org_num=0

ELSE

ACTIVATEWINDOW win4

@0,26 SAY'Нажмите [ESC] длявыхода'

@1,28 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Владениеиностраннымиязыками' ;

NOAPPENDNOMODIFY NODELETE LOCK 0 ;

FIELDSoth_lang :H='Язык:', level :H='Уровеньвладения:'

ENDIF


GOTOP

f=0

LOCATEFOR org_num=org_num1

DOWHILE EOF()=.f.

IFFOUND()=.t.

f=f+1

ENDIF

CONTINUE

ENDDO

SELECTa

RELEASEWINDOW win4

RELEASEWINDOW win3

REPLACELANG_NUM WITH f

RETURN


MOVE.PRG


PARAMETERorg_num1,edit

SELECTh

DEFINEWINDOW win3 FROM 3, 0 TO 20, 79 NOGROW ;

NOFLOATNOZOOM CLOSE COLOR SCHEME 10

DEFINEWINDOW win4 FROM 21, 0 TO 24, 79 NOGROW ;

NOFLOATNOZOOM COLOR R+/N


IFedit=.t.

ACTIVATEWINDOW win4

@0,1 SAY'[Ctrl+T]-удалитьзапись, [Ctrl+N]-создатьновую, [Ctrl+W]-сохранитьи выйти'

@1,30 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Назначенияи перемещения'LOCK 0 ;

FIELDSdate_mov :H='Дата:', reason_mov:H='Основание:',depart :H='Отдел:', ;

post_mov:H='Должность:',method_mov:H='Режим работы:'

REPLACEorg_num WITH org_num1 FOR org_num=0

ELSE

ACTIVATEWINDOW win4

@0,26 SAY'Нажмите [ESC] длявыхода'

@1,28 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Назначенияи перемещения'NOAPPEND NOMODIFY NODELETE LOCK 0 ;

FIELDSdate_mov :H='Дата:', reason_mov:H='Основание:',depart :H='Отдел:', ;

post_mov:H='Должность:',method_mov:H='Режим работы:'

ENDIF


GOTOP

f=0

LOCATEFOR org_num=org_num1

DOWHILE EOF()=.f.

IFFOUND()=.t.

f=f+1

ENDIF

CONTINUE

ENDDO

SELECTa

RELEASEWINDOW win4

RELEASEWINDOW win3

REPLACEpurpos_num WITH f

RETURN


PASSPORT.PRG


PARAMETERorg_num1,edit

SELECTb


LOCATEFOR org_num=org_num1

IFFOUND()=.f.

APPENDBLANK

REPLACEorg_num WITH org_num1

ENDIF

DEFINEWINDOW win3 FROM 3, 1 TO 24, 78 NOGROW ;

NOFLOATNOZOOM SHADOW CLOSE COLOR SCHEME 10 TITLE 'ПАСПОРТНЫЕДАННЫЕ'

ACTIVATEWINDOW win3

@1,5 SAY'Кем выдан:'

@2,5 SAY'Дата выдачи:'

@6,5 SAY'Индекс:'

@7,5 SAY'Область:'

@8,5 SAY'Район:'

@9,5 SAY'Город:'

@10,5 SAY'Населенныйпункт:'

@11,5 SAY'Улица:'

@12,5 SAY'Дом:'

@13,5 SAY'Корпус:'

@14,5 SAY'Квартира:'

@4,2,16,73 BOX

@4,30 SAY ' Адрес прописки'

STORE5 TOexp_given,date_distr,index_p,area_p,region_p,city_p,point_p,street_p,;

house_p,corps_p,flat_p,end

@1,20 GET exp_given SIZE 1,50 WHEN edit=.t. COLOR SCHEME 2

@2,20 GET date_distr SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2

@6,30 GET index_p SIZE 1,6 WHEN edit=.t. COLOR SCHEME 2

@7,30 GET area_p SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@8,30 GET region_p SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@9,30 GET city_p SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@10,30 GET point_p SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@11,30 GET street_p SIZE 1,30 WHEN edit=.t. COLOR SCHEME 2

@12,30 GET house_p SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2

@13,30 GET corps_p SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2

@14,30 GET flat_p SIZE 1,10 WHEN edit=.t. COLOR SCHEME 2

STORE"* ВЫХОД" TO MPROMPTS

@18,34 GET end FUNCTION MPROMPTS SIZE 1,5 COLOR SCHEME 11

READCYCLE

SELECTa

RELEASEWINDOW win3

RETURN


QUALIF.PRG


PARAMETERorg_num1,edit

SELECTi

DEFINEWINDOW win3 FROM 3, 10 TO 20, 69 NOGROW ;

NOFLOATNOZOOM CLOSE COLOR SCHEME 10

DEFINEWINDOW win4 FROM 21, 0 TO 24, 79 NOGROW ;

NOFLOATNOZOOM COLOR R+/N


IFedit=.t.

ACTIVATEWINDOW win4

@0,1 SAY'[Ctrl+T]-удалитьзапись, [Ctrl+N]-создатьновую, [Ctrl+W]-сохранитьи выйти'

@1,30 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Квалификационныйразряд' LOCK 0 ;

FIELDSdate_qual :H='Дата:', reas_qual:H='Основание:',;

qualificat:H='Квалификационныйразряд:'

REPLACEorg_num WITH org_num1 FOR org_num=0

ELSE

ACTIVATEWINDOW win4

@0,26 SAY'Нажмите [ESC] длявыхода'

@1,28 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Квалификационныйразряд' NOAPPEND NOMODIFYNODELETE LOCK 0 ;

FIELDSdate_qual :H='Дата:', reas_qual:H='Основание:',;

qualificat:H='Квалификационныйразряд:'

ENDIF


GOTOP

f=0

LOCATEFOR org_num=org_num1

DOWHILE EOF()=.f.

IFFOUND()=.t.

f=f+1

ENDIF

CONTINUE

ENDDO

SELECTa

RELEASEWINDOW win4

RELEASEWINDOW win3

REPLACEqual_num WITH f

RETURN


WORKCARD.PRG


PARAMETERorg_num1,edit


SELECTg

DEFINEWINDOW win3 FROM 3, 0 TO 20, 79 NOGROW ;

NOFLOATNOZOOM CLOSE COLOR SCHEME 10

DEFINEWINDOW win4 FROM 21, 0 TO 24, 79 NOGROW ;

NOFLOATNOZOOM COLOR R+/N


IFedit=.t.

ACTIVATEWINDOW win4

@0,1 SAY'[Ctrl+T]-удалитьзапись, [Ctrl+N]-создатьновую, [Ctrl+W]-сохранитьи выйти'

@1,30 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Трудоваякнижка' LOCK 0 ;

FIELDSdate_wrk :H='Дата пост:',date_dism :H='Дата увольн:',;

name_wrk:H='Названиеучреждения:',post_wrk :H='Должность:',;

reason_wrk:H='Причина:',basis_wrk:H='Основание:'

REPLACEorg_num WITH org_num1 FOR org_num=0

ELSE

ACTIVATEWINDOW win4

@0,26 SAY'Нажмите [ESC] длявыхода'

@1,28 SAY'[Ctrl+F]-поиск поля'

ACTIVATEWINDOW win3

BROWSEFOR org_num=org_num1 TITLE 'Трудоваякнижка' NOAPPEND NOMODIFY ;

NODELETELOCK 0 FIELDS date_wrk :H='Дата пост:',;

date_dism:H='Дата увольн:',name_wrk :H='Названиеучреждения:',;

post_wrk:H='Должность:',reason_wrk:H='Причина:', ;

basis_wrk:H='Основание:'

ENDIF


GOTOP

f=0

LOCATEFOR org_num=org_num1

DOWHILE EOF()=.f.

IFFOUND()=.t.

f=f+1

ENDIF

CONTINUE

ENDDO

SELECTa

RELEASEWINDOW win4

RELEASEWINDOW win3

REPLACErecord_num WITH f

RETURN


PRINT.PRG


SELECTa

n=alltrim(surname)+''+alltrim(name)+' '+alltrim(patron)

_peject='after'

SETPRINTER ON

SETCONSOLE OFF

PRINTJOB

?space((80-len(n))/2),n

WAIT"Печать" NOWAIT WINDOW

?

?' Таб. номер: ',org_num

?' Страховойномер: ',ins_num

?' Фамилия: ',surname

?' Имя: ',name

?' Отчество: ',patron

?' Пол: ',sex

?' Дата рождения: ',birth_date

?' Место рождения: ',birthplace

?' Национальность: ',national

?' Социальноепроисхождение: ',SOCIAL

?' Гражданство: ',citizen

?' Образование: ',educat

?' Название учебногозаведения:',NAME_EDU

?' Форма обучения: ',form_train

?' Год окончания: ',year_end

?' Диплом: ',diploma

?' Квалификацияпо диплому: ',qual_dip

?' Специальностьпо диплому: ',spec_dip

?' Вид найма: ',kind_hir

?' Вид работы: ',KIND_WRK

?' Ученая степень: ',s_degree

?' Ученое звание: ',s_rank

?' Узкая специальность: ',mar_spec

?' Семейное положение: ',mar_status

?' Профсоюз: ',tr_union

?' Группа инвалидности: ',group

?' Пенсионер?: ',pensioner

?' Участник войны?: ',partic_war

?' Домашний индекс: ',post_index

?' Район: ',region

?' Область: ',area

?' Домашний адрес: ',address

?' Домашний телефон: ',telephone

?' Воинскаяобязанность: ',conscript

?' Воинское звание: ',milit_rank

?' Номер ВУС: ',number

?' Военный билет: ',mil_ticket

?' Годность квоенной службе: ',mil_valid

?' Отношение кбронированию: ',attitude

?' Наличие моб.предписания: ',mobile_ins

?' Группа учета: ',group_acc

?' Категорияучета: ',category_a

?' Райвоенкомат: ',commissar

?' Дата началасрочной службы:',start_date

?' Дата окончаниясрочн.службы:',close_date

?' Дата посл.прохождения: ',last_date

?' Учреждение: ',company

?' Подразделение: ',subdivis

?' Текущая должность: ',cur_post

?' Дата приемана работу: ',employment

?' Дата окончанияиспыт. срока:',trial_clos

?' Дата увольнения: ',date_dis

?' Причина увольнения: ',reason_dis

?' ИНН: ',inn

?' Серия свидет.налогоплател.:',series_tax

?' Номер свидет.налогоплател.:',num_tax

?' Дата свидет.налогоплател.:',date_tax

?SPACE (25),'Образование(дополнит.):',EDU_NUM

org_num1=org_num

EDU_NUM1=EDU_NUM

SELECTc

SETFILTER TO org_num=org_num1

GOTOP

FORn=1 TO EDU_NUM1

?' Поступил:',date_begin,' Окончил:',date_end

?' Название у/з: ',name_educ

?' Образование: ',education

?' Диплом: ',dipl

?' Форма обучения:',form_tr

?' Квалификация: ',qualific

?' Специальность:',special

?REPLICATE(' -',39)

SKIP

NEXTn

SETFILTER TO

SELECTa

?SPACE (25),'Владениеиностран.языками:',LANG_NUM

LANG_NUM1=LANG_NUM

SELECTd

SETFILTER TO org_num=org_num1

GOTOP

FORn=1 TO LANG_NUM1

?' Язык:',oth_lang,' Уровеньвладения:',level

SKIP

NEXTn

SETFILTER TO

SELECTa

?SPACE (25),'Наличиесудимости:',conv_num

conv_num1=conv_num

SELECTe

SETFILTER TO org_num=org_num1

GOTOP

FORn=1 TO conv_num1

?' Дата вынесенияприговора: ',date_verd

?' Статья:',article,' Срок:',period

?REPLICATE(' -',39)

SKIP

NEXTn

SETFILTER TO

SELECTa

?SPACE (25),'Составсемьи:',famil_num

struct_f1=famil_num

SELECTf

SETFILTER TO org_num=org_num1

GOTOP

FORn=1 TO struct_f1

?' Дата рождения:',date_relat,' Фамилия, инициалы:',names

?' Степеньродства:',relation, ' Наиждивении:',expense

?REPLICATE(' -',39)

SKIP

NEXTn

SETFILTER TO

SELECTa

?SPACE (12),'Паспортныеданные:',passport

SELECTb

GOTOP

f=0

LOCATEFOR org_num=org_num1

DOWHILE EOF()=.f.

IFFOUND()=.t.

f=f+1

ENDIF

CONTINUE

ENDDO

SETFILTER TO org_num=org_num1

GOTOP

FORn=1 TO f

?' Кем выдан: ',exp_given

?' Дата выдачи:',date_distr

?SPACE (25),'Прописка:'

?' Индекс: ',index_p

?' Область: ',area_p

?' Район: ',region_p

?' Город: ',city_p

?' Населенныйпункт:',point_p

?' Улица: ',street_p

?' Дом: ',house_p

?' Корпус: ',corps_p

?' Квартира: ',flat_p

SKIP

NEXTn

SETFILTER TO

SELECTa

?SPACE (25),'Трудоваякнижка:',record_num

record_num1=record_num

SELECTg

SETFILTER TO org_num=org_num1

GOTOP

FORn=1 TO record_num1

?' Дата постановки: ',date_wrk,' Дата увольнения:',date_dism

?' Названиеучреждения:',name_wrk

?' Должность: ',post_wrk

?' Причина: ',reason_wrk

?' Основание: ',basis_wrk

?REPLICATE(' -',39)

SKIP

NEXTn

SETFILTER TO

SELECTa

?SPACE (25),'Назначенияи перемещения:',purpos_num

purpos_num1=purpos_num

SELECTh

SETFILTER TO org_num=org_num1

GOTOP

FORn=1 TO purpos_num1

?' Дата: ',date_mov,' Основание:',reason_mov

?' Отдел: ',depart

?' Должность: ',post_mov

?' Режим работы:',method_mov

?REPLICATE(' -',39)

SKIP

NEXTn

SETFILTER TO

SELECTa

?SPACE (25),'Квалификационныйразряд:',qual_num

qual_num1=qual_num

SELECTi

SETFILTER TO org_num=org_num1

GOTOP

FORn=1 TO qual_num1

?' Дата: ',date_qual,' Основание:',reas_qual

?' Квалификация:',qualificat

?REPLICATE(' -',39)

SKIP

NEXTn

SETFILTER TO

SELECTa

?SPACE (25),'Командировки:',trial_num

trips1=trial_num

SELECTj

SETFILTER TO org_num=org_num1

GOTOP

FORn=1 TO trips1

?' Дата начала: ',start_trp,' Датаокончания:',closed_trp

?' Место назначения:',destinat

?REPLICATE(' -',39)

SKIP

NEXTn

SETFILTER TO

SELECTa

?SPACE (25),'Отпуска:',holid_num

holid_num1=holid_num

SELECT11

SETFILTER TO org_num=org_num1

GOTOP

FORn=1 TO holid_num1

?' Вид отпуска: ',kind_hol

?' Основание: ',basis_hol

?' За время с: ',with_hol,' За время по: ',on_hol

?' Дата начала: ',d_st_hol,' Количестводней:',amount

?' Дата окончания:',d_en_hol

?REPLICATE(' -',39)

SKIP

NEXTn

SETFILTER TO

SELECTa

WAITCLEAR

ENDPRINTJOB

SETPRINTER OFF

SETCONSOLE ON

RETURN


SEARCH.PRG


DEFINEWINDOW win3 FROM 3, 11 TO 20, 69 NOGROW ;

NOFLOATNOZOOM SHADOW CLOSE;

TITLE'Выберите записьи нажмите 'COLOR SCHEME 10

ACTIVATEWINDOW win3

BROWSENOAPPEND NOMODIFY NODELETE LOCK 0 FIELDS org_num :H='Таб.N:', ;

surname:H='Фамилия:', name:H='Имя:',patron :H='Отчество:'

RELEASEWINDOW win3

RETURN


INDEX.PRG


WAIT"Индексируютаблицы" NOWAIT WINDOW

SELECTa

INDEXON org_num TO stuff.idx

SELECTc

INDEXON date_begin TO educat.idx

SELECTd

INDEXON oth_lang TO language.idx

SELECTe

INDEXON date_verd TO convict.idx

SELECTf

INDEXON date_relat TO family.idx

SELECTg

INDEXON date_wrk TO workcard.idx

SELECTh

INDEXON date_mov TO moving.idx

SELECTi

INDEXON date_qual TO qualific.idx

SELECTj

INDEXON start_trp TO bus_trip.idx

SELECT11

INDEXON with_hol TO holiday.idx

WAITCLEAR

RETURN


INITIAL.PRG


DEFINEWINDOW win3 FROM 7, 10 TO 13, 70 NOGROW ;

NOFLOATNOZOOM CLOSE COLOR SCHEME 12

ACTIVATEWINDOW win3

@0,12 SAY'ЭТО действиеуничтожит вседанные'

@1,13 SAY'Вы увереныв его необходимости?'

STORE2 TO no,yes

STORE"* НЕТ" TO MPROMPTS

@3,19 GET no FUNCTION MPROMPTS SIZE 1, 8

STORE"* ДА" TO MPROMPTS

@3,30 GET yes FUNCTION MPROMPTS SIZE 1, 8

READCYCLE

RELEASEWINDOW win3

IFyes=2

RETURN

ENDIF

WAIT"Инициализациятаблиц" NOWAIT WINDOW

SELECTa

ZAP

SELECTb

ZAP

SELECTc

ZAP

SELECTd

ZAP

SELECTe

ZAP

SELECTf

ZAP

SELECTg

ZAP

SELECTh

ZAP

SELECTi

ZAP

SELECTj

ZAP

SELECT11

ZAP

WAITCLEAR

RETURN


REFEREN.PRG


SELECTa

DOsearch.prg

_peject='after'

SETPRINTER ON

SETCONSOLE OFF

PRINTJOB

WAIT"Печать" NOWAIT WINDOW

n=ALLTRIM(company)

?space((80-len(n))/2),n

?''

?SPACE(28),'О Т Д Е Л К АД Р О В'

?REPLICATE('-',79)

?SPACE(26),'Краткая справкао сотруднике'

?REPLICATE('-',79)

n=alltrim(surname)+''+alltrim(name)+' '+alltrim(patron)

?space((80-len(n))/2),n

?''

d=MONTH(birth_date)

IFd=1

n='января'

ENDIF

IFd=2

n='февраля'

ENDIF

IFd=3

n='марта'

ENDIF

IFd=4

n='апреля'

ENDIF

IFd=5

n='мая'

ENDIF

IFd=6

n='июня'

ENDIF

IFd=7

n='июля'

ENDIF

IFd=8

n='августа'

ENDIF

IFd=9

n='сентября'

ENDIF

IFd=10

n='октября'

ENDIF

IFd=11

n='ноября'

ENDIF

IFd=12

n='декабря'

ENDIF

IFsex='Ж' OR sex='ж'

sx1='Родилась'

sx2='уроженка'

sx3='Окончила'

ELSE

sx1='Родился'

sx2='уроженец'

sx3='Окончил'

ENDIF


?' ',sx1,DAY(birth_date),n,YEAR(birth_date),'года,'

?' ',ALLTRIM(national),',',sx2,ALLTRIM(birthplace),','

?' имеет',ALLTRIM(citizen),'гражданство.'

?' ',sx3,ALLTRIM(NAME_EDU),'.'

?' Семейноеположение:',ALLTRIM(mar_status),'.'

?' В настоящеевремя работаетв должности:',ALLTRIM(cur_post),','

?' в подразделении:',ALLTRIM(subdivis),'.'

?' Домашнийадрес:',ALLTRIM(address),',',ALLTRIM(region),'район.'

?' Домашнийтелефон:',telephone

?''

?SPACE(60),DATE(),'г'

SELECTa

WAITCLEAR

ENDPRINTJOB

SETPRINTER OFF

SETCONSOLE ON

RETURN


END.PRG


CLEAR

CLOSEALL

QUIT

7. ГРАФИЧЕСКИЙМАТЕРИАЛ


ЛИЧНОСТЬ


Фамилия


Отчество


Имя


Табельный№



Страховойномер

D


Пол

S


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

S



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

S


Национальность

S


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

S



Гражданство

D


D

Образование


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

D



Форма обучения

D


Год окончания

D


Диплом (серия)

D



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

Поступил

D


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

Окончил

D



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

Образование

D


Названиеу/з


Диплом


Форма обучения



Квалификация


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

Вид найма

D


Вид работы

D



Ученая степень

D


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

D


Узкая специальность

Язык

D



Владениеин. языками

Уровеньвладения

D


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

Дата вын-ияприговора

D


Статья



Срок

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

D


Состав семьи

Степеньродства

D


Фамилия,инициалы

Профсоюз

D


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



На иждивении

Группа инвалидности

D


Пенсионер?

D


D

Участниквойны?



Домашнийиндекс

D


Район

D


Область

Кем выдан

D


Домашнийадрес

Дата выдачи

D



Домашнийтелефон

Индекс

D


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

Область

D


Район

Воинскаяобязанность

D



Город

Воинскоезвание

D


Населенныйпункт

Номер ВУС

D


Улица

Военный билет(номер)

D



Дом

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

D


Корпус

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

D


Квартира

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

D



Группа учета

D


Категорияучета

D


D

Категорияучета


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

D


Дата постановки


Дата окончаниясроч. службы

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

D


Дата посл.прохождения

D


Трудоваякнижка

Названиеучреждения

D


Должность


Причина


Основание



Назначенияи перемещения

Дата

D


Основание


Отдел



Должность


Режим работы


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

Дата

D



Основание

Учреждение

D


Квалификация

Подразделение

D


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

D


Дата приемана работу

D



Дата окончанияиспыт. срока

D


Дата начала


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

Дата окончания

D



Место назначения


Отпуска

Вид отпуска

D


Основание



За время с


За время по


Дата начала

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

D


Количестводней

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

D


Дата окончания

ИНН

D



Серия свидет.налогоплател.

D


Номер свидет.налогоплател.

D


Дата свидет.налогоплат.

D




Рис.2.2.1. Описаниесвязи «объект-свойство».

READ.PRG

WIEV1.PRG


START.PRG

WRITE.PRG

R_W.PRG

WIEV2.PRG


NEW.PRG

WIEV3.PRG


DEL_REC.PRG

WIEV4.PRG


WIEV5.PRG


BUS_TRIP.PRG


DL_UNDL.PRG

CONVICT.PRG


EDUCAT.PRG

INDEX.PRG


FAMILY.PRG

INITIAL.PRG

PRINT.PRG


HOLIDAY.PRG

REFEREN.PRG

END.PRG

SEARCH.PRG



LANGUAGE.PRG


MOVE.PRG


PASSPORT.PRG


QUALIF.PRG


WORKCARD.PRG



Рис. 2.4.1 Взаимосвязькомандныхфайлов в проекте.




Отзыв

на дипломнуюработу


Студентафакультетатехническойкибернетики Рег. № .

ЖучковаМихаила Юрьевича .

(фамилия,имя, отчество)


на тему: Разработкабазы данных«Кадры.» .

Руководительдипломнойработы ИвановИван Иванович,главный технологОАО «ССЗ «Лотос»

(фамилия,имя, отчество,должность,звание)


Дипломнаяработа содержитпояснительнуюзаписку на 87листах и графическийматериал на6 листах.


Дипломнаяработа посвященасозданию базыданных «Кадры».В работе осуществленаразработкабазы данныхпо результатамработы отделакадров ОАО«Судостроительныйзавод «Лотос».Работа выполненапо заявкепроизводства.


Характеристикаработы:


Работа соответствуетзаданию итребованиям.Имеет удобныйинтерфейс «подWINDOWS».В состав приложениявходят удобныеи простые сервисныефункции.

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

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

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

Студентхорошо ознакомленс фундаментальнойлитературойпо специальностии ее периодическимиизданиями,ГОСТами и нормами,правиламитехники безопасности.

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

Общая оценкавыполнениядипломнойработы - 5.

Проверкаработы базыданных на контрольныхданных ОАО «ССЗ«Лотос» показалиее практическуюценность вчасти облегченияи скоростиобработкибольшого объемаданных и составлениинеобходимыхсведений.


Руководительработы: ИвановИван Иванович.

(ф.и.о., ученаястепень, звание,должность)


Дата______________ Подпись______________




Рецензия

на дипломнуюработу


Студентафакультетатехническойкибернетики Рег. № .

ЖучковаМихаила Юрьевича .

(фамилия,имя, отчество)


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


Дипломнаяработа посвященасозданию базыданных «Кадры».В работе осуществленаразработкабазы данныхпо результатамработы отделакадров ОАО«Судостроительныйзавод «Лотос».


Характеристикаработы.


Настоящаядипломнаяработа полностьюсоответствуетусловию и объемузадания.

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

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

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

Используяреляционнуюархитектуру,студент отразилнаучно-техническийпрогресс.

Работа являетсясоставнойчастью автоматизацииуправленияпроизводственно-хозяйственнойдеятельностипредприятия.

В даннойдипломнойработе хорошоотражены вопросыохраны труда.

Работа написанаясно и грамотно,отличаетсячеткостьюизложения,имеет хорошеекачество оформления.

Оценка дипломнойработы - 5.

Опробациябазы данныхна ОАО «ССЗ«Лотос» показалиее практическуюценность вчасти облегченияи скоростиобработкибольшого объемаданных и составлениинеобходимыхсведений.


Рецензент:ПетровП.П., ОАО «ССЗ«Лотос», начальникбюро корпусообработки,инженер

(ф.и.о.,местоработы, должность,звание)


Дата_______________ Подпись_______________