Разработка системы автоматического заполнения анкеты в формате MS Word - Курсовая работа

бесплатно 0
4.5 126
Преимущества Delphi по сравнению с аналогичными программными продуктами. Особенности разработки системы автоматического заполнения анкеты в формате MS Word. Разработка программного обеспечения. Процедуры пользовательского интерфейса. Листинг программы.


Аннотация к работе
u файл из элементов, тип которых не указан (нетипизированный файл); Для работы с файлом в программе объявляется файловая переменная (логический файл) в разделе описания переменных: имя_файла:file of тип_элементов_файлов; Файл, компонентами которого являются данные символьного типа, называется символьным, или текстовым: имя_файла:TEXTFILE; Для этого используется процедура: ASSIGNFILE(var f, имя_файла:String); Отличие между этими процедурами в том, что при вызове инструкции readln указатель чтения из файла автоматически перемещается в начало следующей строки файла.В результате выполнение курсовой работы была создана программа, реализующая автоматическое заполнение анкеты в формате MS Word. Данная программа позволяет: u Отвечать на вопросы анкеты u Автоматически заполнять анкету в Word файле u Сохранить результаты анкетирование в файлеcod1:=Edit1.Text; WORDAPPLICATION1.Selection.Find.Execute(doc1,EMPTYPARAM,EMPTYPARAM, EMPTYPARAM,EMPTYPARAM,EMPTYPARAM, EMPTYPARAM,FONE1,EMPTYPARAM,cod1, RONE1,EMPTYPARAM,EMPTYPARAM, EMPTYPARAM,EMPTYPARAM); cod2:=Edit2.Text; WORDAPPLICATION1.Selection.Find.Execute(doc2,EMPTYPARAM,EMPTYPARAM, EMPTYPARAM,EMPTYPARAM,EMPTYPARAM, EMPTYPARAM,FONE2,EMPTYPARAM,cod2, RONE2,EMPTYPARAM,EMPTYPARAM, EMPTYPARAM,EMPTYPARAM); WORDAPPLICATION1.Selection.Find.

Введение
анкета автоматический заполнение программа

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

Delphi - это продукт Borland International для быстрого создания приложений. Высокопроизводительный инструмент визуального построения приложений включает в себя настоящий компилятор кода и предоставляет средства визуального программирования, несколько похожие на те, что можно обнаружить в Microsoft Visual Basic или в других инструментах визуального проектирования. В основе Delphi лежит язык Object Pascal, который является расширением объектно-ориентированного языка Pascal. В Delphi также входят локальный SQL-сервер, генераторы отчетов, библиотеки визуальных компонентов, и прочее хозяйство, необходимое для того, чтобы чувствовать себя совершенно уверенным при профессиональной разработке информационных систем или просто программ для Windows-среды.

Это среда разработки, используемой прежде всего для создания и поддержки приложений, предназначенных как для отдельных персональных компьютеров, так и для серверов. Delphi, как и разработанные с ее помощью приложения, могут функционировать под практически любой 32 разрядной операционной системой Windows. Это довольно легкая в изучении среда, и в то же время довольно сложная. Изучить ее полностью и досконально - невозможно.

Прежде всего, Delphi предназначен для профессиональных разработчиков, желающих очень быстро разрабатывать приложения в архитектуре клиент-сервер. Delphi производит небольшие по размерам (до 15-30 Кбайт) высокоэффективные исполняемые модули (.exe и .dll), поэтому в Delphi должны быть прежде всего заинтересованы те, кто разрабатывает продукты на продажу. С другой стороны небольшие по размерам и быстро исполняемые модули означают, что требования к клиентским рабочим местам существенно снижаются - это имеет немаловажное значение и для конечных пользователей.

Delphi имеет пользовательский графический интерфейс, подобный Visual Basic и C . Человек, ранее работавший в подобной среде, не будет чувствовать себя не в своей тарелке. Честно говоря, на данный момент множество фирм приняло за стандарт данный интерфейс для собственных приложений. Хорошим стимулом к получению знаний по данному предмету является знание хоть какого-нибудь языка программирования, или принципов написания программы. Идеально - знание языка программирования Pascal. Ведь весь исходный текст программы на Дельфи пишется на языке Object Pascal, практически ничем не отличающимся от принципов, заложенных в такой знаменитой программной оболочке. Синтаксис, принцип модуля, процедуры, функции, все взято за основу.

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

