Листинги обработчиков.
Обработчик кнопки “Выход” основной формы.
IF MESSAGEBOX('Выйти из программы?', 4 + 32 + 256, 'Выход')=6 _screen.ActiveForm.Release()
CLEAR EVENTS QUIT ELSE
_screen.ActiveForm.Refresh()
ENDIF
Обработчик события сортировки данных таблицы формы “Уроки”.
IF this.Value=1 then thisform.DataEnvironment.cursor1.order='kurs_id'
ELSE thisform.DataEnvironment.cursor1.order='num_lesson'
ENDIF thisform.grid1.Refresh
Обработчик события кнопки “Поиск” формы “Уроки”. 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
Заключение по работе.
Целью учебно-исследовательской работы являлось: § Изучение СУБД Visual FoxPro 8.0.и языка программирования FoxPro. § Изучение структурированного языка запросов SQL. § Изучение особенностей предметной области. § Проектирование базы данных (создание реляционной модели) § Создание основных элементов базы данных: таблиц, форм, отчетов, запросов. § Разработка обработчиков событий на языке FoxPro. § Приобретение навыков работы с СУБД Visual FoxPro 8.0 Курсовой проект посвящен разработке базы данных для учета материально-технического оснащения кабинета специальной технологии колледжа №32 г.Москвы В ходе УИР и КП создана база данных, отвечающая техническому заданию на курсовой проект, с использованием средств FoxPro 8.0. Проект позволил автоматизировать работу по подбору необходимого материала к урокам и систематизировать хранение информации. Задача автоматизации учебного процесса актуальна и имеет хорошую перспективу дальнейшего развития.
ЛИТЕРАТУРА
1. Microsoft Visual FoxPro О . В . Бартеньев Диалог -МИФИ Москва 2005г . 2. Visual FoxPro С. Каратыгин А. Тихонов Л. Тихонова Издательство БИНОМ Москва 1999 3. http://www.firststeps.ru/foxpro/fx/fx1.html 4. http://omck.info/1subd.php 5. http://www.computerbooks.ru/books/Programming/Book-FoxPro-7/index.html 6. http://www.compdoc.ru/bd/foxpro/ 7. http://www.linksoft.ru/working.html
Популярное: Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация... Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (175)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |