Создание теста на Visual Basic

6



	СОДЕРЖАНИЕ

	

	ВВЕДЕНИЕ

		ТЕХНИЧЕСКОЕ ЗАДАНИЕ ПРОЕКТА

	Введение 

	Назначение разработки 

	Требования к программе или программному изделию 

		ОПИСАНИЕ ПРОГРАММЫ 

		Общие сведения 

		Назначение и область применения 

		Функциональное назначение 

		Описание логической структуры 

		Используемые технические и программные средства 

		Вызов и загрузка 

		Входные данные 

		Выходные данные 

		РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ 

			Общие сведения о программе 

			Условия выполнения программы 

			Характеристика программы 

			Настройка программы 

			Проверка программы 

			Обращение к программе 

			Выполнение программы 

			Сообщения 

	ЗАКЛЮЧЕНИЕ 

	СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 

	ПРИЛОЖЕНИЯ 




ВВЕДЕНИЕ



MySQL разработал Михаэль Видениус. MySQL, является относительно небольшой и быстрой реляционной СУБД основанной на традициях Hughes Technologies Mini SQL (mSQL). SQL - это сокращение от Structured Query Language (структурированный язык запросов). 

SQL создан для работы с реляционными базами данных. Он позволяет пользователям взаимодействовать с базами данных (просматривать, искать, добавлять и управлять данными). MySQL соответствует спецификации ANSI 92 SQL. 

Наиболее простой способ работы с MySQL сводится к использованию программы MySQL. Это клиентская часть СУБД MySQL. Можно выполнять команды SQL непосредственно из командной строки системы unix или из интерактивного режима MySQL. СУБД MySQL имеет библиотеку C API. Ее можно использовать для запросов к базе данных, вставки данных, создания таблиц и т.п. C API поддерживает все функции MySQL.

MySQL Характеризуется большой скоростью, устойчивостью и легкостью в использовании, является идеальным решением для малых и средних приложений.

Microsoft Visual Basic- это мощная система программирования, позволяющая быстро и эффективно создавать приложения для Microsoft Windows.

Программируемость в общем случае означает возможность управления данным приложением с помощью макроязыков либо с помощью других приложений. Все компоненты Microsoft Office поддерживают один и тот же макроязык: Visual Basic for Applications (VBA), позволяющий создавать приложения непосредственно внутри документов Office (это называется: решения на базе Microsoft Office). 




Общие принципы построения VBA-программы.

Следует заметить, что программа не является самостоятельным структурным элементом в иерархии объектов языка VBA, и поэтому редактор VBA распознаёт по именам не программы, а процедуры, модули и проекты. Любая VBA-программа обязательно содержит хотя бы одну процедуру - по той простой причине, что компилятор языка VBA может выполнять только операторы, помещённые в процедуру. Однако выполняемая программа-процедура может, в свою очередь, обращаться к одной или нескольким другим процедурам, помещённым в один или несколько модулей, входящих в состав одного или проектов. Другими словами, правильно будет сказать, что в VBA строки программного кода организованы в процедуры, которые размещаются в модулях, а модули размещаются в проектах. Отсюда можно сделать вывод, что программный код VBA состоит из следующих "строительных блоков". 

Оператор - это наименьшая единица VBA - кода. Он предназначен для определения переменной, установки параметров или выполнения какого-либо действия в программе. 

Процедура - это отдельная единица программного кода VBA, которую можно вызвать по имени для выполнения и которая может выполнять самостоятельно. Любая процедура содержит один или несколько операторов. 

Модуль - это именованная единица, состоящая из одной или нескольких процедур и раздела объявлений, в котором объявляются переменные, константы и пользовательские типы данных, а также устанавливаются параметры компилятора. 

Проект - включает в себя все модули, формы и связанные с приложением объекты, относящиеся к конкретному документу, причём проект сохраняется вместе с самим этим документом. 




Редактор VBA

Для входа в редактор имеется два пути: горячие клавишы Alt + F11 и через меню Сервис - Макросы - Редактор Visual Basic. Также при изменении макроса в меню Вы автоматически окажетесь в редакторе. Меню редактора: 