Преимущества Delphi по сравнению с аналогичными программными продуктами: u простой и мощный язык программирования Pascal;

u быстрота разработки приложения;

u высокая производительность разработанного приложения;

u низкие требования разработанного приложения к ресурсам компьютера;

u наращиваемость за счет встраивания новых компонент и инструментов в среду Delphi;

u возможность разработки новых компонент и инструментов собственными средствами Delphi (существующие компоненты и инструменты доступны в исходных кодах);

u удачная проработка иерархии объектов. u обширная объектная библиотека VCL;

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

1.

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

Разработка системы автоматического заполнения анкеты в формате MS Word.

Основные требования: Анкета должна иметь корректные условия переходов от одного вопроса к другому. Вопросов в анкете должно быть не менее 15.Типов данных для вводимых ответов должно быть не менее 3.

2.

Выбор средств реализации

2.1 Работа с файлами

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

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

В зависимости от типа элементов различают три вида файла: u файл из элементов определенного типа (типизированные файлы);

u файл из элементов, тип которых не указан (нетипизированный файл);

u текстовый файл, т.е. элементами являются текстовые строки.

Для работы с файлом в программе объявляется файловая переменная (логический файл) в разделе описания переменных: имя_файла:file of тип_элементов_файлов;

Файл, компонентами которого являются данные символьного типа, называется символьным, или текстовым: имя_файла:TEXTFILE;

После объявления файловой переменной, которая задает тип компонентов файла, необходимо указать конкретный файл, т.е. связать файловую переменную с физическим файлом. Для этого используется процедура: ASSIGNFILE(var f, имя_файла:String);

Функции и процедуры для работы с файлами: 1. Открытие файла для записи. a. Перезапись (запись нового файла поверх существующего или создание нового файла) - используется процедура rewrite (файловая_переменная). b. добавление в конец файла - используется процедура append (файловая_переменная)

2. Запись в файл a. Write(файловая_переменная, список_переменных) b. Writeln(файловая_переменная, список_переменных)

Различие между инструкциями в том, что инструкция writeln после вывода всех значений, записывает в файл символ «новая строка».

3. Закрытие файла. Перед завершением работы все открытые файлы необходимо закрыть с помощью процедуры a. CLOSEFILE (файловая_переменная)

4. Открытие файла для чтения. Используется процедура a. Reset (файловая_переменная)

5. Чтение данных из файла a. read(файловая_переменная, список_переменных) b. readln(файловая_переменная, список_переменных)

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

6. Определение конца файла. Используется функция EOF(файловая_переменная). Значение функции равно false, если прочитанный элемент данных не является последним в файле, т.е. возможно дальнейшее чтение. Если прочитанный элемент файла является последним, то значение EOF равно true. a. While not eof(f) do begin … end;

7. Rename(var F; NEWNAME: string) - переименовывает неоткрытый файл F любого типа. Новое имя задается в NEWNAME.

8. Seek(var F; NUMREC: Longint) - устанавливает позицию чтения записи на элемент с номером NUMREC; F - типизированный или нетипизированный файл.

9. IORESULT: Integer - возвращает код, характеризующий результат (была ошибка или нет) последней операции ввода-вывода.

10. FILEPOS(var F): Longint - возвращает для файла F текущую файловую позицию (номер элемента, на которую она установлена, считая от нуля). Не используется с текстовыми файлами.

11. FILESIZE(var F): Longint - возвращает число компонент в файле F.

Не используется с текстовыми файлами.

Для работы с файлами можно использовать следующие визуальные компоненты: u OPENDIALOG;

u SAVEDIALOG и др, которые находятся на вкладке Dialogs.

2.2 Работа с MS Word

Если на главную форму выкладываем компоненту с закладки servers, которая называется, например WORDAPPLICATION, то при запуске приложения запустится сервер автоматизации Microsoft Word. Этот факт можно обнаружить, запустив на выполнение task manager и выбрав закладку processes. Среди прочих процессов мы обнаруживаем winword.exe. При этом выполняются следующие действия: - при создании формы, в системном реестре, по идентификатору CLSID был найден сервер Word.Application

- запущено на выполнение приложение, находящееся по адресу в реестре (progid)

- сервер предоставил нашему приложению, которое и является контроллером автоматизации интерфейс, через который мы и получим доступ к объекту Application.

