Обработка результатов экзаменационной сессии

 

Введение


Данная курсовая работа ставит перед собой задачу проверки знаний в изучении дисциплины «Программирования» на языке высокого уровня С++ в графическом интерфейсе. Работа представляет индивидуальное задание по разработке программы на изучаемом языке.

Заданием курсовой работы является разработка программы «Обработка результатов экзаменационной сессии». Эта программа считывает данные из исходных файлов и заносит их в таблицу MS Excel, так же создается документ MS Word содержащий сообщения об ошибках и список обработанных файлов. Проект интересен тем, что в нем реализуется работа с файлами и взаимодействие с распространенным пакетом MS Office.

В курсовой работе будут рассмотрены алгоритмы выполнения задач для работы с файлами, взаимодействием с пакетом MS Office. А так же алгоритмы работы с таблицами и проверки правильности входной информации. Все решения будут рассмотрены на языке С++.

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


Постановка задачи


Курсовая работа выполняется с целью закрепления теоретических знаний и получения практических навыков проектирования приложений для операционной системы Windows на основе технологии визуального программирования на языке С++.

В результате выполнения курсовой работы необходимо разработать многооконное приложение в Microsoft Visual C++. Данная программа предназначена для работы с текстовыми файлами и файлами MS Office и вводимыми пользователем данными. Программа должна обеспечивать пользователю простоту и понятность.

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

Далее указываются места сохранения конечных файлов и, если такие файлы уже существуют, то они перезаписываються. После чего исходные файлы поочередно обрабатываются, и результат сохраняется в книгу MS Excel в виде отдельного листа, а в документ MS Word записываются результаты обработки.

Так же приложение имеет краткие сведения о программе и HTML справку.


Проектирование структуры программы

программа алгоритм файл информация

Опишем основные модули программы:

-модуль контроля данных - отвечает за хранение списка входных данных и обеспечивает пользователю интерфейс добавления и удаления записей;

-модуль обработки данных - обеспечивает ввод данных из исходных файлов, проверку корректности входных данных, их обработку и вывод в выходные файлы, а так же обработку сообщений об ошибках;

-модуль интерфейса программы - предоставляет основной пользовательский интерфейс программы;

Ниже разберем стандартные компоненты, используемые в программе.

Приложение создано в Visual C++ при помощи интерфейса программирования приложений (API) Windows Forms, которое отвечает за графический интерфейс пользователя и является частью платформы Microsoft.NET Framework. Данный интерфейс упрощает доступ к элементам интерфейса Microsoft Windows за счет создания обертки для существующего Win32 API в управляемом коде. Причем управляемый код - классы, реализующие API для Windows Forms, не зависят от языка разработки.

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

Программные компоненты взаимодействуют друг с другом посредством API. При этом обычно компоненты образуют иерархию - высокоуровневые компоненты используют API низкоуровневых компонентов, а те, в свою очередь, используют API ещё более низкоуровневых компонентов.

В данном приложении используются следующие формы Windows Forms и их методы и свойства:

1.Button - представляет элемент управления Windows «Кнопка», в программе используется обработчик события нажатия на кнопку «Click».

2.OpenFileDialog и SaveFileDialog представляют окна предлагающие пользователю соответственно открыть или сохранить файл, а так же их метод ShowDialog собственно запускающий диалоговое окно и возвращающий DialogResult:OK если пользователь нажимает кнопку «ОК» в диалоговом окне или DialogResult: Cancel в противном случае. И свойства:

ØFileName - предоставляющие путь до выбранного файла;

ØFileNames - предоставляющие массив путей до выбранных файлов;

ØMultiselect - разрешающие выбирать несколько файлов;

ØSafeFileNames - предоставляющие массив имен выбранных файлов.

.ListView предоставляет элемент управления списком Windows, в представлении Details (табличное представление). И его методы Items->Add - добавляющий элемент и Items->RemoveAt - удаляющий элемент с указанным индексом.

.Индикатор выполнения Windows - ProgressBar со свойством Value отображающие заполнение элемента.

5.Label - стандартная надпись Windows и ее свойство Text - предоставляющие текст надписи.

6.MenuStrip - предоставляющие стандартную систему меню для формы и обработчики события Click по элементам меню.

Так же в приложении используется основная сборка взаимодействия (PIA) MS Office облегчающие взаимодействие между управляемым кодом СОМ - библиотеками Office.