File - команды сохранения изменений в проекте и вывода на экран и печать исходного кода макросов. 

Edit - команды управления исходным кодом в окне Code, а также объектами в формах. 

View - команды, позволяющие выводить или убирать с экрана различные окна самого редактора VBA. 

Insert - команды вставки в проект различных объектов: процедур, модулей, форм, классов и пр. 

Format - команды используемые при создании пользовательских диалоговых окон. Они позволяют выравнивать объекты в форме по отношению друг к другу, настраивать размеры и внешний вид элементов управления и другие операции. 

Debug - команды тестирования и отладки кода. Позволяют запускать код с любой точки, отслеживать ход выполнения по шагам, видеть значения, прерывать программу в нужном месте. 

Run - команды запуска программного кода на выполнение, прерывания, возобновление работы, а также возврата прерванной программы в исходное состояние. 

Tools - команды, позволяющие выбрать макрос для выполнения или получения доступа к внешним библиотекам макросов. Доступ к диалоговому окну Option (параметры) редактора и окну свойств VBA. 

Add-Ins - одна команда Add-in Manager для вывода диалогового окна в котором можно загружать, выгружать, регистрировать или определять поведение программ - дополнений (надстроек). 




ТЕХНИЧЕСКОЕ ЗАДАНИЕ ПРОЕКТА



Введение



В настоящее время заметна тенденция к переходу от традиционной формы контроля знаний, например, экзаменов, контрольных работ к тестированию.

Это проявляется во введении Единого Национального Тестирования (ЕНТ). Целью данной работы являться написание тестирующей программы. 

Программирование будет осуществляться с помощью языка программирования Visual Basic for Applications (VBA), встроенного в пакет Microsoft Office. Результаты будут предоставляться преподавателям, а также использоваться для дополнения тестовой базы.



Назначение разработки



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



Требования к программе или программному изделию



Требования к надежности

Программа должна проверять знания учащихся и  выполнять основные функции независимо от воздействия на нее внутренних и внешних факторов.

База данных работает под управлением Microsoft SQL Server. Используется много поточный доступ к базе данных. Необходимо обеспечить одновременную работу с программой с той же базой данной модулей экспорта внешних данных.

Время восстановления после отказа, вызванного сбоем электропитания технических средств (иными внешними факторами), не фатальным сбоем операционной системы, не должно превышать 30-ти минут при условии соблюдения условий эксплуатации технических и программных средств. 

Время восстановления после отказа, вызванного неисправностью технических средств, фатальным сбоем (крахом) операционной системы, не должно превышать времени, требуемого на устранение неисправностей технических средств и переустановки программных средств.

Требования к программным средствам: 

Минимальные

Процессор			                      не ниже Pentium-166

Оперативная память                                не менее 32 МБ

Свободная память на жестком диске       не менее 300 Мб

Устройство считывания с компакт-диска   +

Манипулятор «Мышь»                                +

Операционная система                        Windows 98/2000/XP

MS Excel 2002/2003 и MySQL.

Требования к защите информации и программ не предъявляются.




ОПИСАНИЕ ПРОГРАММЫ



Общие сведения



Тестирующая программа предназначена для проверки знаний учащихся.

Язык программирования Visual Basic for Applications (VBA), MySQL

	Системные требования: 

	Операционная система Windows 98-XP.

	Среда программирования Visual Basic for Applications

MySQL, ODBC



Назначение и область применения



Тестирующая программа предназначена для проверки знаний учащихся.



Функциональное назначение



Тестирующая программа предназначена для проверки знаний учащихся, позволяющая преподавателю в короткое время опросить несколько десятков учеников.




Описание логической структуры





  начало

меню







Запись данных





Запись данных



Добавление данных

тест



выход

Выбор ответа



Запись результата





выход





Используемые технические и программные средства



MS Excel 2002/2003 и MySQL.

Минимальные

Процессор			                      не ниже Pentium-166

Оперативная память                                не менее 32 МБ

Свободная память на жестком диске       не менее 300 Мб

Устройство считывания с компакт-диска   +

Манипулятор «Мышь»                                +

Операционная система                        Windows 98/2000/XP




Вызов и загрузка



Загрузка программы осуществляется с помощью пункт Сервис - Надстройки и выбрать файл с расширением .xla и поставить галочку напротив нужного файла.



Входные данные



Входными данными для программы является база данных, использующиеся для ввода Фамилии Имя, группы, Вопрос, Ответы, Номер правильного ответа. После прохождения теста оценка записывается в базу данных 



Выходные данные



Выходными данными для программы является база данных, использующиеся для записи оценки. При нажатии на кнопку Далее вопрос и ответы берутся из базы данных.






РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ



	Общие сведения о программе

	

Программа предназначена для проверки знаний учащихся. Пользователь имеет возможность получить адекватную оценку за  свои знания.

	

	Условия выполнения программы



Программа реализована на базе Microsoft Excel 2002/2003 и рассчитана для работы в операционной среде WINDOWS 98/XP с установленной программой Microsoft Excel 2002/2003 из комплекта Microsoft Office.

Программа тестировалась на ПК с процессором Pentium 200МГц и 32Мб оперативной памяти. Однако для работы с базами данных желательно иметь компьютер с более современной конфигурацией. 

Минимальные требования:

Монитор, клавиатура, системный блок, мышь.

	

	Характеристика программы

	

	Public Function QueryError() As Boolean

	    QueryError = myQueryError

	End Function

	

	Public Function ErrorText() As String

	    ErrorText = myErrorText

	End Function




	Настройка программы



Для работы программы необходимо установить MS Excel 2002/2003 и MySQL.

Для установки программы необходимо иметь 3 основных пакета:

1. mysql-connector-odbc-3.51.25-win32

2. mysql-5.0.51b-win32

3. mysql-gui-tools-5.0-r12-win32

Подробное описание установки MySQL-сервера на ваш локальный компьютер под управлением ОС Windows:

1. Для установки MySQL нам нужно будет запустить установщик. Распаковываем, установщик MySQL и запускаем Setup.exe и жмём кнопку Next.

2. Далее установщик нам предложит выбрать тип установки, выбираем тип Typical и жмём кнопку Next для продолжения установки MySQL.

3. На следующем шаге установки установщик показывает нам выбранный тип установки и путь, куда будет установлен MySQL. Для продолжения установки жмём кнопку Install.

4. После того как установщик установит MySQL, нам необходимо будет провести некоторые настройки. Жмём кнопку Finish, чтобы приступить к настройке MySQL.

5. После проведённых действий должен запуститься мастер настройки MySQL-сервера. Нажимаем кнопку Next для начала конфигурирования MySQL-сервера.

6. На следующем шаге настройки MySQL-сервера мастер предложит нам два типа конфигурации. Выбираем Стандартную конфигурацию и жмём кнопку Next для продолжения.

7. Далее мастер предложит нам установить MySQL-сервер как сервис Windows. Соглашаемся с этим и переходим к следующему шагу настройки.

8. На следующем шаге настройки нам нужно указать пароль Администратора сервера. Следует уделить этому шагу особое внимание! 

9. Хорошо запомните пароль, который вы задали для администратора MySQL-сервера! Вводим пароль и его подтверждение и продолжаем настройку.

10. Это заключительный шаг настройки MySQL. Нажимаем кнопку Execute. Если вы всё правильно сделали, и не былоникаких ошибок, нажимаем кнопку Finish. На этом настройка MySQL завершена.

Далее необходимо открыть Excel выбрать пункт Сервис - Надстройки и выбрать файл с расширением .xla и поставить галочку напротив нужного файла.

Запустить программу можно выбрать Пункт Тест - Начать тестирование 

Для удаления Пункта Тест  необходимо открыть Excel выбрать пункт Сервис - Надстройки и убрать галочку напротив нужного файла.

	

	Проверка программы



Для проверки внесли ли вы нужные данные, можно открыть базу данных. Выбрать необходимое поле таблицы и двойным щелчком щелкнуть по названию поля нужной таблицы. 



	Обращение к программе



