Структуры создаваемых баз данных

Поле Имя Тип Длина
класс N
Класс1 С
пр:год N
четв:1 N
четв:2 N
четв:3 N
четв:4 N
неусп:ч1 N
неусп:ч2 N
неусп:ч3 N
неусп:ч4 N
втгод:ч1 N
втгод:ч2 N
втгод:ч3 N
втгод:ч4 N
проп.без у/п N
по:болезни N
на:учете N
тр.семья N
       
Поле Имя Тип Длина
класс N
класс1 С
семьи N
дети N
фонд N
молоко N
пол1 N
пол2 N
осмотр N
хрон N
спрг N
учебн С
гпд С
упк С

Создадим форматные файлы отчетов для вывода информации по одномуизстолбцов таблиц: PROP FRM (пропуски), TRUD.FRM (трудные учащиеся), UPK.FRM (УПК), SOHR.FRM (сохранение контингента), WTORG.FRM (успеваемость второгодников). NEUSP.FRM (неуспевающие), SEM.FRM (многодетные семьи и опекаемые), PIT.FRM (горячее питание), MED.FRM (медицинское обслуживание), UBN.FRM (сохранность учебников), GRD.FRM (группы продленного дня).

Ниже представлены тексты некоторых программ, поддерживающие рассматриваемую информационную систему (автор -Т.П. Глазко).

Программа 140

____________ модуль MAIN. PRG _________________

erase

set colon on

set talk off

store ' ' to rl,dd,d3

do whiled3<>'3'

erase

do while dd<>'l' .and. dd <>'2' .and. dd<>'3'

@ 5,12 say ' 1). Часть 1 '

@ 6,12 say ' 2). Часть 2

@ 7,12 say ' 3). Конец работы '

@ 8,12 say ' Введите цифру ' get dd

read

loop

enddo

If dd<>'3'

do case

case dd= '1'

use newws Index kl

case dd= '2'

use newwsl Index kll

endcase

do menu

else

store '3' to d3

endif store ' ' to dd

loop

enddo

cancel

_______ МОДУЛЬ MENU.PRG ____________________

MENU.PRG поддерживает меню операций и в зависимости от выбранного пункта передает управление модулям: SERVIS2.PRG (корректировка), APPN PRG (добавление), NEWBD.PRG (создание новой БД), SERVIS3.PRG (удаление), DOC.PRG (документы). Прежде чем будет вызвана программа SERVIS2.PRG, выполняется еще одна программа - DOP.PRG, которая к этому меню добавляет запрос на классы.

Программа 141

set format to screen

store 0 to dl, d2

do while d2<>8

goto top

erase

store 0 to dl

text

МЕНЮ

1) Заполнение новой базы 4) Удаление записей

2) Добавление записей 5) Документы

3) Корректировка 6) Выход

endtext

do while d1<>l .and. dl<>2 .and. dl<>3 .and. dl<>4; .and. dl<>5 .and.

dl<>6

@ 9,1 say ' Введите цифру' get dl picture '9'

read

loop

enddo

do case

case dl=3

do DOP

do SERVIS2

case dl=2

do APPN

case dl=l

do NEWBD

case dl=4

do SERVIS3

case dl=5

do DOC

case dl=6

store 8 to d2

endcase

loop

enddo

return

_____________ модуль DOP.PRG ______________

DOP.PRG осуществляет запрос на классы, по результатам ввода формирует логическую переменную kkk. используемую в некоторых других модулях для контроля за номерами классов, kkk принимает значение «истина», если поле «класс» соответствует введенным номерам, и «ложь» - в противоположном случае.

Программа 142

store 0 to kl

store to kl

store Т to pp

*** запрос на классы

@ 10,1 say 'Какие классы*

do while pp

@ 10,13 get kl picture '99-99'

read

if val($(kl,l,2))<12 .and. val($(kl,4,2))<l2

store F to pp

endif

loop

enddo

*** Формирование логической переменной kkk

if val ($(kl,4,2))=0

store 12 to kl

else

store val($(kl,4,2))+l to kl

endif

store 'Kлacc>val ($ (kl, 1,2))—1 .and. Knacc<kl' to kkk

return

____________ модуль SERV1S2.PRG _________________

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

Программа 143

erase

set colon off

set talk off

goto top

if val(dd)=l

do shapka

else do shapkal

endif

store 1 to numl ,num2

store Т to log

store ' ' to rl

store 0 to pointer, num

store 't' to dl

count to num

do while num1<num .and. num2<num .and. log

store 10 to line

store 't' to dl

@ 21,25 say 'Нажмите«к>> для перехода к другим записям

@ 22,25 say "или ВВОД для внесения изменений'

if val(dd)=l

do newws2

else

do newws21

endif

skip - line + 10

store 10 to line

do i zm2

store pointer+1 to pointer

loop

if num1<num

skip

endif

enddo

_____________ модуль SHAPKA.PRG _____________

Программа 144

erase

text

таблица 1

Класс Сохранение контингента Неуспевающие Второгодники, их успеваем. Пропуски Работа с трудными учащимися и их семьями
Конец года Четверти 1 2 3 4 Четверти 1 2 3 4 Четверти 1 2 3 4 Без ув. причин По болезни Состоящ. на учете Трудные семьи
                 

endtext

return .

____________ модуль SHAPKA1.PRG ____________

Программа 145

erase

text

таблица 2

Класс Многодетные семьи и опекаемые дети Горячее питание Медицинское обслуживание Учебники, дидактические материалы ГПД УПК
  семьи опекаемые дети фонд всеобуча б/п молоко п. п. Количество осмотров Хронические заболевания
                       


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

1. Как сформировалось понятие «база данных»? Какое место базы данных занимают в структуре информационных систем?

2. В чем состоит концепция ANSI/SPARC трехуровневого представления данных?

3. Что означает «концептуальное представление данных»?

4. Из каких этапов слагается проектирование баз данных?

5. Какие принципы системного анализа используются при проектировании баз данных?

6. Охарактеризуйте основные параметры СУБД типа dBASE.

7. Каковы основные компоненты СУБД dBASE IV?

8. Каковы назначение и основные функции управляющегоцентра?

9. Файлы каких типов используются в системе dBASE?

10. Как происходит создание файла БД?

11. Охарактеризуйте возможности ввода информации в файл БД.

12. Как формируются запросы к БД?

13. Как формируются экранные формы?

14. Как происходит разработка отчетов?

15. Каков синтаксис команд командного языка dBASE?

16. Запишите команды и поясните назначение опций:

а) создания файла БД;

б) открытия файла БД;

в) создания индексного файла;

г) открытия индексного файла;

д) вызова экранных форм, редактирования и ввода данных;

е) просмотра информации;

ж) перемещения по файлу;

з) вставки и удаления записей;

и)сортировки и поиска;

к) создания экранных форм ввода-вывода;

л) оформления экранного интерфейса.

17. Запишите дополнительные команды ввода-вывода.

18. Какие команды используются для создания форм отчетов и печати отчетов?

19. Какие команды используются при создании программных файлов dBASE?

20. Как оформляются и вызываются программные процедуры?

21. Какие возможности описания и начального присвоения переменных имеются в языке dBASE?

22. Какие команды позволяют организовать диалоговые меню программ?

23. Какой вид имеют управляющие конструкции ветвления, выбора и цикла в языке dBASE?

Наши рекомендации