
- •Глава 1. Общая часть 4
- •Глава 2. Разработка программного обеспечения 9
- •Введение
- •Глава 1. Общая часть
- •Сущность поставленной задачи
- •Постановка задачи
- •Первичные документы
- •Требования, предъявляемые к системе
- •Требования предъявляемые к программному обеспечению
- •Характеристика используемой пэвм, ос и языка программирования
- •Глава 2. Разработка программного обеспечения
- •2.1 Технологический процесс машинной реализации задачи
- •2.2 Алгоритм задачи и его описание
- •2.3 Описание переменных процедур и функций
- •2.4 Программы и их описание
- •2.4.1 Алгоритм и текст программы меню
- •2.4.2 Алгоритм и тексты (виды форм) программы ввода данных
- •2.4.2.1 Программа ввода должностей в «Справочник должностей»
- •2.4.2.2 Программа ввода ученой степени в «Справочник ученых степеней»
- •2.4.2.3 Программа ввода сотрудников в таблицу сотрудники
- •2.4.2.4 Программа ввода дополнительной информации о сотрудниках
- •2.4.3 Текст программы формирования ведомости
- •2.5 Результаты работы программы
- •2.6 Инструкция пользователю
- •Заключение
- •Приложение 2 – Эскизный проект
2.4 Программы и их описание
2.4.1 Алгоритм и текст программы меню
Алгоритм меню:
Рисунок 8 – Алгоритм меню
Текст программы меню:
CLEAR ALL
SET BELL off
SET talk OFF
CLOSE all
SET SYSMENU to
SET SYSMENU automatic
DEFINE PAD a OF _msysmenu PROMPT "Ввод данных" COLOR SCHEME 3
DEFINE PAD d OF _msysmenu PROMPT "Просмотр базы" COLOR SCHEME 3
DEFINE PAD j OF _msysmenu PROMPT "Редактирование данных" COLOR SCHEME 3
DEFINE PAD p OF _msysmenu PROMPT "Формирование отчётов" COLOR SCHEME 3
DEFINE PAD l OF _msysmenu PROMPT "Обработка" COLOR SCHEME 3
DEFINE PAD h OF _msysmenu PROMPT "Сервис" COLOR SCHEME 3
DEFINE PAD f OF _msysmenu PROMPT "Справка" COLOR SCHEME 3
DEFINE PAD k OF _msysmenu PROMPT "ВЫХОД" COLOR SCHEME 3
on PAD a OF _msysmenu activate popup vvod
on PAD d OF _msysmenu activate popup prosm
ON PAD j OF _msysmenu ACTIVATE POPUP redakt
on PAD p OF _msysmenu activate popup svodki
ON PAD l OF _msysmenu ACTIVATE POPUP obrab
on PAD h OF _msysmenu activate popup servis
on PAD f OF _msysmenu activate popup spravka
on PAD k OF _msysmenu activate popup vihod
DEFINE POPUP vvod MARGIN RELATIVE shadow COLOR SCHEME 3
DEFINE BAR 1 OF vvod PROMPT "Сотрудники"
DEFINE BAR 2 OF vvod PROMPT "Справочник дополнительной информации по сотрудникам"
DEFINE BAR 3 OF vvod PROMPT "Справочник должности"
DEFINE BAR 4 OF vvod PROMPT "Справочник ученая степень"
ON SELECTION BAR 1 OF vvod do 'D:\ТРПП курсовой\Программа\vvod_sotr.prg'
ON SELECTION BAR 2 OF vvod do 'D:\ТРПП курсовой\Программа\vvod_dop_inf.prg'
ON SELECTION BAR 3 OF vvod do 'D:\ТРПП курсовой\Программа\vvod_dolzhn.prg'
ON SELECTION BAR 4 OF vvod do 'D:\ТРПП курсовой\Программа\vvod_uch_step.prg'
DEFINE POPUP prosm MARGIN RELATIVE shadow COLOR SCHEME 3
DEFINE BAR 1 OF prosm PROMPT "Сотрудники"
DEFINE BAR 2 OF prosm PROMPT "Справочник Должности"
DEFINE BAR 3 OF prosm PROMPT "Справочник Ученая степень"
DEFINE BAR 4 OF prosm PROMPT "Справочник Дополнительная информация по сотрудникам"
ON SELECTION BAR 1 OF prosm do proc1
ON SELECTION BAR 2 OF prosm do proc2
ON SELECTION BAR 3 OF prosm do proc3
ON SELECTION BAR 4 OF prosm do proc4
DEFINE POPUP redakt MARGIN RELATIVE shadow COLOR SCHEME 3
DEFINE BAR 1 OF redakt PROMPT "Сотрудники"
DEFINE BAR 2 OF redakt PROMPT "Справочник Должности"
DEFINE BAR 3 OF redakt PROMPT "Справочник Ученая степень"
DEFINE BAR 4 OF redakt PROMPT "Справочник Дополнительная информация по сотрудникам"
ON SELECTION BAR 1 OF redakt do proc30
ON SELECTION BAR 2 OF redakt do proc31
ON SELECTION BAR 3 OF redakt do proc32
ON SELECTION BAR 4 OF redakt do proc33
DEFINE POPUP svodki MARGIN RELATIVE shadow COLOR SCHEME 3
DEFINE BAR 1 OF svodki PROMPT "Вывести сотрудников по количеству детей"
DEFINE BAR 2 OF svodki PROMPT "Вывести сотрудников по ученой степени"
DEFINE BAR 3 OF svodki PROMPT "Вывести сотрудников по должности"
ON SELECTION BAR 1 OF svodki do proc40
ON SELECTION BAR 2 OF svodki do proc41
ON SELECTION BAR 3 OF svodki do proc42
DEFINE POPUP obrab MARGIN RELATIVE shadow COLOR SCHEME 3
DEFINE BAR 1 OF obrab PROMPT "формирование ведомости"
ON SELECTION BAR 1 OF obrab do proc8
DEFINE POPUP servis MARGIN RELATIVE shadow COLOR SCHEME 3
DEFINE BAR 1 OF servis PROMPT "очистка экрана"
DEFINE BAR 3 OF servis PROMPT "очистка таблиц"
DEFINE BAR 4 OF servis PROMPT "закрыть всё"
ON SELECTION BAR 1 OF servis do proc9
ON SELECTION BAR 3 OF servis do proc11
ON SELECTION BAR 4 OF servis do proc15
DEFINE POPUP spravka MARGIN RELATIVE shadow COLOR SCHEME 3
DEFINE BAR 1 OF spravka PROMPT "Просмотр справки"
ON SELECTION BAR 1 OF spravka do proc16
DEFINE POPUP vihod MARGIN RELATIVE shadow COLOR SCHEME 3
DEFINE BAR 1 OF vihod PROMPT "Выйти в Windows"
DEFINE BAR 2 OF vihod PROMPT "Выйти в FOXPRO"
ON SELECTION BAR 1 OF vihod do Pvih
ON SELECTION BAR 2 OF vihod do PvihL
PROCEDURE proc1
USE 'D:\ТРПП курсовой\Программа\sotrud.dbf'
BROWSE noedit
CLOSE DATABASES
Return
PROCEDURE proc2
USE 'D:\ТРПП курсовой\Программа\dolzhn.dbf'
BROWSE noedit
CLOSE DATABASES
return
PROCEDURE proc3
USE 'D:\ТРПП курсовой\Программа\uchstep.dbf'
BROWSE noedit
CLOSE DATABASES
RETURN
PROCEDURE proc4
USE 'D:\ТРПП курсовой\Программа\dop_inf.dbf'
BROWSE noedit
CLOSE DATABASES
RETURN
PROCEDURE proc7
MODIFY FILE 'D:\ТРПП курсовой\Программа\vedomost.txt' noedit
PROCEDURE proc8
DO 'D:\ТРПП курсовой\Программа\formir_ved.prg'
return
PROCEDURE proc40
DO 'D:\ТРПП курсовой\Программа\otchet1.prg'
RETURN
PROCEDURE proc41
DO 'D:\ТРПП курсовой\Программа\otchet2.prg'
RETURN
PROCEDURE proc42
DO 'D:\ТРПП курсовой\Программа\otchet3.prg'
RETURN
PROCEDURE proc9
CLEAR
RETURN
PROCEDURE proc11
DEFINE WINDOW pp FROM 1,1 TO 100,100;
title 'Очистка таблиц';
close float font 'Times New Roman'
ACTIVATE WINDOW pp
STORE SPACE(5) TO par
@ 1,1 say 'Введите пароль' get par picture '99999'
READ
IF par='12345'
CLEAR
STORE SPACE(1) TO s
@ 3,1 say 'Вы действительно хотите очистить таблицы??? Если да введите "1", если нет то "0"' get s pict '9'
READ
IF s='0'
clear
DEACTIVATE WINDOW pp
CLOSE databases
ELSE
USE 'D:\ТРПП курсовой\Программа\sotrud.dbf'
ZAP
USE 'D:\ТРПП курсовой\Программа\dolzhn.dbf'
ZAP
USE 'D:\ТРПП курсовой\Программа\uchstep.dbf'
ZAP
USE 'D:\ТРПП курсовой\Программа\dop_inf.dbf'
ZAP
clear
DEACTIVATE WINDOW pp
CLOSE databases
ENDIF
ELSE
MESSAGEBOX( "Пароль неверный" ,48,"Ошибка",0)
clear
DEACTIVATE WINDOW pp
CLOSE databases
ENDIF
RETURN
PROCEDURE proc15
CLOSE ALL
RETURN
PROCEDURE proc16
MODIFY FILE 'D:\ТРПП курсовой\Программа\spravka.txt' noedit
RETURN
PROCEDURE proc30
defi wind qw from 1,1 to 20,90;
title 'Ввод пароля';
close float font 'Times New Roman'
ACTIVATE WINDOW qw
DECLARE st(1)
STORE SPACE(5) TO st(1)
ero=1
DO WHILE ero =1
@ 4,4 say 'Пароль ' get st(1) pICTURE '99999'
READ
par=st(1)
IF par='12345'
DEACTIVATE WINDOW qw
USE 'D:\ТРПП курсовой\Программа\sotrud.dbf'
BROWSE
CLOSE DATABASES
ero=0
ELSE
MESSAGEBOX( "Пароль неверный" ,48,"Ошибка",0)
ENDIF
ENDDO
RETURN
PROCEDURE 4otch
SET ALTERNATE TO 'D:\ТРПП курсовой\Программа\4otch.txt'
SET ALTERNATE on
SELECT e
USE 'D:\ТРПП курсовой\Программа\sotrud.dbf'
INDEX on kods+kodd TO 'D:\ТРПП курсовой\Программа\1.idx'
SELECT b
USE 'D:\ТРПП курсовой\Программа\dolzhn.dbf'
INDEX on kodd TO 'D:\ТРПП курсовой\Программа\2.idx'
SET RELATION TO kodd INTO e additive
SET SKIP TO e
?'---------------------------------------------------------------------------------------------------------------------------------------------------------------------------'
?' Должность | Количество людей работающих на этой должности |'
?'---------------------------------------------------------------------------------------------------------------------------------------------------------------------------'
n=0
SELECT b
GO top
DO while.not.EOF()
dol=b.dolzhn
SELECT e
GO top
DO while.not.eof()
IF e.kodd=b.kodd
n=n+1
ENDIF
SKIP
ENDDO
?' ',PADC(dol,58),'|',n,' |'
n=0
SELECT b
SKIP
ENDDO
?'---------------------------------------------------------------------------------------------------------------------------------------------------------------------------'
SET ALTERNATE off
RETURN
PROCEDURE proc31
defi wind qw from 1,1 to 20,90;
title 'Ввод пароля';
close float font 'Times New Roman'
ACTIVATE WINDOW qw
DECLARE st(1)
STORE SPACE(5) TO st(1)
ero=1
DO WHILE ero =1
@ 4,4 say 'Пароль ' get st(1) pICTURE '99999'
READ
par=st(1)
IF par='12345'
DEACTIVATE WINDOW qw
USE 'D:\ТРПП курсовой\Программа\dolzhn.dbf'
BROWSE
CLOSE DATABASES
ero=0
ELSE
MESSAGEBOX( "Пароль неверный" ,48,"Ошибка",0)
ENDIF
ENDDO
RETURN
PROCEDURE proc32
defi wind qw from 1,1 to 20,90;
title 'Ввод пароля';
close float font 'Times New Roman'
ACTIVATE WINDOW qw
DECLARE st(1)
STORE SPACE(5) TO st(1)
ero=1
DO WHILE ero =1
@ 4,4 say 'Пароль ' get st(1) pICTURE '99999'
READ
par=st(1)
IF par='12345'
DEACTIVATE WINDOW qw
USE 'D:\ТРПП курсовой\Программа\uchstep.dbf'
BROWSE
CLOSE DATABASES
ero=0
ELSE
MESSAGEBOX( "Пароль неверный" ,48,"Ошибка",0)
ENDIF
ENDDO
RETURN
PROCEDURE proc33
defi wind qw from 1,1 to 20,90;
title 'Ввод пароля';
close float font 'Times New Roman'
ACTIVATE WINDOW qw
DECLARE st(1)
STORE SPACE(5) TO st(1)
ero=1
DO WHILE ero =1
@ 4,4 say 'Пароль ' get st(1) pICTURE '99999'
READ
par=st(1)
IF par='12345'
DEACTIVATE WINDOW qw
USE 'D:\ТРПП курсовой\Программа\dop_inf.dbf'
BROWSE
CLOSE DATABASES
ero=0
ELSE
MESSAGEBOX( "Пароль неверный" ,48,"Ошибка",0)
ENDIF
ENDDO
RETURN
PROCEDURE Pvih
DEACTIVATE MENU
QUIT
RETURN
PROCEDURE PvihL
DEACTIVATE POPUP
DEACTIVATE menu
SET SYSMENU TO default
RETURN
ENDPROC
Вид меню:
Рисунок 9 – Вид меню