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


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

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

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


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

Сервис

Справки

Выход

В пункте :


Просмотр

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

Добавление

Удаление


В пункте :


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

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


В пункте :


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


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

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


ЛИСТАТЬ

ЗАПИСЬ



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

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

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

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

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

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

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

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

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

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

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

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

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


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

list=list+1

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

down 1 5 Down=1

list=list-1

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

previos 1 5 Previos=1

SKIP –1

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

next 1 5 Next=1

SKIP 1

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

find 1 5 Find=1

DO search.prg WITH orgnum1, edit

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

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

END DO

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

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

forlang

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

Модули 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-распечатки экранов, приведены в приложении.


Информация о работе «Разработка базы данных Кадры»
Раздел: Информатика, программирование
Количество знаков с пробелами: 45741
Количество таблиц: 9
Количество изображений: 1

Похожие работы

Скачать
35796
0
29

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

Скачать
50692
14
18

... Цена Сумма 10) Отчет по точкам выдачи (для сайта) Точки выдачи Название точки Адрес точки Время работы 2. Выбор средств/методологии проектирования и СУБД При проектировании базы данных интернет-магазина после описания предметной области необходимо выбрать метод построения инфологической модели (ER-модели) и СУБД, в которой будет реализован проект. ...

Скачать
49011
1
3

... в нижней половине отображается большая панель для текста заметок.   3. Проектная часть. Создание презентации процесса разработки базы данных «Деканат ВУЗа»   3.1 Основные правила создания презентации Рассмотрим общие правила, которыми пользовались при создании презентации базы данных деканата [12, С.53]: Прежде чем приступить к созданию презентации, следует четко представлять (понимать), ...

Скачать
56592
0
0

... только при следующих условиях: ·           Связываемые поля имеют одинаковый тип данных, причем имена полей могут быть различными; ·           Обе таблицы сохраняются в одной базе данных Access; ·           Главная таблица связывается с подчиненной по первичному простому или составному ключу (уникальному индексу) главной таблицы. Access автоматически отслеживает целостность связей при ...

0 комментариев


Наверх