Мегаобучалка Главная | О нас | Обратная связь


Листинги обработчиков.



2019-12-29 175 Обсуждений (0)
Листинги обработчиков. 0.00 из 5.00 0 оценок




Обработчик кнопки “Выход” основной формы.

 

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

 

 



2019-12-29 175 Обсуждений (0)
Листинги обработчиков. 0.00 из 5.00 0 оценок









Обсуждение в статье: Листинги обработчиков.

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация...
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (175)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.006 сек.)