Практически всегда при работе с сервером Word вам приходится иметь дело с свойством Documents. Это свойство представляет собой собрание всех документов, открытых в Word в данный момент. Каждый документ представлен в этом собрании как объект Document, имеющий в свою очередь собственные свойства и методы. Общее число открытых документов определяется свойством count собрания документов Documents.

При вызове из delphi любого метода сервера сом аргументы (кроме аргументов типа text) передаются только как объекты типа OLEVARIANT. Если какие-то аргументы не являются обязательными, то все равно они должны фигурировать в вызове метода. Только вместо их значений может быть указана EMPTYPARAM -переменная типа OLEVARIANT, используемая вместо необязательных параметров. Эта переменная объявлена в модулях System и Olectrls. Таким образом, если вы хотите создать новый документ на основе обычного шаблона, вы можете записать оператор: WORDAPPLICATIONL.Documents.Add(EMPTYPARAM,EMPTYPARAM, EMPTYPARAM, EMPTYPARAM);

Важным свойством сервера Word является свойство Selection, являющееся ссылкой на выделенный фрагмент текста в активном документе или, если нет выделения, то просто текущая позиция курсора в активном документе. Этот объект имеет методы INSERTBEFORE и INSERTAFTER, аргументом в которые передается текст, вставляемый в активный документ соответственно до или после объекта Selection.

Сохранение активного документа в файле с заданным именем можно осуществить методом SAVEAS класса Document, передавая в него как аргумент типа OLEVARIANT имя файла с путем к нему. Если путь отсутствует, то файл сохраняется в текущем каталоге.

В данной курсовой используется замена текста. Для того чтобы произвести замену нужно: 1. Создать на форме документ WORDAPPLICATION: WORDAPPLICATION1: TWORDAPPLICATION;

2. Создать Word файл: FNAME:="K:\\Универ\\Программирование\\Курсач 2.0\\Anceta.doc";

3. Настроить соединение с сервером Word и подключиться к документу: WORDAPPLICATION1.Connect;

4. Открыть этот файл: WORDAPPLICATION1.Documents.Open(FNAME,EMPTYPARAM,EMPTYPARAM, EMPTYPARAM,EMPTYPARAM,EMPTYPARAM,EMPTYPARAM,EMPTYPARAM, EMPTYPARAM,EMPTYPARAM,EMPTYPARAM,EMPTYPARAM,EMPTYPARAM, EMPTYPARAM,EMPTYPARAM);

5. Перейти к началу файла: start:=WDSTORY;

WORDAPPLICATION1.Selection.Homekey(Start,EMPTYPARAM);

6. Произвести поиск и замену в документе: doc1:="";

cod1:=Edit1.Text;

FONE1:=WDFINDSTOP;

RONE1:=WDREPLACEONE;

WORDAPPLICATION1.Selection.Find.Execute(doc1,EMPTYPARAM, EMPTYPARAM, EMPTYPARAM,EMPTYPARAM,EMPTYPARAM,EMPTYPARAM,FONE1,EMPTYPARAM,cod1,RONE1,EMPTYPARAM,EMPTYPARAM,EMPTYPARAM,EMPTYPARAM);

3.

Разработка программного обеспечения

3.1 Документация разработанной программы

В разработанной программе используются такие модули: Windows, Messages, SYSUTILS, Variants, Classes, Graphics, Controls, Forms, Dialogs, STDCTRLS, COMCTRLS, EXTCTRLS, OLESERVER, WORDXP, Menus;

Так же используются такие компоненты: u PAGECONTROL1: TPAGECONTROL - набор панелей с закладками;

u TABSHEET1: TTABSHEET - I вкладка «Личные данные»;

u GROUPBOX1: TGROUPBOX - контейнер группы элементов «ФИО»;

u Label1: TLABEL - метка «Фамилия»;

u Label2: TLABEL - метка «Имя»;

u Label3: TLABEL - метка «Отчество»;

u Edit1: TEDIT - строка ввода фамилии;

u Edit2: TEDIT - строка ввода имени;

u Edit3: TEDIT - строка ввода отчества;

u GROUPBOX2: TGROUPBOX - контейнер группы элементов «Рождение»;

u Label4: TLABEL - метка «Дата»;

u Label5: TLABEL - метка «Место»;

u DATETIMEPICKER1: TDATETIMEPICKER - селектор даты рождения;

u Edit4: TEDIT - строка ввода места рождения;

u GROUPBOX3: TGROUPBOX - контейнер группы элементов «Пол»;