СОМ-сборки взаимодействия позволяют выполнять неуправляемый код (СОМ) из управляемого кода (.NET) при помощи Microsoft.NET Framework и общеязыковой среды выполнения. СОМ-сборки взаимодействия позволяют управляемым приложениям привязываться к неуправляемым типам во время компиляции и затем передавать в общеязыковую среду выполнения информацию о том, как в процессе выполнения должны группироваться неуправляемые типы.

Хотя для каждой конкретной библиотеки может существовать неограниченное число СОМ-сборок взаимодействия, только одна из них может выступать в роли PIA.содержит официальное описание неуправляемых типов, определяемых их издателем.

Используются следующие компоненты:

vбиблиотека Microsoft. Office. Interop. Excel.dll:

Øинтерфейс Application - представляет приложение MS Excel:

§свойство DisplayAlerts - разрешает показ сообщений MS Excel;

§метод Quit - завершает текущий экземпляр MS Excel;

Øинтерфейс Workbook - представляет книгу Excel:

§метод SaveAs - сохраняет текущую книгу;

Øинтерфейс Workbooks - представляет коллекцию всех книг открытых в текущем приложении MS Excel:

§метод Add - создает новую книгу;

§метод Open - открывает существующую книгу;

Øинтерфейс _Worksheet - представляет лист книги Excel:

§свойство Name - представляет имя листа;

§свойство Cells - представляет все ячейки листа:

·свойство Item - представляет определенную ячейку;

Øинтерфейс Worksheets - представляет коллекцию листов книги Excel;

vбиблиотека Microsoft. Office. Interop. Word:

Øинтерфейс Application - представляет приложение MS Word:

§метод Quit - завершает текущий экземпляр MS Word;

§свойство Selection - представляет текущий выбранный документ:

·метод TypeText - вставляет заданный текст;

·метод TypeParagraph - вставляет новый параграф;

§свойство ActiveDocument - представляет активный документ:

·метод SaveAs - сохраняет активный документ;

ØDocuments - представляет коллекцию документов открытых в MS Word:

§метод Open - открывает существующий документ;

§метод Add - создает новый документ;

Øинтерфейс Document - представляет документ:

§свойство Content - представляет набор объектов характеризующий свойства текущего документа:

·свойство Font - представляет шрифт в текущем документе:

¨свойство Size - представляет размер шрифта;

¨свойство Name - представляет шрифт в текущем документе;


Проектирование пользовательского интерфейса


При разработке программы стояла задача создания не только кода программы, но и проектирования понятного интерфейса программы для пользователя.

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

Меню - это одна из наиболее заметных частей приложения. При создании меню программы использовались традиционные пункты, такие как: «О программе», «Справка». Всего в меню содержится 2 пункта. Первый пункт «Файл» включает в себя подпункты «Начать обработку», «Добавить исходные файлы», «Удалить» дублирующие функции соответствующих кнопок и кнопку «Выход» завершающие приложение. Второй пункт «Справка» содержащий два подпункта «Справка» и «О программе».

На первом этапе проектирования программы при помощи стандартных средств Visual C++ была создана главная форма, и на нее были добавлены 3 элемента Button, label, progressBar, menuStrip, ListView в режиме Details, а также OpenFileDialog и 2 SaveFileDialog. Далее при помощи редактора свойств были изменены необходимые (Рисунок 1) и добавлены обработчики событий (Рисунок 2).


Рисунок 1


Рисунок 2


Проектирование модулей (функций) приложения


.Модуль контроля данных

Состоит из следующих обработчиков:

Øbut_add_Click - обработчик события Click по кнопке «Добавить исходные файлы». Вызывает OpenFileDialog с фильтром на текстовые файлы (.txt). После чего проверяется корректный выбор файла и проверка на его наличие в массиве входных файлов, в случае его обнаружения пользователь получает сообщение, что файл уже выбран, в противном случае добавляет его в массив входных файлов и в ListBox стандартными методами.

ØDel_button_Click - обработчик события Click по кнопке «Удалить» удаляющий указанный файл из массива входных файлов и ListBox стандартными методами.

ØForm1_Load - обработчик загрузки обеспечивает инициализацию компонентов.

Полные блок схемы этих обработчиков изображены в «ПРИЛОЖЕНИИ А».

.Модуль обработки данных

Состоит из:

