PUBLIC found_lesson
with thisform
found_lesson =INPUTBOX('Введите тему урока или ее начало','Поиcк')
IF NOT EMPTY(found_lesson)
&&Задает правила, согласно которым Visual FoxPro сравнивает две строки разной длины
&&OFF(По умолчанию) Указывает, что выражения будут эквивалентны, если они совпадают посимвольно вплоть до конца выражения, расположенного справа.
SET EXACT OFF
s=RECNO()
LOCATE FOR Uir_tab_lesson.nam_lesson= found_lesson
IF NOT FOUND() THEN && все хорошо и запись (и) найдены
messagebox('Поиск не дал результатов',48)
&& Возврат к записи с которой был начат поиск
GO s
.Command7.Enabled=.f.
ELSE
.command7.Enabled=.t.
ENDIF
ENDIF
.grid1.setfocus
ENDWITH
Обработчик события кнопки “Далее” формы “Уроки”.
SET EXACT OFF
s=RECNO()
&& Поиск следующей, отвеч. строке поиска записи
CONTINUE
IF NOT FOUND()
GO s
This.Enabled= .F.
ENDIF
ThisForm.Grid1.SetFocus
Обработчик события кнопки “Обновить” формы “Уроки”.
_screen.ActiveForm. refresh()
IF thisform.Optiongroup1.Value=1 then
thisform.DataEnvironment.cursor1.order='kurs_id'
ELSE
thisform.DataEnvironment.cursor1.order='num_lesson'
ENDIF
thisform.grid1.Refresh
Обработчик события кнопки “Показать” формы “Уроки”.
IF Thisform.Optiongroup2.Option1.Value=1
uuu=INPUTBOX('Введите ID урока','Заявка')
t=val(uuu)
IF EMPTY(uuu)=.f. then
SELECT Uir_tab_kasseta.name_kas, Uir_tab_kasseta.time_kas;
FROM ;
uir_tab_lk INNER JOIN uir_tab_kasseta ;
ON Uir_tab_lk.kass_id = Uir_tab_kasseta.kass_id;
WHERE Uir_tab_lk.lesson_id = t;
INTO TABLE time_tab7
REPORT FORM uir_report7 preview
SELECT time_tab7
DELETE ALL
PACK
ELSE thisform.Refresh
endif
ENDIF
IF Thisform.Optiongroup2.Option2.Value=1
uuu=INPUTBOX('Введите ID урока','Заявка')
t=val(uuu)
IF EMPTY(uuu)=.f. then
SELECT Uir_tab_mat.name_mat,Uir_tab_mat.vid_mat;
FROM uir_tab_lm INNER JOIN uir_tab_mat ;
ON Uir_tab_lm.mat_id = Uir_tab_mat.mat_id;
WHERE Uir_tab_lesson.lesson_id = t;
INTO TABLE time_tab8
REPORT FORM uir_report8 preview
SELECT time_tab8
DELETE ALL
Pack
ELSE thisform.Refresh
Endif
ENDIF
IF Thisform.Optiongroup2.Option3.Value=1
PUBLIC uuu_mes
uuu_mes=INPUTBOX('Введите месяц','Заявка')
IF EMPTY(uuu_mes)=.f. then
SELECT Uir_tab_lesson.kurs_id, Uir_tab_lesson.num_lesson,;
Uir_tab_lesson.nam_lesson;
FROM uir_tab_lesson;
WHERE Uir_tab_lesson.mes_id = uuu_mes;
INTO TABLE time_tab1
REPORT FORM uir_report4 preview
SELECT time_tab1
DELETE ALL
PACK
ELSE thisform.Refresh
Endif
ENDIF
Обработчик события кнопки “Удалить” формы “Уроки”.
uuuz=INPUTBOX('Введите ID урока, который желаете удалить','Удаление записи из таблицы')
IF EMPTY(uuuz)=.f. then
DO WHILE Type(uuuz)!='N'
MESSAGEBOX('Вы ввели некорректное значение (ID числовое значение)')
uuuz=INPUTBOX('Введите ID урока, который желаете удалить','Удаление записи из таблицы')
ENDDO
tu=val(uuuz)
LOCAL ARRAY ss1(20)
SELECT Uir_tab_lesson.nam_lesson;
FROM uir_tab_lesson;
WHERE Uir_tab_lesson.lesson_id =tu;
INTO ARRAY ss1
If EMPTY(ss1)
MESSAGEBOX('Такого значения ID нет в списке данных')
else
SELECT Uir_tab_lesson
DELETE;
FROM Uir_tab_lesson;
WHERE uir_tab_lesson.lesson_id = tu
PACK
SELECT Uir_tab_lm
DELETE;
FROM Uir_tab_lm;
WHERE uir_tab_lm.lesson_id = tu
PACK
SELECT Uir_tab_lk
DELETE;
FROM Uir_tab_lk;
WHERE uir_tab_lk.lesson_id = tu
PACK
_screen.ActiveForm.Release()
DO FORM uir_les_form8
ENDIF
ELSE Thisform.Refresh
ENDIF
Обработчик события кнопки “Первая” формы “Раздаточные материалы”.
IF !BOF()
GO TOP
ENDIF
_screen.ActiveForm.Refresh()
ee1=thisform.Text1.Value
SELECT Uir_tab_lesson.nam_lesson;
FROM uir_tab_mat INNER JOIN uir_tab_lm ;
ON Uir_tab_mat.mat_id = Uir_tab_lm.mat_id ;
INNER JOIN uir_tab_lesson ;
ON Uir_tab_lm.lesson_id = Uir_tab_lesson.lesson_id;
WHERE Uir_tab_mat.mat_id =ee1;
INTO ARRAY less1
IF ISNULL(less1)
less1[1]=' '
ENDIF
thisform.List1.Refresh
Обработчик события кнопки “Следущая” формы “Раздаточные материалы”.
IF !EOF()
SKIP
ENDIF
_screen.ActiveForm.Refresh()
ee1=thisform.Text1.Value
SELECT Uir_tab_lesson.nam_lesson;
FROM uir_tab_mat INNER JOIN uir_tab_lm ;
ON Uir_tab_mat.mat_id = Uir_tab_lm.mat_id ;
INNER JOIN uir_tab_lesson ;
ON Uir_tab_lm.lesson_id = Uir_tab_lesson.lesson_id;
WHERE Uir_tab_mat.mat_id =ee1;
INTO ARRAY less1
IF ISNULL(less1)
less1[1]=' '
ENDIF
thisform.List1.Refresh
Обработчик события кнопки “Предыдущая” формы “Раздаточные материалы”.
IF !BOF ( )
SKIP - 1
ENDIF
_screen. ActiveForm. Refresh ()
ee1=thisform.Text1.Value
SELECT Uir_tab_lesson.nam_lesson;
FROM uir_tab_mat INNER JOIN uir_tab_lm ;
ON Uir_tab_mat.mat_id = Uir_tab_lm.mat_id ;
INNER JOIN uir_tab_lesson ;
ON Uir_tab_lm.lesson_id = Uir_tab_lesson.lesson_id;
WHERE Uir_tab_mat.mat_id =ee1;
INTO ARRAY less1
IF ISNULL(less1)
less1[1]=' '
ENDIF
thisform.List1.Refresh
Обработчик события кнопки “Последняя ” формы “Раздаточные материалы”.
IF !EOF()
GO BOTTOM
ENDIF
_screen.ActiveForm.Refresh( )
ee1=thisform.Text1.Value
SELECT Uir_tab_lesson.nam_lesson;
FROM uir_tab_mat INNER JOIN uir_tab_lm ;
ON Uir_tab_mat.mat_id = Uir_tab_lm.mat_id ;
INNER JOIN uir_tab_lesson ;
ON Uir_tab_lm.lesson_id = Uir_tab_lesson.lesson_id;
WHERE Uir_tab_mat.mat_id =ee1;
INTO ARRAY less1
IF ISNULL(less1)
less1[1]=' '
ENDIF
thisform.List1.Refresh
Обработчик события кнопки “Добавить ” формы “Раздаточные материалы”.
PUBLIC new_mat_id as Integer
SET ORDER TO mat_id
CALCULATE MAX(mat_id) TO new_mat_id
new_mat_id=new_mat_id+1
CLEAR
SELECT uir_tab_mat
APPEND BLANK
ThisForm.Text1.Value=new_mat_id
ee=thisform.Text1.Value
RELEASE less1
DIMENSION less1(20)
thisform.List1.Refresh
_screen.ActiveForm.Refresh( )
thisform.Command4.Visible= .T.
thisform.Command2.Enabled= .f.
thisform.Commandgroup1.Command1.Enabled= .F.
thisform.Commandgroup1.Command2.Enabled= .F.
thisform.Commandgroup1.Command3.Enabled= .F.
thisform.Commandgroup1.Command4.Enabled= .F.
thisform.Commandgroup1.Command5.Enabled= .F.
thisform.Commandgroup1.Command8.Enabled= .F.
Обработчик события кнопки “Удалить” формы “Раздаточные материалы”.
tu=thisform.Text1.value
IF MESSAGEBOX('Вы уверены, что хотите стереть запись?', 4 + 32 + 256, 'Выход')=6
SELECT uir_tab_mat
SET EXCLUSIVE ON
DELETE
pack
SELECT uir_tab_lm
SET EXCLUSIVE ON
DELETE;
FROM Uir_tab_lm;
WHERE Uir_tab_lm.mat_id = tu
PACK
_screen.ActiveForm.Release()
DO FORM uir_form21
MESSAGEBOX('Данные удалены из таблицы!')
ELSE
_screen.ActiveForm.Refresh()
Endif
Обработчик события кнопки “Открепить от урока” формы “Раздаточные материалы”.
tu=thisform.Text1.value
uuu=INPUTBOX('Введите ID урока','Заявка')
IF EMPTY(uuu)=.f. then
DO WHILE Type(uuu)!='N'
MESSAGEBOX('Вы ввели некорректное значение (ID числовое значение)')
uuu=INPUTBOX('Введите ID урока','Заявка')
ENDDO
ttz=val(uuu)
LOCAL ARRAY ss7(20)
SELECT Uir_tab_lm.mat_id;
FROM uir_tab_lm;
WHERE Uir_tab_lm.mat_id = ttz;
INTO ARRAY ss7
If EMPTY(ss7)
MESSAGEBOX('Данная кассета не содержится в списке')
ELSE
SELECT uir_tab_lm
DELETE;
FROM Uir_tab_lm;
WHERE Uir_tab_lm.lesson_id =ttz and Uir_tab_lm.mat_id=tu
PACK
THISFORMset.forms(2).visible=.f.
_screen.ActiveForm.Release()
DO FORM uir_form20
MESSAGEBOX('Связь разорвана!')
endif
ELSE thisform.Refresh
endif
Обработчик события кнопки “Прикрепить к уроку” формы “Раздаточные материалы”.
SELECT uir_tab_lm
uuu=INPUTBOX('Введите ID урока','Заявка')
IF EMPTY(uuu)=.f. then
DO WHILE Type(uuu)!='N'
MESSAGEBOX('Вы ввели некорректное значение (ID числовое значение)')
uuu=INPUTBOX('Введите ID урока','Заявка')
ENDDO
tz=val(uuu)
LOCAL ARRAY ss6(20)
SELECT Uir_tab_lesson.nam_lesson;
FROM uir_tab_lesson;
WHERE Uir_tab_lesson.lesson_id =tz;
INTO ARRAY ss6
If EMPTY(ss6)
MESSAGEBOX('Такого значения ID нет в списке данных')
ELSE
LOCAL ARRAY ss5(20)
SELECT Uir_tab_lm.mat_id;
FROM uir_tab_lm;
WHERE Uir_tab_lm.lesson_id = tz;
INTO ARRAY ss5
If EMPTY(ss5)=.f.
MESSAGEBOX('Такая кассета уже есть в списке')
else
y=thisform.Text1.Value
INSERT INTO uir_tab_lm VALUES (tz,y)
THISFORMset.forms(2).visible=.f.
_screen.ActiveForm.release
DO FORM uir_form21
endif
endif
ELSE thisform.Refresh
endif
Обработчик события кнопки “Сохранить” формы “Уроки (добавить новый)”.
LOCAL qt as Character;
yy as Integer;
rt as Integer;
wu=ThisForm.Text5.Value
yy=ThisForm.Text4.Value
qt=ThisForm.Combo2.Value
rt=ThisForm.Combo1.Value
wt=VAL(yy)
t=new_lesson_id
IF EMPTY(wu)
IF EMPTY(yy)
IF EMPTY (qt)
IF EMPTY(rt)
MESSAGEBOX('Данные не были введены!')
ELSE
INSERT INTO uir_tab_lesson VALUES (t,rt,qt,wt,wu)
MESSAGEBOX('Данные добавлены в таблицу!')
Thisform.Command1.Enabled= .f.
_screen.ActiveForm.Release()
DO FORM uir_form12
ENDIF
ELSE
INSERT INTO uir_tab_lesson VALUES (t,rt,qt,wt,wu)
MESSAGEBOX('Данные добавлены в таблицу!')
Thisform.Command1.Enabled= .f.
_screen.ActiveForm.Release()
DO FORM uir_form12
ENDIF
ELSE
INSERT INTO uir_tab_lesson VALUES (t,rt,qt,wt,wu)
MESSAGEBOX('Данные добавлены в таблицу!')
Thisform.Command1.Enabled= .f.
_screen.ActiveForm.Release()
DO FORM uir_form12
ENDIF
ELSE
INSERT INTO uir_tab_lesson VALUES (t,rt,qt,wt,wu)
MESSAGEBOX('Данные добавлены в таблицу!')
Thisform.Command1.Enabled= .f.
_screen.ActiveForm.Release()
DO FORM uir_form12
ENDIF
Целью учебно-исследовательской работы являлось:
Курсовой проект посвящен разработке базы данных для учета материально-технического оснащения кабинета специальной технологии колледжа №32 г.Москвы
В ходе УИР и КП создана база данных, отвечающая техническому заданию на курсовой проект, с использованием средств FoxPro 8.0.
Проект позволил автоматизировать работу по подбору необходимого материала к урокам и систематизировать хранение информации. Задача автоматизации учебного процесса актуальна и имеет хорошую перспективу дальнейшего развития.
ЛИТЕРАТУРА