u COMBOBOX1: TCOMBOBOX - выпадаюший список выбора пола;

u GROUPBOX4: TGROUPBOX - контейнер группы элементов «Дата заполнения»;

u DATETIMEPICKER2: TDATETIMEPICKER - селектор даты заполнения;

u TABSHEET2: TTABSHEET - II вкладка «Адрес /Контактные данные»;

u TABSHEET3: TTABSHEET - III вкладка «Образование»;

u TABSHEET4: TTABSHEET - IV вкладка «Работа»;

u TABSHEET5: TTABSHEET - V вкладка «Навыки»;

u TABSHEET6: TTABSHEET - VI вкладка «Брак/Дети»;

u TABSHEET7: TTABSHEET - VII вкладка «Другое»;

u GROUPBOX7: TGROUPBOX - контейнер группы элементов «Гражданство»;

u Edit7: TEDIT - строка ввода гражданства;

u GROUPBOX5: TGROUPBOX - контейнер группы элементов «Адрес»;

u Edit5: TEDIT - строка ввода фактического проживания;

u Edit6: TEDIT - строка ввода прописки;

u Label6: TLABEL - метка «Фактического проживания»;

u Label7: TLABEL - метка «По прописке»;

u GROUPBOX6: TGROUPBOX - контейнер группы элементов «Связь»;

u Label8: TLABEL - метка «Телефон»;

u Label9: TLABEL - метка «E-mail»;

u Edit8: TEDIT - строка ввода номера телефона;

u Edit9: TEDIT - строка ввода электронной почты;

u GROUPBOX14: TGROUPBOX - контейнер группы элементов «Дети»;

u Label23: TLABEL - метка «Количество»;

u Edit44: TEDIT - строка ввода количества детей;

u GROUPBOX13: TGROUPBOX - контейнер группы элементов «Брак»;

u Edit43: TEDIT - строка ввода состояния в браке;

u GROUPBOX8: TGROUPBOX - контейнер группы элементов «Образование»;

u Label10: TLABEL - метка «Специальность»;

u Label11: TLABEL - метка «Учебное заведение»;

u Edit10: TEDIT - строка ввода специальности;

u Edit11: TEDIT - строка ввода специальности;

u Edit12: TEDIT - строка ввода специальности;

u Edit13: TEDIT - строка ввода учебного заведения;

u Edit14: TEDIT - строка ввода учебного заведения;

u Edit15: TEDIT - строка ввода учебного заведения;

u GROUPBOX9: TGROUPBOX - контейнер группы элементов «Опыт работы»;

u Label12: TLABEL - метка «Дата приема»;

u Label13: TLABEL - метка «Дата увольнения»;

u Label14: TLABEL - метка «Компания»;

u Label15: TLABEL - метка «Должность»;

u Label16: TLABEL - метка «Причина увольнения»;

u Edit16: TEDIT - строка ввода компании;

u DATETIMEPICKER3: TDATETIMEPICKER - селектор даты приема;

u DATETIMEPICKER4: TDATETIMEPICKER - селектор даты увольнения;

u Edit17: TEDIT - строка ввода компании;

u Edit18: TEDIT - строка ввода компании;

u Edit19: TEDIT - строка ввода должности;

u Edit20: TEDIT - строка ввода должности;

u Edit21: TEDIT - строка ввода должности;

u Edit22: TEDIT - строка ввода причины увольнения;

u Edit23: TEDIT - строка ввода причины увольнения;

u Edit24: TEDIT - строка ввода причины увольнения;

u GROUPBOX10: TGROUPBOX - контейнер группы элементов «Знание языков»;

u GROUPBOX11: TGROUPBOX - контейнер группы элементов «Программы»;

u GROUPBOX12: TGROUPBOX - контейнер группы элементов «Водительское удостоверение»;

u Label17: TLABEL - метка «Язык»;

u Label18: TLABEL - метка «Уровень»;

u Edit25: TEDIT - строка ввода языка;

u Edit26: TEDIT - строка ввода языка;

u Edit27: TEDIT - строка ввода языка;

u Edit28: TEDIT - строка ввода уровня;

u Edit29: TEDIT - строка ввода уровня;

u Edit30: TEDIT - строка ввода уровня;

u Label19: TLABEL - метка «Программы/Пакет»;

u Label20: TLABEL - метка «Уровень»;