Øобработчика button1_Click - обработчика события Click по кнопке «Начать обработку». Вызывает два SaveFileDialog запрашивающих места сохранения выходных файлов, если эти файлы уже существуют удаляет их после чего вызывает основную функцию обработки fprocess. В процессе обработки выводиться сообщение «Идет обработка. Пожалуйста подождите…» и заполняеться progressBar. Полная блок схема изображена в «ПРИЛОЖЕНИИ Б».

Øфункции fprocess - обрабатывающий указанной файл и сохраняющей результат по полученным путям. Функция проверяет корректность номера группы в файле (первая строка), после чего создается экземпляр MS Excel без видимого окна и проверяется существование выходного файла, если он существует то в него добавляется новый лист в против ном случае создается новая книга MS Excel с единственным листом после чего при помощи циклов на лист выводиться содержимое всех строк файла. При возникновении ошибок в структуре данных вызывается функция log которой передаться код ошибки и путь до файла MS Word после чего работа завершается. В случае успешного выполнения результат сохраняется и вызывается функция log которой передается номер обработанной группы код успешного завершения и путь до файла MS Word. Полная блок схема изображена в «ПРИЛОЖЕНИИ В».

Øфункция log - создает экземпляр MS Word без видимого окна, после чего проверяется существование выходного файла, если файл существует то информация записывается в его конец, в противном случае он создается. В зависимости от кода ошибки в файл записываться соответствующая строка и добавляется символ переноса строки после чего файл сохраняется, закрывается MS Word и функция завершает свою работу. Полная блок схема изображена в «ПРИЛОЖЕНИИ Г».

.Модуль интерфейса программы

Состоит из обработчиков:

ØвыходToolStripMenuItem_Click - обработчик события Click по подпункту меню «Файл» «Выход» обеспечивает завершение приложения.

ØсправкаToolStripMenuItem1_Click - обработчик события Click по подпункту меню «Справка» «Справка» обеспечивает вывод справки.

ØоПрограммеToolStripMenuItem_Click - обработчик события Click по подпункту меню «О программе» «Справка» обеспечивает вывод информации о разработчике.

ØForm1_KeyDown - обработчик события нажатий на клавиши клавиатуры. Обеспечивает вывод справки при нажатии F1.

Полные блок схемы этих обработчиков изображены в «ПРИЛОЖЕНИИ Д».


Тестирование программы


Существует множество подходов к решению задачи тестирования и верификации ПО, но эффективное тестирование сложных программных продуктов - это процесс в высшей степени творческий, не сводящийся к следованию строгим и чётким процедурам или созданию таковых.

Опишем несколько тестов для нашего приложения.

.Создадим текстовый файл содержащий правильно сформированные данные и обработаем его программой. В результате должен получиться файл MS Excel содержащий данные исходного файла и документ Word с записью об успешной обработке.

Тест пройден. Результат положительный.

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

Тест пройден. Результат положительный.

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

Тест пройден. Результат положительный.

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

Тест пройден. Результат положительный.

Таким образом, после полного тестирования разработанного программного продукта мы однозначно убеждаемся, что он работает адекватно и без ошибок.


Разработка справочной системы приложения


Для написания HTML справки была использована программа «HTML Help Workshop», при помощи которой был создан и скомпилировал *chm файл справки.

Формат CHM - это скомпилированный файл справки, пришедший на смену более старому формату HLP. Преимущества его в том, что он состоит из html-страниц, а это значит, что доступны все технологии, которыми изобилует html (css-оформление и т.д.). Кроме того, вся эта «сборка» очень хорошо сжимается, что в конечном итоге даёт меньший размер, чем суммарный всех html-файлов.

Сначала были созданы HTM файлы представляющие отдельные страницы справки:

Страница описывающая входные файлы:


<! DOCTYPE HTML PUBLIC «- //IETF //DTD HTML //EN»>

<HTML>

<HEAD>

<meta name= «GENERATOR» content= «Microsoft&reg; HTML Help Workshop 4.1»>

<Title>Входные файлы</Title>

</HEAD>

<BODY>


Входные файлы програмы представляют собой текстовые файлы (.txt с кодировкой ANSI) на первой строке которых содержиться номер группы первые шесть символов которого - цифры. Номер группы не может содержать символы: «\», «/»,»:», «[»,»]»,» «», «*».

