Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая ТРПП Захаркин (Восстановлен).docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
794.71 Кб
Скачать

2.4.2.4 Программа ввода дополнительной информации о сотрудниках

Алгоритм:

Рисунок 16 – Алгоритм работы программы ввода дополнительной информации о сотрудниках

Текст:

CLOSE DATABASES

CLOSE ALL

CLEAR

SET BELL OFF

SET TALK OFF

defi wind qw from 1,1 to 20,90;

title 'Ввод дополнительной информации';

close float font 'Times New Roman'

ACTIVATE WINDOW qw

DECLARE ST(3)

STORE SPACE(3) TO ST(1)

STORE SPACE(10) TO ST(2)

STORE 0 TO st(3)

STORE ' ' TO z

DELETE FILE 'D:\ТРПП курсовой\Программа\kodsot.idx'

DELETE FILE 'D:\ТРПП курсовой\Программа\kodso.idx'

SELECT e

USE 'D:\ТРПП курсовой\Программа\sotrud.DBF'

INDEX on kods TO 'D:\ТРПП курсовой\Программа\kodsot.idx'

SELECT c

USE 'D:\ТРПП курсовой\Программа\dop_inf.DBF'

INDEX on kods TO 'D:\ТРПП курсовой\Программа\kodso.idx'

DO WHILE z<>'*'

@ 1,1 SAY 'Код сотрудника ' get ST(1) Picture'999'

READ

d=ST(1)

SELECT e

SEEK(d)

IF FOUND()

@ 2,1 say 'Семейное положение ' get ST(2)

@ 3,1 SAY 'Количество детей ' get ST(3)

@ 4,1 say 'конец ввода?*' get z

READ

APPEND BLANK

GATHER FROM ST

IF z='*'

EXIT

ENDIF

ELSE

MESSAGEBOX( "Сотрудник не найден" ,48,"Ошибка",0)

@ 1,1 SAY 'Код сотрудника ' get ST(1) Picture'999'

ENDIF

ENDDO

BROWSE

PACK

CLEAR

CLOSE DATABASES

Вид формы:

Рисунок 17 – Форма ввода дополнительной информации

2.4.3 Текст программы формирования ведомости

SET BELL off

SET TALK OFF

SET DATE BRITISH

CLOSE all

CLEAR

DELETE file 'D:\ТРПП курсовой\Программа\vedomost.txt'

DELETE file 'D:\ТРПП курсовой\Программа\1.idx'

DELETE file 'D:\ТРПП курсовой\Программа\2.idx'

DELETE file 'D:\ТРПП курсовой\Программа\3.idx'

DELETE file 'D:\ТРПП курсовой\Программа\4.idx'

SET ALTERNATE TO 'D:\ТРПП курсовой\Программа\vedomost.txt'

SET ALTERNATE on

SELECT e

USE 'D:\ТРПП курсовой\Программа\sotrud.dbf'

INDEX on kods TO 'D:\ТРПП курсовой\Программа\1.idx'

SELECT b

USE 'D:\ТРПП курсовой\Программа\dolzhn.dbf'

INDEX on kodd TO 'D:\ТРПП курсовой\Программа\2.idx'

SELECT c

USE 'D:\ТРПП курсовой\Программа\dop_inf.dbf'

INDEX on kods TO 'D:\ТРПП курсовой\Программа\3.idx'

SELECT a

USE 'D:\ТРПП курсовой\Программа\uchstep.dbf'

INDEX on kodus TO 'D:\ТРПП курсовой\Программа\4.idx'

?' ВЕДОМОСТЬ ПО СОТРУДНИКАМ ЛАБОРАТОРИИ'

?'---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------'

?'| Фамилия | Имя | Отчество | Возраст | Пол | Должность | Ученая степень | Семейное положение| Кол-во детей|'

?'|-------------------|-----------------|----------------------|----------|------|--------------------------------------------------------------|-----------------|-------------------|-------------|'

?'|-------------------|-----------------|----------------------|----------|------|--------------------------------------------------------------|-----------------|-------------------|-------------|'

SELECT e

GO top

DO WHILE.not.eof()

SELECT b

IF SEEK(e.kodd)

dol=b.dolzhn

ELSE

dol=' '

ENDIF

SELECT a

IF SEEK(e.kodus)

ustep=a.u_step

ELSE

ustep='-'

ENDIF

SELECT c

IF SEEK(e.kods)

sem=c.sp

kold=c.deti

ELSE

sem='-'

kold=' '

ENDIF

?'|',PADC(e.fam,17),'|',PADC(e.imja,15),'|',PADC(e.otch,20),'|',PADC(e.vozr,8),'|',PADC(e.pol,4),'|',PADC(dol,60),'|',PADC(ustep,15),'|',PADC(sem,17),'|',PADC(kold,11),'|'

?'|-------------------|-----------------|----------------------|----------|------|--------------------------------------------------------------|-----------------|-------------------|-------------|'

SELECT e

SKIP

ENDDO

USE

CLOSE DATABASES

SET ALTERNATE off

CLEAR

MESSAGEBOX( "Ведомость можно просмотреть в папке:D:\ТРПП курсовой\Программа\otchet1.txt" ,48,"Ошибка",0)

*CLOSE ALL