К программе можно обратиться с помощью Excel. Выбрать Пункт Тест - Начать тестирование. Ответь на тест, и узнать результат тестирования.




	Выполнение программы



Для работы программы необходимо установить MS Excel 2002/2003 и MySQL.

Далее необходимо распаковать архив MySQL в выбранную директорию. Далее необходимо открыть Excel, выбрать пункт Сервис - Надстройки и выбрать файл с расширением .xla и поставить галочку напротив нужного файла.

Запустить программу можно выбрать Пункт Тест - Начать тестирование. 

Для удаления Пункта Тест  необходимо открыть Excel, выбрать пункт Сервис - Надстройки и убрать галочку напротив нужного файла.

Для ввода теста в базу данных необходимо выбрать Пункт Тест – Добавить данные.



	Сообщения



В программе используются сообщения. Сообщение выдается при запуске программы. После прохождения теста с помощью сообщения пользователь может узнать свой результат, а затем и время за которое он прошел тест. При выходе из программ появляется подтверждающее сообщение хотите ли вы выйти Да или Нет.

	




ЗАКЛЮЧЕНИЕ



Решение данной задачи помогло более глубоко и основательно  изучить и укрепить на практике все тонкости и моменты среды программирования Visual Basic for Applications.

Программа написана на языке программирования VBA, позволяющая проводить тестирование.

В дальнейшем планируется в данной программе осуществить выбор тестирования из списка. Добавить редактирование нужного вопроса или ответа.

В ходе работы были изучены и реализованы команды на добавление в MySQL. 




СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ



А.Васильев, А.Андреев VBA в Office 2000: учебный курс   

Санкт – Петербург, «Питер», 2001, с.410

А.Гладкий, А.Чиртик Трюки и эффекты Excel Санкт – Петербург, «Питер», 2006, с.368

Л.А.Демидова, А.Н.Пылькин Программирование в среде Visual Basic for Applications, Москва, «Горячая линия - Телеком», 2004, с.175

В.Г.Кузьменко Программирование на VBA 2002, Москва, «Бином», 2003, с.880

С.Каммингс VBA для “чайников”, 3-е издание, «Вильямс», 2001, с.448

П.Дюбуа, MySQL,  «Вильямс», 2001, c.816

Л.Веллинг, Л.Томсон MySQL. Учебное пособие, «Вильямс», 2005, с.304

П.Дюбуа, MySQL, 2-е издание, «Вильямс», 2004, с.1056

А.С.Марков, К.Ю.Лисовский Базы данных, Москва, «Финансы и статистика», 2006, с.512

 А.Горев, С.Макашарипов, Р.Ахаян. Эффективная работа с СУБД






ПРИЛОЖЕНИЕ А



Процедуры, используемые в программе

Sub VREMY()

'Процедура для определения приветствия

 If Time < 0.5 Then

 MsgBox "Доброе утро" & ". Вас приветствует тестовая программа"

 Else

 If Time >= 0.5 And Time < 0.7 Then

 MsgBox "Добрый день" & ". Вас приветствует тестовая программа"

 Else

 If Time >= 0.7 Then

 MsgBox "Добрый вечер" & ". Вас приветствует тестовая программа"

 End If

 End If

 End If

End Sub



Выставление оценки

Public Sub resultat()

If prav_otv = 0 Then

Call MsgBox("Всего правильных ответов " + CStr(prav_otv) + " из 4" + vbCrLf + "Оценка 2", vbCritical + vbOKOnly, "Tester")

End If

Запись полученной оценки в базу данных

  Call Database.QueryMySQL("INSERT INTO test.rezyltat (ocenca)" + _

            "VALUES ('" + CStr(2) + "');")




ПРИЛОЖЕНИЕ В



Запись данных в базу данных MySQl:

Call Database.QueryMySQL("INSERT INTO test.svedenia (Familia_Imia, gruppa)" + _

"VALUES ('" + TextBox1.Text + "', '" + TextBox2.Text + "');") 



Выбор случайного теста:

a = Database.QueryMySQL("SELECT * FROM test.vopros ORDER BY RAND() LIMIT 4")