Остальные строки файла содержат фамилии и инициалы студентов и через пробел их оценки.


</BODY>

</HTML>


Страница описывающая ошибки которые могут возникнуть при работе программы и способы их устранения:


<! DOCTYPE HTML PUBLIC «- //IETF //DTD HTML //EN»>

<HTML>

<HEAD>

<meta name= «GENERATOR» content= «Microsoft&reg; HTML Help Workshop 4.1»>

<Title>ошибки</Title>

</HEAD>

<BODY>


Ошибки:

. Ошибки при запуске<BR>

Решение: Установите MS.NET Framework 4.0 и MS office 2007 или старше.<BR>

. «Нет доступа к файлу…«<BR>

Решение: Закройте все программы использующие указанный файл или разрешите программе перезапись файла.<BR>

. «Файл… не найден»<BR>

Решение: Указано неверное имя исходного файла или файл не существует, укажите правильный путь к файлу. <BR>

. «Невозможно обработать… файл содержить неверные данные»<BR>

Решение: Исправте содержимое файла согласну разделу входные файлы.<BR>

. «Невозможно обработать… группа с таким номером уже обработана»<BR>

Решение: исключите один из конфликтующих файлов из списка обработки или обработайте его отдельно.<BR>


</BODY>

</HTML>


Страница описывающая использование программы:


<! DOCTYPE HTML PUBLIC «- //IETF //DTD HTML //EN»>

<HTML>

<HEAD>

<meta name= «GENERATOR» content= «Microsoft&reg; HTML Help Workshop 4.1»>

<Title>гланая</Title>

</HEAD>

<BODY>


Программа предназначена для обработки результатов экзаменационной сессии. Для работы с программой пользователю нужно нажать кнопку «Добавить исходные файлы» после чего указать обрабатываемые файлы, когда все обработанные файлы будут добавлены необходимо нажать кнопку «Начать обработку» и указать место сохранения выходных файлов (книга excel содержит обработанные результаты, документ Word список обработанных групп и сообщения об ошибках). Для удаления файлов из списка обрабатываемых используется кнопка удалить.


</BODY>

</HTML>


Потом был создан новый проект и добавлено содержание для него в которое были внесены исходные htm файлы и проект был скомпилирован.

Создание инсталлятора


Для создания инсталлятора была использована программа Smart Install Market.

Сначала укажем имя продукта и его версию (Рисунок 3), после чего добавим в проект все необходимые файлы (Рисунок 4).


Рисунок 3


Рисунок 4


Добавим ярлык на рабочий стол (Рисунок 5) и компилируем проект (Рисунок 6).


Рисунок 5


Рисунок 6


Рекомендации по использованию программного продукта


Пользователь приложения имеет возможность выполнять следующие действия:

ØДобавлять в файлы в список обработки нажатием кнопки «Добавить исходные файлы» или выбором пункта меню «Файл» «Добавить исходные файлы» после чего необходимо указать один или несколько добавляемых файлов и нажать кнопку «ОК».

ØУдалять файлы из списка обработки выбором нужного пункта в списке и нажатием кнопки «Удалить» или выбором пункта меню «Файл» «Удалить».

ØЗапускать обработку выбранных файлов нажатием кнопки «Начать обработку» или выбором пункта меню «Файл» «Начать обработку».

ØВыходить из программы выбором пункта меню «Файл» «Выход».

ØПолучать справку выбором пункта меню «Справка» «Справка».

ØПолучать информацию о программе выбором пункта меню «Справка» «О программе».

Пример использования программы: создадим текстовый файл dat с номером группы на первой строке и списком с несколькими студентами на других (Рисунок 7), добавим это файл в список обработки (Рисунок 8) и обработаем его (Рисунок 9), после чего убедимся в результате (Рисунок 10).


Рисунок 7


Рисунок 8


Рисунок 9


Рисунок 10

Заключение


В процессе разработки данной программы была интеграция MS Office и платформы.NET Framework.

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

Из сделанных выводов видно, что интеграция приложения с Microsoft Office дает возможность более эффективного решения самого широкого спектра задач.


Приложение А


Обработчик but_add_Click


Обработчик Del_button_Click

Обработчик Form1_Load


Приложение Б



Введение Данная курсовая работа ставит перед собой задачу проверки знаний в изучении дисциплины «Программирования» на языке высокого уровня С++

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2019 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