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

 

Поле Имя Тип Длина
класс 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

 

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