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

Автор работы: Пользователь скрыл имя, 21 Мая 2012 в 13:59, дипломная работа

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

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

Содержание

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 файл

DIPLOM.DOC

— 430.00 Кб (Скачать файл)

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

  @ 4,2,16,73 BOX

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

STORE 5 TO exp_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

   READ CYCLE

SELECT a

RELEASE WINDOW win3

RETURN 

QUALIF.PRG 

PARAMETER org_num1,edit

SELECT i

  DEFINE WINDOW win3 FROM 3, 10 TO 20, 69 NOGROW ;

  NOFLOAT NOZOOM CLOSE COLOR SCHEME 10

  DEFINE WINDOW win4 FROM 21, 0 TO 24, 79 NOGROW ;

  NOFLOAT NOZOOM COLOR R+/N 

IF edit=.t.

ACTIVATE WINDOW win4

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

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

ACTIVATE WINDOW win3 

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

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

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

  REPLACE org_num WITH org_num1 FOR org_num=0

ELSE

ACTIVATE WINDOW win4

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

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

ACTIVATE WINDOW win3 

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

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

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

ENDIF 

GO TOP

f=0

LOCATE FOR org_num=org_num1

DO WHILE EOF()=.f.

IF FOUND()=.t.

  f=f+1

ENDIF

CONTINUE

ENDDO

SELECT a

RELEASE WINDOW win4

RELEASE WINDOW win3

REPLACE qual_num WITH f

RETURN 

WORKCARD.PRG 

PARAMETER org_num1,edit 

SELECT g

DEFINE WINDOW win3 FROM 3, 0 TO 20, 79 NOGROW ;

  NOFLOAT NOZOOM CLOSE COLOR SCHEME 10

DEFINE WINDOW win4 FROM 21, 0 TO 24, 79 NOGROW ;

  NOFLOAT NOZOOM COLOR R+/N 

  IF edit=.t.

   ACTIVATE WINDOW win4

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

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

   ACTIVATE WINDOW win3 

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

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

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

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

    REPLACE org_num WITH org_num1 FOR org_num=0

  ELSE

   ACTIVATE WINDOW win4

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

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

   ACTIVATE WINDOW win3 

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

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

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

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

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

  ENDIF 

GO TOP

  f=0

  LOCATE FOR org_num=org_num1

   DO WHILE EOF()=.f.

    IF FOUND()=.t.

     f=f+1

    ENDIF

    CONTINUE

   ENDDO

SELECT a

  RELEASE WINDOW win4

  RELEASE WINDOW win3

   REPLACE record_num WITH f

RETURN 

PRINT.PRG 

SELECT a

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

_peject='after'

SET PRINTER ON

SET CONSOLE 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

  SELECT c

  SET FILTER TO org_num=org_num1

GO TOP

FOR n=1 TO EDU_NUM1

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

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

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

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

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

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

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

? REPLICATE(' -',39)

SKIP

NEXT n

SET FILTER TO

SELECT a

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

LANG_NUM1=LANG_NUM

SELECT d

SET FILTER TO org_num=org_num1

GO TOP

FOR n=1 TO LANG_NUM1

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

SKIP

NEXT n

SET FILTER TO

SELECT a

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

conv_num1=conv_num

SELECT e

SET FILTER TO org_num=org_num1

GO TOP

FOR n=1 TO conv_num1

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

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

? REPLICATE(' -',39)

SKIP

NEXT n

SET FILTER TO

SELECT a

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

struct_f1=famil_num

SELECT f

SET FILTER TO org_num=org_num1

GO TOP

FOR n=1 TO struct_f1

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

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

? REPLICATE(' -',39)

SKIP

NEXT n

SET FILTER TO

SELECT a

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

SELECT b

GO TOP

f=0

  LOCATE FOR org_num=org_num1

   DO WHILE EOF()=.f.

    IF FOUND()=.t.

     f=f+1

    ENDIF

    CONTINUE

   ENDDO

SET FILTER TO org_num=org_num1

GO TOP

FOR n=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

NEXT n

SET FILTER TO

SELECT a

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

record_num1=record_num

SELECT g

SET FILTER TO org_num=org_num1

GO TOP

FOR n=1 TO record_num1

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

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

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

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

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

? REPLICATE(' -',39)

SKIP

NEXT n

SET FILTER TO

SELECT a

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

Информация о работе Разработка базы данных «Кадры»