u Edit31: TEDIT - строка ввода программ/пакетов;

u Edit32: TEDIT - строка ввода программ/пакетов;

u Edit33: TEDIT - строка ввода программ/пакетов;

u Edit34: TEDIT - строка ввода уровня;

u Edit35: TEDIT - строка ввода уровня;

u Edit36: TEDIT - строка ввода уровня;

u Edit37: TEDIT - строка ввода категории;

u Label21: TLABEL - метка «Категория»;

u Label22: TLABEL - метка «Стаж»;

u Edit38: TEDIT - строка ввода категории;

u Edit39: TEDIT - строка ввода категории;

u Edit40: TEDIT - строка ввода стажа;

u Edit41: TEDIT - строка ввода стажа;

u Edit42: TEDIT - строка ввода стажа;

u GROUPBOX15: TGROUPBOX - контейнер группы элементов «Желаемая должность»;

u GROUPBOX16: TGROUPBOX - контейнер группы элементов «Желаемая з/п»;

u Label24: TLABEL - метка «Начиная с последнего и раньше»;

u Edit45: TEDIT - строка ввода желаемой должности;

u Edit46: TEDIT - строка ввода желаемой з/п;

u WORDAPPLICATION1: TWORDAPPLICATION - для работы с MS Word;

u SAVEDIALOG1: TSAVEDIALOG - для сохранения;

u OPENDIALOG1: TOPENDIALOG - для открытия;

u DATETIMEPICKER5: TDATETIMEPICKER - селектор даты приема;

u DATETIMEPICKER6: TDATETIMEPICKER - селектор даты приема;

u DATETIMEPICKER7: TDATETIMEPICKER - селектор даты увольнения;

u DATETIMEPICKER8: TDATETIMEPICKER - селектор даты увольнения;

u MAINMENU1: TMAINMENU - главное меню программы;

u N1: TMENUITEM - пункт главного меню «Файл»;

u N2: TMENUITEM - пункт главного меню «О программе…»;

u N4: TMENUITEM - подпункт главного меню «Сохранить как…»;

u N5: TMENUITEM - подпункт главного меню «Справка»;

И функции: u procedure N5Click(Sender: TOBJECT) - для вызова справки;

u procedure N4Click(Sender: TOBJECT) - для сохранения;

3.2 Процедура N5Click

Процедура обрабатывает событие на нажатие подпункта «Справка» главного меню «О программе». В данной процедуре используется метод MESSAGEBOX. Отобразится новая форма с информацией о разработчике программы.

3.3 Процедура N4Click

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

4.

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

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

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

4.2 Описание диалога с пользователем

После запуска программы на экране появляется окно программы.

В верхней части окна расположено меню с кнопками «Файл» и «О программе». «Файл» содержит пункт «Сохранить как…», с помощью которого пользователь может сохранить анкету в формате .doc. «О программе» содержит пункт «Справка», с помощью которого пользователь может получить информацию о разработчике.

Когда пользователь ответит на вопросы и нажмет на кнопку «Файл» => «Сохранить как…», программа занесет все ответы в анкету MS Word.

Результаты анкетирования:

5.3 Листинг программы

Листинг программы представлен в приложении .

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

Данная программа позволяет: u Отвечать на вопросы анкеты u Автоматически заполнять анкету в Word файле u Сохранить результаты анкетирование в файле

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

Кроме практических результатов при выполнении курсовой работы был изучен теоретический материал по методу сохранения данных в MS Word.

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

Список литературы
анкета автоматический заполнение программа

1. Уроки делфи. [Электронный ресурс]. URT: ©Компоненты делфи. [Электронный ресурс]. URT: http://delphicomponent.ru/

2. Диалоги открытия и сохранения в делфи. [Электронный ресурс]. URT: http://mydelphiprogramms.jimdo.com/2012/03/23/delphi-диалоги-открытия-и-сохранения-файлов/

3. MESSAGEBOX в делфи. [Элекстронный ресурс]. URT: http://clickoman.narod.ru/help/delphi_mess.html

4. Уроки делфи. [Элекстронный ресурс]. URT: http://www.delphi-manual.ru/lesson1.php

5. Василий Корняков. Программирование документов MS Word в Delphi / Василий Корняков // Программирование документов и приложений MS Office в Delphi - Санкт Петербург, 2005 - 41-188с.
Заказать написание новой работы



Дисциплины научных работ



Хотите, перезвоним вам?