Автоматизация процесса составления технического задания для производства рекламной продукции ООО 'Истра+'

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    870,32 Кб
  • Опубликовано:
    2017-06-17
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Автоматизация процесса составления технического задания для производства рекламной продукции ООО 'Истра+'

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Российский государственный социальный университет»

КАФЕДРА «МОДЕЛИРОВАНИЯ ИНФОРМАЦИОННЫХ СИСТЕМ И СЕТЕЙ»






ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА БАКАЛАВРА

Автоматизация процесса составления технического задания для производства рекламной продукции ООО «Истра+»












Москва 2017

Оглавление

Введение

. Теоретические основы автоматизации сопроводительной документации в организации

1.1 Теоретические основы и особенности документооборота в организациях

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

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

2. Анализ деятельности ООО «Истра+» и создание ПО для автоматизации работы с рекламными шаблонами

2.1 Основные направления деятельности и структура ООО «Истра+»

.3 Этапы создания программы

.4 Создание и тестирование ПО для автоматизации работы с шаблонами в ООО «Истра +»

3. Экономическая часть

3.1 Расчет затрат па разработку программы

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

.3 Расчет эксплуатационных расходов связанных с использованием разработанной программы

.4 Расчет показателей экономической эффективности от внедрения разработанной программы

Заключение

Список использованных источников

Приложения

Введение


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

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

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

Традиционное делопроизводство включает три основные группы задач:

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

учет движения документов;

хранение документов.

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

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

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

Создание нового документа может происходить на основании требования пользователя или на конкретном этапе бизнес-процесса.

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

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

В настоящее время особую актуальность приобретает возможность обмена документами между удаленными пользователями через каналы связи INTERNET/INTRANET.

Объектом исследования в работе выступает документация рекламного агентства ООО «Истра+».

Предмет исследования - возможность автоматизации заполнения шаблонов документов, используемых в ООО «Истра+».

Цель работы состоит в автоматизации процесса составления шаблонов технического задания для производства рекламной продукции ООО «Истра+».

В задачи работы входит:

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

) обосновать выбор среды разработки системы автоматизации оформления сопровождающей документации для рекламного агентства ООО «Истра+»;

) спроектировать и реализовать систему автоматизации сопровождающей документации для рекламного агентства ООО «Истра+»;

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

В ходе исследования использовался комплекс различных методов: объект исследования изучен методом системного анализа, экспертных оценок и путем изучения обзора ПО применяемых для автоматизации. Также использован метод вторичного анализа результатов исследований, ранее проведенных в этой области.

В первой главе работы приводятся теоретические основы организации автоматизации оформления документации, необходимой для функционирования ООО «Истра+».

Во второй главе анализируется деятельность ООО «Истра+» и разрабатывается, средствами Borland Delphi 7, приложение, позволяющие создавать шаблоны и автоматизировать процесс их заполнения.

Третья глава работы посвящена расчету эффективности разрабатываемого приложения и сроков его окупаемости.

Практическая значимость исследования заключается в создании шаблонов, наиболее часто используемых в ООО «Истра+» документов, а также автоматизации процесса заполнения данных шаблонов для получения готовых выходных документов.

 


1. Теоретические основы автоматизации сопроводительной документации в организации

 

.1 Теоретические основы и особенности документооборота в организациях


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

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

Документы, используемые на предприятии, могут быть подразделены на следующие группы:

входящие документы (поступающие извне);

внутренние (создаваемые в процессе деятельности предприятия);

исходящие (отправляемые сторонним контрагентам).

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

При поступлении входящих документов выполнятся их прием и регистрация.

Исходящие документы обрабатываются аналогично внутренним, с тем отличием, что обработка оригиналов документов завершается их отправкой адресату. К оставшимся копиям исходящих документов применяется процедура, аналогичная обработке внутренних документов.

После формирования дел к документам всех групп применяются типовые операции:

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

) после установленного срока могут как продолжать использоваться, так и передаваться в архив или уничтожаться.

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

Как в организации обработки документов, так и в инструкции по делопроизводству, должны быть отражены следующие пункты:

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

) список (номенклатуру) дел, используемую на предприятии, а также порядок ее утверждения и пересмотра;

) сроки хранения печатных документов и машинных файлов;

) процесс регистрации документов;

) правила хранения машинных файлов (на каком компьютере и в какой папке);

) сроки и порядок рассылки документов, а также отвечающих за это ответственных лиц;

) требования к формированию и оформлению дел;

) порядок методического руководства по обработке документов, а также правила информирования руководства о ходе исполнения документов.

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

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

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

) к руководству организации;

) к руководству структурного подразделения;

) к непосредственным исполнителям-специалистам.

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

На маршрут движения входящих документов также оказывает влияние принятая на предприятии технология обработки документов, например, регистрация. Если система регистрации и контроля организована нерационально, то возрастает время движения документа от получателя к исполнителю [19].

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

) исполнитель составляет проект документа;

) проверяется правильность составленного проекта;

) проект документа проходит согласование;

) документ подписывается руководителем;

) документ регистрируется;

) документ отправляется адресату.

Составление проекта исходящего документа производится исполнителем, а правильность оформления выполняется работником делопроизводства или секретарем-референтом.

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

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

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

В тот же день исходящие документы должны быть отправлены адресату.

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

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

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

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

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

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

автоматизация рекламный шаблон

1.2 Обзор программного обеспечения для оформления контрольных документов

 

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

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

При создании шаблона задаётся неизменяемый (постоянный) текст в виде обычной символьной строки и модифицируемая (переменная) часть документа в виде полей.

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

Переменная часть документа включает текст, списки, флажки и используется для ввода информации при заполнении шаблона.

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

1.2.2 Globus Professional

Многопользовательская система Globus PROFESSIONAL обеспечивает автоматизацию всех процессов в подразделениях компаний. Это полностью готовый к использованию продукт, который помимо стандартных модулей включает в себя конструктор конфигураций. С использованием конструктора конфигураций можно по мере необходимости быстро и без программирования настроить дополнительные возможности и процессы.Professional решает две ключевые задачи:

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

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

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

Итоговые возможности системы Globus Professional приведены в таблице 1 [3].

Таблица 1. Итоговые возможности системы Globus Professional

Сотрудникам

Руководству

IT-специалистам

Удобные, адаптированные под задачи пользователя, рабочие места

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

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

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


Единое и гибкое решение для быстрого покрытия всего комплекса текущих и будущих бизнес-задач

Автоматическое заполнение документов по шаблонам. Исключение рутины и повторного ввода информации

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

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

Мгновенный поиск. Исключение потерь документов и информации



Автоматическое формирование отчетов руководству

Информация о текущих операциях, плановых и фактических расходах всех видов ресурсов накапливается и позволяет не только оперативно получать полную картину текущего состояния дел, но и проводить различные виды анализа и строить реалистичные прогнозы

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

Ведение списка дел и календарей. Напоминания и обмен мгновенными сообщениями


Полная документация. Оперативная техническая поддержка и консультации


1.2.3 ИБР: Делопроизводство

Основные возможности ИБР: Делопроизводство:

) регистрация входящих, исходящих и внутренних документов;

) регистрация и учет задач/поручений;

) хранение файлов/ документов;

) обеспечение условий работы в режиме удаленного доступа через Веб-интерфейс;

) обеспечение пользовательской и администраторской информацией.

Основная концепция системы представлена на рисунке 1.1.

Рабочий стол системы представлен на рисунке 1.2 [4].

Рисунок 1.1. Основная концепция системы

Рисунок 1 2. Рабочий стол системы

1.2.4 FreshDoc. Конструктор документов

Шаблоны FreshDoc помогают просто и быстро получить нужный документ.

Нужно выбрать шаблон, ответить на вопросы. FreshDoc автоматически составит документ, соответствующий заданным условиям и действующему законодательству.

Для использования шаблонов необходимо:

) открыть FreshDoc с компьютера или мобильного устройства (рисунок 1.3);

) выбрать нужный шаблон FreshDoc (рисунок 1.4);

Рисунок 1.3. Стартовая страницы FreshDoc

Рисунок 1.4. Выбор нужного шаблона

) ответить на вопросы опросного листа (рисунок 1.5);

) внести данные контрагентов (рисунок 1.6);

Рисунок 1.5. Опросный лист

Рисунок 1.6. Внесение данных контрагентов

) сохранить документ в разделе Мои документы (рисунок 1.7);

) отправить документ на согласование (рисунок 1.8);

Рисунок 1.7. Сохранение документа

Рисунок 1.8- Отправка документа на согласование

) найти документы и сформировать отчеты в удобной системе хранения и учета FreshDoc Реестры (рисунок 1.8);

) открыть доступ к документам и папкам другим пользователям (рисунок 1.9) [3];

Рисунок 1.9. Поиск документов

Рисунок 1.10. Назначение прав пользователям

9) установив виджет FreshDoc на сайт, клиенты смогут сами оформлять документы (рисунок 1.11) [5].

Рисунок 1.11. Установка виджета на сайт

 


1.2.5 Программа «Автозаполнение шаблонов»

Программа «Автозаполнение шаблонов» разработана Ласточкиным В.Ю. и реализована для работы под управлением операционной системы Windows.

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

Рисунок 1.11. Окно программы «Автозаполнение шаблонов»

Вывод уже готовых документов осуществляется как в Word, так и в Excel. Значительно упрощается процесс формирования большого потока таких документов, как ценники, товарные ярлыки, приказы, договора, отчетные или нотариальные документы, платежные поручения, приходные и расходные кассовые ордера и пр. бухгалтерские документы [6].

 

.2.6 ЕВФРАТ-Документооборот

Система «Е1 Евфрат» - мощный инструмент автоматизации бизнес-процессов и оптимизации документооборота для компаний всех типов и размеров. Система эффективно решает задачи как в рамках небольшой структуры, например канцелярии, отдела, департамента или локальной организации в целом, так и в рамках территориально-распределенной организации со сложной схемой информационных потоков. При этом «Е1 Евфрат« полностью настраивается в соответствии с требованиями регламентов, положений и инструкций по работе с документами, разработанными и применяемыми организацией. Система занимает лидирующие позиции в классах DMS-, BPM-, и ECM-систем.

Система «Е1 Евфрат» обеспечивает весь жизненный цикл электронных документов в рамках ключевых бизнес-процессов организации:

) ввод и регистрация документов (рисунок 1.13);

) работа с электронными документами (рисунок 1.14);

Рисунок 1.12. Ввод нового документа

Рисунок 1.13. Работа с электронными документами

) контроль исполнения (рисунок 1.15);

) оптимизация движения документов (технология Workflow) (рисунок 1.16);

Рисунок 1.14. Контроль статуса исполнения документа

Рисунок 1.15. Оптимизация движения документа

) рассылка документов (рисунок 1.17);

) хранение документов (рисунок 1.18) [22];

Рисунок 1.16. Настройка рассылки документов

Рисунок 1.17. Настройка хранения документов

7) внутренняя почта (рисунок 1.19).

Архитектура системы E1 приведена на рисунке 1.20 [22].

Рисунок 1.18. Работа с внутренней почтой

Рисунок 1.19. Архитектура системы E1

Платформа обеспечивает роботизированное построение базы данных на основе созданных с использованием встроенного в систему графического редактора маршрутов и форм документов [7].

 

.2.7 УниДок

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

Рисунок 1.20. Основное окно программы УниДок

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

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

Программа стала бесплатной для жителей СНГ с февраля 2014 г [8].

 

.2.8 СЭД iTs-Office

Система электронного документооборота iTs-Offiсe - это программный комплекс для организации полноценного электронного документооборота на предприятиях любого масштаба и территориальной распределённости.

СЭД iTs-Offiсe - готовое решение, которое обладает возможностями настройки и доработки под специфику конкретного заказчика.

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

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

Главное назначение системы - поднять на качественно новый уровень процессы управления.

СЭД iTs-Office позволяет производить обмен документами в считанные секунды. Это повышает эффективность взаимодействия управляющей компании со структурными подразделениями (филиалами) и, как следствие, улучшает эффективность управления организацией в целом.

Рисунок 1.21. Карточка входящего документа в СЭД iTs-Office

С помощью системы электронного документооборота iTs-Office можно автоматизировать любой документо-ориентированный процесс [9].

 

.2.9 RiDoc

Возможно сделать следующее:

отсканировать документы с помощью программы RiDoc, поместив их в image-галерею;

с помощью нажатия одной кнопки «Склейка» можно выполнить в программе RiDoc уменьшение размера остканированного документа без существенной потери качества изображения;

отсканированный документ сохранить как в графических форматах, так и формате PDF, MS WORD;

отправить отсканированный документ по почте.

Использование виртуального принтера RiDoc является прекрасным дополнением при переводе документов формата DOC (RTF) в графические файлы (BMP, JPEG, TIFF, PNG), а также в формат PDF.

Технология виртуальной печати дает возможность экспортировать документы (doc, rtf), электронные таблицы или презентации, рекламные буклеты в графический файл (bmp, png, tiff, jpeg), с последующей обработкой их программой RiDoc.

Рисунок 1.22. Пример отсканированного документа

Перевод документов в графический формат программой RiDoc дает возможность защиты данных документов. Для увеличения уровня защиты нужно в программе RiDoc воспользоваться функцией наложения водяного знака на результат «склейки» [10].

 

.2.10 Ums Docs

Система электронного документооборота UMS Docs предназначается для эффективного контроля деловыми процессами на предприятии, связанными с документооборотом. UMS Docs поддерживает весь процесс документооборота в компании, при этом возможно сочетание с классической системой делопроизводства.

Основными достоинствами системы UMS Docs являются:

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

простота внедрения и настройки;

ориентирование на web-технологии, основанные на «облачном» хранении данных;

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

привлекательная цена за весь процесс внедрения, настройки, работы и обслуживания.

Некоторые из функций системы являются уникальными и отсутствуют в предлагаемых на рынке аналогах, а именно:

формирование бланка документа, готового для печати;

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

определение полномочий по доступу к тому или иному документу каждого сотрудника.

СЭД UMS Docs состоит из следующих компонентов: канцелярия, управление электронными документами, управление деловыми процессами, сканер, факс [11].

 

.2.11 Form Pilot Home и Pro

Принцип работы Form Pilot Home чрезвычайно прост. Для того, чтобы заполнить бумажный бланк, нужно его отсканировать, загрузить в программу, заполнить отсканированное изображение бланка и распечатать результат.

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

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

Рисунок 1.23. Главное окно Form Pilot Home

Рисунок 1.24. Главное окно Form Pilot Pro

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

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

Имеется инструмент «произвольная линия», с помощью которого, например, можно подчеркнуть или обвести важный пункт бланка или попытаться расписаться на бланке мышкой (задача весьма не простая). Для удобства, часто используемые графические и текстовые объекты можно сложить на «полку» - специальную панель в Form Pilot, которая отображается справа от изображения. Теперь на любые бланки их можно будет добавлять одним кликом мыши.

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

Если в каком-либо приложении распечатать документ на принтере Form Pilot, то напечатанное изображение будет немедленно открыто в программе. Если на печать было отправлено несколько страниц, Form Pilot автоматически создает многостраничный документ. Виртуальный принтер позволяет упростить процесс заполнения электронных форм. Если необходимо заполнить форму, нет необходимости конвертировать ее в набор графических изображений - достаточно просто напечатать ее на принтере. Получается гораздо быстрее и на порядок удобнее.

Рисунок 1.25. Настройки PDF в Form Pilot Office

Рисунок 1.26. Главное окно Type Pilot

В Form Pilot Office имеются и другие полезные нововведения. Например, добавлена возможность редактировать параметры создаваемых PDF-файлов, в частности, защищать документ паролем и ограничивать права доступа. Появилась возможность импорта данных из других документов Form Pilot, добавлена поддержка многострочного текста в полях (рисунок 1.26) [12].

1.2.12 Итоговая сравнительная таблица систем оформления документов

Результат проведенного исследования наиболее популярных систем оформления документов приведен в таблице 2.

Таблица 2. Сравнительная таблица систем оформления документов

Наименование СЭД

Критерии сравнения


поддерживаемые форматы

возможность создавать собственные шаблоны

возможность добавлять ключи замен

Globus Professional

txt, doc, rtf, xls

Есть

Есть

ИБР: Делопроизводство

txt, rtf

Нет

Есть

FreshDoc

txt, doc

Есть

Нет

Программа «Автозаполнение шаблонов»

rtf, xls

Нет

Есть

ЕВФРАТ-Документооборот

txt, doc, rtf, xls

Нет

Нет

УниДок

rtf

Есть

Нет

СЭД iTs-Offiсe

txt, doc

Есть

Нет

RiDoc

doc, rtf

Нет

Есть

UMS Docs

txt, doc, rtf, xls

Есть

Есть

Form Pilot Home

txt

Нет

Нет


ВЫВОД. Из анализа имеющихся систем автоматизированного заполнения документов, несмотря на то, что в настоящий момент имеется их разные варианты, но они все не в полной мере соответствуют требованиям рекламного агентства ООО «Истра+». Критерии сравнения были отобраны таким образом, чтобы определить, какой функциональностью должна обладать разрабатываемая система. Такими критериями являются:

возможность создания собственных шаблонов;

возможность добавлять ключи замен для вставки шаблонов;

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

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

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

1.3 Выбор средства реализации системы автоматизации оформления сопровождающей документации

 

.3.1 Объектно-ориентированное программирование

Объектно-ориентированное программирование (ООП) позволяет разложить проблему на составные части, каждая из которых становится самостоятельным объектом. Каждый из объектов содержит свой собственный код и данные, которые относятся к этому объекту.

Любая программа, написанная на языке ООП, отражает в своих данных состояние физических предметов либо абстрактных понятий - объектов программирования, для работы, с которыми она предназначена.

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

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

Описание множества однотипных объектов называется классом.

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

Класс - это описание множества объектов программирования (объектов) и выполняемых над ними действий.

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

Рассмотрим основные понятия объектно-ориентированного программирования

Любая функция в программе представляет собой метод для объекта некоторого класса.

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

Вся программа в таком виде представляет собой объект некоторого класса с единственным методом run (выполнить).

Программирование «от класса к классу» включает в себя ряд новых понятий. Основными понятиями ООП являютсz:

инкапсуляция;

наследование;

полиморфизм.

Инкапсуляция данных (от «капсула») - это механизм, который объединяет данные и код, манипулирующий с этими данными, а также защищает и то, и другое от внешнего вмешательства или неправильного использования. В ООП код и данные могут быть объединены вместе (в так называемый «черный ящик») при создании объекта.

Внутри объекта коды и данные могут быть закрытыми или открытыми.

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

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

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

Иначе говоря, новый класс наследует как данные старого класса, так и методы их обработки.

Если объект наследует свои свойства от одного родителя, то говорят об одиночном наследовании. Если объект наследует данные и методы от нескольких базовых классов, то говорят о множественном наследовании.

Пример наследования - определение структуры, отдельный член которой является ранее определенной структурой.

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

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

Будучи доступным в некоторой точке программы, объект, даже при отсутствии полной информации о его типе, всегда может корректно вызвать свойственные ему методы [13].

 

.3.2 Компонентная модель

COM (англ. Component Object Model - объектная модель компонентов; произносится как [ком]) - это технологический стандарт от компании Microsoft, предназначенный для создания программного обеспечения на основе взаимодействующих компонентов, каждый из которых может использоваться во многих программах одновременно. Стандарт воплощает в себе идеи полиморфизма и инкапсуляции объектно-ориентированного программирования.

Стандарт COM мог бы быть универсальным и платформо-независимым, но закрепился в основном на операционных системах семейства Microsoft Windows. В современных версиях Windows COM используется очень широко. На основе COM были реализованы технологии: Microsoft OLE Automation, ActiveX, DCOM, COM+, DirectX, а также XPCOM.

Стандарт COM был разработан в 1993 году корпорацией Microsoft как основа для развития технологии OLE. Технология OLE 1.0 уже позволяла создавать так называемые «составные документы» (англ. compound documents): например, в пакете Microsoft Office эта технология позволяла включать диаграммы Microsoft Excel в документы Microsoft Word.

Основным понятием, которым оперирует стандарт COM, является COM-компонент. Программы, построенные на стандарте COM, фактически не являются автономными программами, а представляют собой набор взаимодействующих между собой COM-компонентов. Каждый компонент имеет уникальный идентификатор (GUID) и может одновременно использоваться многими программами. Компонент взаимодействует с другими программами через COM-интерфейсы - наборы абстрактных функций и свойств. Каждый COM-компонент должен, как минимум, поддерживать стандартный интерфейс «IUnknown», который предоставляет базовые средства для работы с компонентом. Интерфейс «IUnknown» включает в себя три метода: QueryInterface, AddRef, Release.API предоставляет базовые функции, позволяющие использовать COM-компоненты. Библиотеки MFC и, особенно, ATL/WTL предоставляют более гибкие и удобные средства для работы с COM. Библиотека ATL от Microsoft до сих пор остаётся самым популярным средством создания COM-компонентов. Но зачастую COM-разработка остаётся ещё довольно сложным делом, программистам приходится вручную выполнять многие рутинные задачи, связанные с COM (особенно это заметно в случае разработки на C++). Впоследствии (в технологиях COM+ и особенно.NET) Microsoft попыталась упростить задачу разработки COM-компонентов.

Технология часто критикуется за неоправданную сложность, конкретно:

необходимость использования двух языков программирования (.idl для описания интерфейсов и, обычно, C++ для написания реализаций). Необходимость возникает только при создании собственных интерфейсов, и не возникает в случае, если разработчик ограничил себя использованием готовых интерфейсов;

необходимость «прокладочного» кода (в его роли обычно выступает ATL) для того, чтобы создать COM-объект на базе С++ класса. Хотя этот код и тривиален в использовании для опытного человека, он не очень прост для начинающих. Как и в предыдущем пункте, эта проблема возникает только при написании собственных классов и не возникает при одном лишь использовании стандартных чужих классов (для которых MS разработал библиотеку смарт-пойнтеров - comdef.h, _com_ptr_t<Interface>, эта библиотека делает использование COM-объектов тривиальным);

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

инфраструктура remoting (удаленного вызова методов) использует бинарный формат запросов и ответов, являясь расширением DCE RPC. Это приводит к возникновению огромной «поверхности уязвимости» с точки зрения безопасности, и не раз приводило к крупным эпидемиям вредоносного ПО (MSBlaster);

инфраструктура remoting использует по умолчанию (вслед за DCE RPC) динамически назначаемые номера TCP и UDP портов, что делает ее крайне сложной в настройке при наличии межсетевых экранов;

обработка ошибок. В COM принято использовать 32-битные коды ошибки HRESULT, которые имеют значения вроде 0x80070123, и совершенно не читаемы человеком (хотя в последнее время все они легко ищутся поисковыми машинами Интернета).

Кроме того, runtime type information в COM, известная под названием type libraries, поддерживается только для так называемых Automation-compatible интерфейсов, имеющих огромные ограничения на типы параметров (массивы - только SAFEARRAY, строки - только BSTR, никаких произвольных структур, только числа, дата/время, массивы, строки и ссылки на другие Automation-compatible объекты).

Заметно, однако, что многие из этих недостатков являются платой за достоинство COM - независимость от языка программирования и исполняющей среды, и не существуют в «истинно объектных» языках, таких, как C# или же (прекращенная) реализация Java компании Microsoft. Эти языки предоставляют и полную runtime type information, и отсутствие необходимости регистрации, и возможность написания, как интерфейсов, так и классов стандартным для языка образом, без «прокладок» вроде ATL. Так, в MS J++ любой класс Java тривиально публиковался внешнему миру как класс COM, достаточно было лишь регистрации. То же существует и в C#.

С противоположной стороны, «истинно объектные» языки либо вообще не способны стыковаться с компонентами из других объектных языков и требуют написания всей системы (и нижележащих подсистем и фреймворков) «сверху донизу» на одном языке в одной исполняющей среде (Java, Objective C), либо же налагают такое же требование хотя и не на язык, но на исполняющую среду (.NET, языки C#, C++ managed и VB.NET).

Использование механизма позднего связывания может существенно снизить производительность по сравнению, например, с вызовом экспортируемой функции из динамической библиотеки. Однако этот механизм применяется только в скриптовых языках, и только в том случае, если язык не поддерживает объявление ссылок на объекты как ссылок на COM-интерфейсы из type libraries (в виде Dim obj As Excel.Workbook), а поддерживает только абстрактные COM-объекты (в виде Dim obj As Object). Кроме того, такой же подход применяется в Objective C и Cocoa [14].

 

.3.3 Visual FoxPro

Visual FoxPro - это полнофункциональный язык объектно-ориентированного программирования. Он предлагает мощные средства для интерактивной работы и создания приложений, предназначенных для управления реляционными базами данных. И, что не менее важно, этот язык прост в изучении. Кроме того, программы, написанные на языке Visual FoxPro 7.0, будут совместимы с программами, написанными на Visual FoxPro предыдущих версий. FoxPro позволяет сэкономить время и деньги на каждом этапе процесса создания приложения. На начальной стадии время, затраченное на разработку прототипов, не пропадает даром. Можно сохранить каждый прототип в качестве класса и использовать при создании новых форм. На следующих стадиях разработки приложения (и даже после того, как работа над приложением уже завершена) можно в любой момент вернуться к нужному объекту и изменить или расширить его свойства, не нарушая целостности других объектов. Сопровождение и модификация приложений, написанных на Visual FoxPro, осуществляется гораздо более эффективно и требует меньших затрат по сравнению с традиционными линейными программами.

При создании объектов приложения можно использовать базовые классы Visual FoxPro, классы внешних библиотек, а также создавать новые классы. FoxPro содержит большое число базовых классов (таблица 3), которые можно использовать при создании форм любой сложности. Единственным недостатком базовых классов является невозможность их модификации, но можно использовать базовые классы для создания пользовательских классов, полностью вами управляемых. Далее при создании форм можно применять пользовательские классы, вместо базовых.

Таблица 3. Базовые классы Visual FoxPro

Наименование

Назначение

Видимый

Контейнер

ActiveDoc

Активный документ

Нет

Нет

Checkbox

Флажок

Да

Нет

Column

Столбец

Да

Да

ComboBox

Раскрывающийся список

Да

Нет

CoiranandButton

Кнопка управления

Да

Нет

CommandGroup

Набор кнопок управления

Да

Да

Container

Контейнер

Да

Да

Control

Базовый визуальный класс

Да

Нет

Custom

Базовый невизуальный класс

Нет

Нет

EditBox

Поле редактирования

Да

Нет

Form

Форма

Да

Да

Forms et

Набор форм

Нет

Да

Grid

Таблица

Да

Да

Header

Заголовок столбцов таблицы

Да

Нет

HyperLink Object

Гиперссылка

Нет

Нет

Image

Изображение

Да

Нет

Label

Надпись

Да

Нет

Line

Линия

Да

Нет

ListBox

Список

Да

Нет

OleContainerControl

OLE-объект управления



OleBoundControl

OLE-объект данных



OptionButton

Переключатель

Да

Нет

OptionGroup

Набор переключателей

Да

Да

Page

Вкладка формы

Да

Да

Page Frame

Макет страницы

Нет

Да

ProjectHook

Проект

Нет

Да

Separator

Разделитель

Да

Нет

Shape

Обрамление

Да

Нет


Почти все базовые классы являются визуальными. Объекты, созданные на их основе, отображаются на экране. Некоторые из базовых классов невидимы. Они используются для объединения объектов (например, FormSet), обработки специальных событий (например, Timer) или создания невизуальных объектов (например, ProjectHook).

В Visual FoxPro широко применяется вложенность классов. Вложенным является класс, являющийся частью другого класса, называемого контейнером (container class). Наиболее яркий пример контейнера представляет собой таблица, компоненты которой - это столбцы и надписи к ним. При создании формы и после запуска ее на выполнение можно получить доступ ко всем компонентам контейнера.

Каждый базовый класс предназначен для выполнения определенных функций и обладает соответствующим набором свойств, методов и событий. Кроме свойств и событий, специфических для данного класса, каждый базовый класс содержит основной набор свойств (таблица 4) и событий (таблица 5) [15].

Таблица 4. Минимальный набор свойств класса

Наименование

Описание

Class

Тип класса

BaseClass

Базовый класс, на основе которого создан данный класс

ClassLibrary

Библиотека классов, в которой хранится данный класс

ParentClass

Определенный пользователем класс, на основе которого создан данный класс


Таблица 5 Минимальный набор событий

НаименованиеОписание


Init

Наступает при создании объекта

Destroy

Наступает при освобождении объекта из памяти

Error

Наступает при возникновении ошибки, связанной с объектом


1.3.4 Язык программирования Delphi

Язык программирования Delphi - язык программирования, который используется в одноимённой среде разработки и является комбинацией нескольких важнейших технологий:

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

объектно-ориентированная модель компонент;

визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов;

масштабируемые средства для построения баз данных.

Сначала язык назывался Object Pascal. Начиная со среды разработки Delphi 7.0, в официальных документах Borland стала использовать название Delphi для обозначения языка Object Pascal.

История Delphi начинается с 1960-х гг., когда профессор Н.Вирт разработал язык высокого уровня Pascal. Это был лучший язык для изучения программирования, и для создания программ для операционной системы MS-DOS. Затем, в 1983 г., А. Хейлсберг совместно с другими программистами, которые только что организовали компанию Borland, разработал компилятор Turbo Pascal, который стал следующим шагом в эволюции Delphi. Затем появился Object Pascal, который уже использовал Объектно-Ориентированный подход к программированию. Когда появилась первая версия Windows - Windows 3.10, Программисты Borland создали Delphi 1. Это уже была объектно-ориентированная среда для визуальной разработки программ, основанная на языке Object Pascal.

Основу Delphi составляет не только сам язык, но и RAD (Rapid Application Development) - среда быстрой разработки программ. Благодаря визуальному программированию, а также достаточно большой библиотеке визуальных компонентов, Delphi позволяет создавать программы наиболее быстро и эффективно, принимая на себя основную работу, и оставляя программисту творческий процесс. Разумеется, возможность быстрого создания профессиональных приложений для Windows делает Delphi-программистов востребованными во всех отраслях человеческой деятельности.

Изначально среда разработки была предназначена исключительно для разработки приложений Microsoft Windows, затем был реализован также для платформ GNU/Linux (как Kylix), однако после выпуска в 2002 году Kylix 3 его разработка была прекращена, и, вскоре после этого, было объявлено о поддержке Microsoft.NET. При этом высказывались предположения, что эти два факта взаимосвязаны.

Наиболее существенный отрыв Delphi от ближайших аналогов состоит в действительно быстрой разработке приложений, обладающих сложным пользовательским интерфейсом, особенно имеющим сильные взаимосвязи между элементами управления, расположенными в окнах программы. Также Delphi предлагает довольно мощный набор компонентов для работы с базами данных. Причем иерархия компонентов для работы с БД организована таким образом, что практически неважно, какой именно базой данных пользуется приложение - это может быть и локальная БД и промышленный сервер, типа Oracle или MS SQL Server. Существенным преимуществом Delphi в этой области является возможность управления базами данных на логическом уровне, соответствующем понятиям самих баз данных, без использования низкоуровневых запросов к драйверам.

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

В любом случае, подпрограммы, реализованные в других Windows языках программирования, могут быть использованы в Delphi через механизм динамически компонуемых библиотек (от англ. Dynamic Link Library - DLL - Динамически компонуемая библиотека). Заметим, что многие системные библиотеки Windows изначально подключены к Delphi, а вызов функций из них ничем не отличается от использования обычных библиотек Pascal.

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

 

.3.5 Visual C++

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

Подобные средства автоматизированного создания приложений включены в компилятор Microsoft Visual C++ и называются MFC AppWizard. Заполнив несколько диалоговых панелей, можно указать характеристики приложения и получить его тексты, снабженные обширными комментариями. MFC AppWizard позволяет создавать однооконные и многооконные приложения, а также приложения, не имеющие главного окна, вместо него используется диалоговая панель. Можно также включить поддержку технологии OLE, баз данных, справочной системы.- это базовый набор (библиотека) классов, написанных на языке С++ и предназначенных для упрощения и ускорения процесса программирования для Windows. Библиотека содержит многоуровневую иерархию классов, насчитывающую около 200 членов. Они дают возможность создавать Windows-приложения на базе объектно-ориентированного подхода. С точки зрения программиста, MFC представляет собой каркас, на основе которого можно писать программы для Windows.

Библиотека MFC разрабатывалась для упрощения задач, стоящих перед программистом. Как известно, традиционный метод программирования под Windows требует написания достаточно длинных и сложных программ, имеющих ряд специфических особенностей. В частности, для создания только каркаса программы таким методом понадобится около 75 строк кода. По мере же увеличения сложности программы ее код может достигать поистине невероятных размеров. Однако та же самая программа, написанная с использованием MFC, будет примерно в три раза меньше, поскольку большинство частных деталей скрыто от программиста.

Одним из основных преимуществ работы с MFC является возможность многократного использования одного и того же кода. Так как библиотека содержит много элементов, общих для всех Windows-приложений, нет необходимости каждый раз писать их заново. Вместо этого их можно просто наследовать (говоря языком объектно-ориентированного программирования). Кроме того, интерфейс, обеспечиваемый библиотекой, практически независим от конкретных деталей, его реализующих. Поэтому программы, написанные на основе MFC, могут быть легко адаптированы к новым версиям Windows (в отличие от большинства программ, написанных обычными методами).

Еще одним существенным преимуществом MFC является упрощение взаимодействия с прикладным программным интерфейсом (API) Windows. Любое приложение взаимодействует с Windows через API, который содержит несколько сот функций. Внушительный размер API затрудняет попытки понять и изучить его целиком. Поскольку библиотека MFC объединяет (путем инкапсуляции) функции API в логически организованное множество классов, интерфейсом становится значительно легче управлять.

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

Студия разработчика фирмы Microsoft (Microsoft Developer Studio) - это интегрированная среда для разработки, позволяющая функционировать различным средам разработки, одна из которых Visual C++, другая - Visual J++.

В студии разработчика можно строить обычные программы на C и С++, создавать статические и динамические библиотеки, но основным режимом работы является создание Windows-приложений с помощью инструмента MFC AppWizard (Application Wizard - мастер приложений) и библиотеки базовых классов MFC (Microsoft Foundation Class Library).

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

Библиотека MFC. Главная часть библиотеки MFC состоит из классов, используемых для построения компонентов приложения. С каждым MFC-приложением связывается определяющий его на верхнем уровне объект theApp, принадлежащий классу, производному от CWinApp.

Как правило, структура приложения определяется архитектурой Document-View (документ-облик).

Это означает, что приложение состоит из одного или нескольких документов - объектов, классы которых являются производными от класса CDocument (класс «документ»).

С каждым из документов связаны один или несколько обликов - объектов классов, производных от CView (класс «облик») и определяющих облик документа.

Класс CFrameWnd («окна-рамки») и производные от него определяют окна-рамки на дисплее. Элементы управления, создаваемые при проектировании интерфейса пользователя, принадлежат семейству классов элементов управления. Появляющиеся в процессе работы приложения диалоговые окна - это объекты классов, производных от CDialog.

Классы CView, CFrameWnd, CDialog и все классы элементов управления наследуют свойства и поведение своего базового класса CWnd («окно»), определяющего по существу Windows-окно. Этот класс в свою очередь является наследником базового класса CObject («объект»).

Одна из трудностей в понимании принципов устройства MFC-приложения, заключается в том, что объекты, из которых оно строится, наследуют свойства и поведение всех своих предков, поэтому необходимо знать базовые классы [17].

1.3.6 Итоговая сравнительная таблица

Результаты сравнения вышеописанных объектно-ориентированных языков программирования по основным конструкциям приведены в таблице 6.

Таблица 6. Сравнение объектно-ориентированных языков программирования

Критерий сравнения

Язык программирования


Visual FoxPro

Visual C++

Delphi

Решаемые задачи

Управление базами данных

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

Разработка приложений для Windows и Kylix

Возможность открытия файлов в форматах DOC и RTF

Отсутствует

Имеется

Имеется

Возможность выносить настроечные параметры в ини-циализационный файл

Отсутствует

Отсутствует

Имеется

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

Отсутствует

Имеется

Имеется

Возможность создания многооконного приложения

Отсутствует

Имеется

Имеется

Возможность учитывать разрешающую способность экрана пользователя

Отсутствует

Отсутствует

Отсутствует


Для разработки системы автоматизации оформления сопровождающей документации рекламного агентства ООО «Истра+» была выбрана система объектно-ориентированного программирования Borland Delphi, потому что она предоставляет наиболее широкие возможности для программирования приложений ОС Windows.

В основе Delphi лежит язык Object Pascal, который является расширением объектно-ориентированного языка Pascal. Delphi производит небольшие по размерам высокоэффективные исполняемые модули.

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

Преимущества Delphi по сравнению с аналогичными программными продуктами:

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

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

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

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

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

удачная проработка иерархии объектов.

Система программирования Delphi рассчитана на программирование различных приложений и предоставляет большое количество компонентов для этого [18].

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

2. Анализ деятельности ООО «Истра+» и создание ПО для автоматизации работы с рекламными шаблонами

 

.1 Основные направления деятельности и структура ООО «Истра+»


Общество с ограниченной ответственностью «Истра+» было создано в 2012 году на основании Федерального закона «О введении в действие части первой гражданского кодекса Российской Федерации» от 01.01.1995 г. и статей 66, 87, 88, 89 Гражданского кодекса Российской Федерации. Общество с ограниченной ответственностью, создано по соглашению граждан РФ путем объединения вкладов в виде денежных средств для осуществления хозяйственной деятельности. Общество является юридическим лицом и действует на основании законодательства РФ, настоящего Устава и Учредительного договора. Общество создано на неограниченный срок.

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

База занимает помещение общей площадью 1200 кв.м. и полезной площадью склада 720 кв.м. Организационная структура на ООО «Истра+» является линейно-функциональной (рисунок 2.1), которая образуется в результате построения аппарата управления только из многоподчиненных органов в виде иерархической лестницы.

Рисунок 2.1 - Структура управления на складе ООО «Истра+»

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

Общая численность работников в отчетном году составила 31 человек. Заведующему непосредственно подчиняются 2 заместителя, товаровед, бухгалтер и младший обслуживающий персонал.

В связи с тем, что ООО «Истра+» занимается разработкой рекламной продукции, которая необходима различным клиентам, встала необходимость автоматизировать процесс приема заказов. В связи с этим было решено разработать шаблоны форм для заказов различных типов, а также создать приложение, которое позволит не только создавать требуемые шаблоны, а производить заполнение одновременно нескольких шаблонов, выбрав один раз значения ключевых параметров.

 

.3 Этапы создания программы


Диаграмма прецедентов представлена на рисунке 2.2.

Рисунок 2.2. Диаграмма прецедентов

Последовательность разработки программы и ее основные этапы представлены на рисунке 2.3.

Рисунок 2.3. Последовательность разработки программы и ее основные этапы

2.4 Создание и тестирование ПО для автоматизации работы с шаблонами в ООО «Истра +»

 

.4.1 Определение входных и выходных данных, требований к программе

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

Выходные данные должны быть получены в виде стандартных документов формата Microsoft Word, сохраненных в папке, выбираемой пользователем, на локальных или съемных носителях.

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

Разрабатываемая системы автоматизации оформления сопровождающей документации для рекламного агентства ООО «Истра+» должна предоставлять пользователю следующие функциональные возможности:

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

) задавать значения ключей, которые будут вставляться вместо соответствующих ключей в шаблонах;

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

) выбирать папку для сохранения заполненных шаблонов;

) сохранять заполненные шаблоны в выбранную папку;

) распечатывать заполненные документы.

Разработка алгоритма

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

Алгоритм работы приложения представлен на рисунке 2.4.

Рисунок 2.4. Алгоритм работы приложения

Кодирование (программирование)

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

Главная форма приложения (Main_Form) открывается при запуске приложения. В режиме разработки имеет вид, показанный на рисунке 2.5.

Рисунок 2.5. Вид главной формы (Main_Form) в режиме конструирования

Описание назначения всех элементов главной формы приведено в таблице 7.

Таблица 7. Описание элементов главной формы

Имя элемента

Тип

Назначение в программе

Button1

TButton

Кнопка для открытия формы добавления ключа замен

Button2

TButton

Кнопка для открытия формы редактирования ключей замен

Button3

TButton

Кнопка для открытия формы создания и редактирования шаблонов

Button4

TButton

Кнопка для начала работы: выбора шаблонов и их заполнения

Label1

TLabel

Вывод текста «Ход обработки выбранных шаблонов:»

ProgressBar1

TProgressBar

Индикатор хода обработки


Форма Form_Zamens предназначена для ввода значений ключей. В режиме разработки имеет вид, показанный на рисунке 2.6.

Рисунок 2.6. Вид формы задания значений ключей замен (Form_Zamens) в режиме конструирования

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

Таблица 8. Описание элементов формы настройки замен

Имя элемента

Тип

Назначение в программе

Button1

TButton

Кнопка для закрытия формы и начала выполнения замен ключей в выбранных шаблонах

Label1

TLabel

Метка для вывода «Заполните параметры замен»

ScrollBox1

TScrollBox

Область для программного создания выпадающих списков и меток


Форма Form_New_Key предназначена для добавления параметров нового ключа замен. В режиме разработки имеет вид, показанный на рисунке 2.7.

Рисунок 2.7. Вид формы добавления нового ключа замен (Form_New_Key) в режиме конструирования

Описание назначения всех элементов формы добавления нового ключа замен приведено в таблице 9.

Таблица 9. Описание элементов формы добавления нового ключа замен

Имя элемента

Тип

Назначение в программе

Button1

TButton

Кнопка для закрытия формы и добавления нового ключа замен в инициализационный файл

Key_Label

TLabel

Метка для вывода «Ключ» и номера добавляемого ключа

Label1

TLabel

Метка для вывода «Наименование:»

Label2

TLabel

Метка для вывода «Ключ:»

Label3

TLabel

Метка для вывода «Введите варианты (каждый в отдельной строке)»

Naim_Edit

TEdit

Поле для ввода наименования добавляемого ключа замен

Primer

TMemo

Многострочное поле для ввода вариантов значений ключа


Форма Form_Redakt_keys предназначена для редактирования зарегистрированных ключей замен. В режиме разработки имеет вид, показанный на рисунке 2.8.

Рисунок 2.8. Вид формы редактирования ключа замен (Form_Redakt_keys) в режиме конструирования

Описание назначения всех элементов формы редактирования ключа замен приведено в таблице 10.

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

Имя элемента

Тип

Назначение в программе

Button1

TButton

Кнопка для закрытия формы и сохранения измененных значений ключа замен в инициализационный файл

Keys

TComboBox

Выпадающий список для выбора редактируемого ключа

Label1

TLabel

Метка для вывода «Выберите ключ для редактирования»

Key_Label

TLabel

Метка для вывода выбранного ключа

Label2

TLabel

Метка для вывода «Ключ»

Label3

TLabel

Метка для вывода «Наименование»

Label5

TLabel

Метка для вывода «Отредактируйте варианты (каждый в отдельной строке)»

Naim_Edit

TEdit

Поле для ввода нового наименования ключа

Primer

TMemo

Многострочное поле для ввода вариантов замен


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

Рисунок 2.9. Вид формы создания и редактирования шаблонов (Form_New_Shablon) в режиме конструирования

Описание назначения всех элементов формы создания и редактирования шаблонов приведено в таблице 11.

Имя элемента

Тип

Назначение в программе

Button1

TButtom

Кнопка для копирования выбранного ключа в буфер обмена

Button2

TButtom

Кнопка для закрытия формы и начала обработки документов

Key

TEdit

Поле для вывода выбранного ключа для вставки

Label1

TLabel

Метка для вывода «1. Откройте файл нужного шаблона.»

Label3

TLabel

Метка для вывода «2. Установите курсор в нужную позицию шаблона.»

Label3

TLabel

Метка для вывода «3. Выберите нужный ключ для вставки из выпадающего списка:»

Label4

TLabel

Метка для вывода «4. Нажмите кнопку для копирования ключа в буфер обмена.»

Label5

TLabel

Метка для вывода «5. Для завершения нажмите кнопку»

Label6

TLabel

Метка для вывода «5. Перейдите в шаблон и нажмите кнопку Вставить.»

Label7

TLabel

Метка для вывода «Будет добавлен ключ»

Parametrs

TComboBox

Выпадающий список для выбора ключа для вставки


Форма Form_Add_Shablon предназначена для выбора шаблонов, которые необходимо обработать. В режиме разработки имеет вид, показанный на рисунке 2.10.

Рисунок 2.10. Вид формы выбора шаблонов для заполнения (Form_Add_Shablon) в режиме конструирования

Описание назначения всех элементов формы выбора шаблонов для редактирования приведено в таблице 12.

Таблица 12. Описание элементов формы создания и редактирования шаблонов

Имя элемента

Тип

Назначение в программе

Button1

TButton

Кнопка Добавить шаблон

Button2

TButton

Кнопка Удалить выделенный шаблон

Button3

TButton

Кнопка Начать обработку

DirectoryListBox1

TDirectoryListBox

Дерево выбора каталога

DriveComboBox1

TDriveComboBox

Список выбора диска

FileListBox1

TFileListBox1

Список файлов выбранного каталога

Label1

TLabel

Метка для вывода «Выберите диск»

Label2

TLabel

Метка для вывода «Выберите каталог»

Label3

TLabel

Метка для вывода «Выберите файл шаблона»

Vibr_files

TListBox

Список выбранных шаблонов


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

Рисунок 2.11. Вид формы выбора каталога для сохранения заполненных шаблонов (Form_Save_Dir) в режиме конструирования

Описание назначения всех элементов формы выбора каталога для сохранения шаблонов для редактирования приведено в таблице 13.

Таблица 13. Описание элементов формы создания и редактирования шаблонов

Имя элемента

Тип

Назначение в программе

Button3

TButton

Кнопка Выбрать каталог

DriveComboBox1

TDriveComboBox

Выпадающий список для выбора диска

DirectoryListBox1

TDirectoryListBox

Дерево выбора каталога

FileListBox1

TFileListBox

Список файлов

Label1

TLabel

Метка для вывода «Выберите диск»

Label2

TLabel

Метка для вывода «Выберите каталог»


Для чтения параметров из инициализационного файла nastroik.ini разработана процедура chenie_INI:

Для добавления ключа замен служит процедура Button1Click:

Для редактирования ключа замен служит процедура Button2Click:

Для создания и редактирования шаблонов служит процедура Button3Click.

Для непосредственного запуска обработки документов служит процедура Button4Click.

Полный код основного модуля (unit1) приведен в Приложении.

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

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

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

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

) синтаксические. Например, употребление открывающей операторной скобки без соответствующей закрывающей;

) семантические. К примеру, происходит вызов процедуры или функции с недостаточным или избыточным числом аргументов;

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

Для выполнения компиляции созданного приложения в Delphi необходимо нажать F9.

Если в ходе компиляции не будет выявлено синтаксических ошибок, то будет получен исполняемый (exe-файл) приложения.

В зависимости от преследуемых целей, тестирование программного обеспечения подразделяется на следующие виды:

) функциональное. Такое тестирование использует функции, особенности и взаимодействие с другими системами. Может применяться на компонентном, модульном, интеграционном и приемном уровнях. При функциональном тестировании контролируется внешнее поведение программного обеспечения;

) нефункциональное. Используются тесты, позволяющие определить характеристики программного обеспечения, измеряемые различными величинами. Тестами определяется общая работа системы.

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

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

Документирование и поддержка

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

Документация подразделяется на 2 вида:

) документы для управления разработкой;

) документы, входящие в состав программного средства.

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

) планы, оценки, расписания, создаваемые менеджерами с целью прогнозирования и управления ходом разработки и сопровождения программного продукта;

) также менеджерами ведутся отчеты по ресурсам, используемым в ходе разработки;

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

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

) заметки и переписка, в которых фиксируется взаимодействие менеджеров и разработчиков.

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

В типичный состав пользовательской документации входит описание:

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

) руководство по инсталляции, описывающее основные шаги, которые необходимо выполнить при первоначальной установке программы;

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

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

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

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

) описывающая строение программ, структуру данных, технологию разработки:

внешнее описание программы;

описание архитектуры программы;

спецификация и строение каждого модуля;

программные тексты модулей;

) помогающая вносит изменения:

руководство по сопровождению программного средства.

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

Рисунок 2.12. Главнапя форма приложения

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

Рисунок 2.13. Пример заполнения формы добавления нового ключа

Для редактирования имеющихся ключей замен необходимо на главной форме, показанной на рисунке 2.12 нажать кнопку Редактирование ключа замен, в открывшейся форме из выпадающего списка выбрать нужный ключ и отредактировать его параметры, например, как показано на рисунке 2.14, после чего нажать кнопку Заменить.

Рисунок 2.14. Редактирование ключа замен

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

Рисунок 2.15. Заготовка шаблона приглашения

Рисунок 2.16. Заготовка шаблона рекламного объявления

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

Рисунок 2.17. Выбор нужного ключа для вставки в шаблон

Нажмем кнопку Копировать в буфер.

Перейдем в окно Microsoft Word, установим курсор в позицию, в которую должен быть вставлен ключ, и на панели инструментов Word нажмем кнопку Вставить (или на клавиатуре нажмем сочетание клавиш Ctrl-V)

После вставки всех ключей, шаблоны примут вид, показанный на рисунках 2.18-2.19.

Рисунок 2.18. Шаблон приглашения со вставленными ключами

Рисунок 2.19. Шаблон рекламного объявления со вставленными ключами

Чтобы начать выполнение замен, на главной форме нужно нажать кнопку Выполнить обработку, откроется форма выбора шаблонов, показанная на рисунке 2.20. В левом окне нужно выбрать каталог, а в правом - файлы шаблонов.

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

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

Рисунок 2.20. Выбор шаблонов для обработки

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

Рисунок 2.21. Пример ввода значений ключей замен

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

Рисунок 2.22. Выбор каталога (папки) для сохранения заполненных документов

Для наглядности процесса хода обработки выбранных шаблонов, в главной форме приложения расположен индикатор хода обработки документа, показанный на рисунке 2.23.

Рисунок 2.23. Индикатор хода обработки выбранных шаблонов

Сохранение полученного документа

Сохранение заполненных шаблонов происходит автоматически после завершения его заполнения.

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

Результаты работы программы


3. Экономическая часть

 

.1 Расчет затрат па разработку программы


Расчет затрат на разработку программного продукта производится по следующей формуле:

,                                  (3.1)

где

 - затраты на программу;

 - количество разработчиков;

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

 - основная заработная плата программиста с учетом районного коэффициента, руб./мес.;

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

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

 - коэффициент, учитывающий накладные расходы организации, в которой разрабатывается данная программа (от 2,0 до 4,0);

 - машинное время ЭВМ для отладки программы одним программистом, машино-часы;

 - эксплуатационные расходы на 1 час машинного времени, руб./машино-ч.

Для программы создания документов и рекламной продукции в ООО «Истра+» определены следующие значения:

 = 1 мес.;                                      = 20000 руб./мес.;

 = 1 час.;                                    = 2;

 = 0,6;                               = 0,358;

 = 2;                                   = 2,9 руб./час.

Согласно вышеприведенной формуле (3.1) сумма затрат на разработку программы составляет:

Расчет стоимости программы создания документов и рекламной продукции в ООО «Истра+» произведём по формуле:

,                                              (3.2)

где  - стоимость программы.

, pyб.

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


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

,                                      (3.3)

где

 - капитальные вложения в ЭВМ, для которой предназначена данная программа, руб./год;

 - стоимость оборудования, руб.;

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

 - предпроизводственные затраты, р.

Например, для программы создания документов и рекламной продукции в ООО «Истра+» определены следующие значения:

 = 25000 руб.;

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

 = 25000 руб.

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

,                                           (3.4)

где

 - дополнительные кап. вложения;

 - машинное время необходимое пользователю для решения задачи, с помощью данной программы, машино-час/год;

 - эффективный годовой фонд времени работы ЭВМ, машино-час/год.

Например, для решения данной задачи ЭВМ выделено по 8 час/дн. (по продолжительности - полный рабочий день), то .

Таким образом

, руб./год.

3.3 Расчет эксплуатационных расходов связанных с использованием разработанной программы


Расчет эксплуатационных затрат на обработку данных программы будем производить по формуле:

,                          (3.5)

где

 - эксплуатационные расходы;

 - основная заработная плата обслуживающего персонала, руб./год;

 - дополнительная заработная плата обслуживающего персонала, руб./год;

 - отчисления на социальные нужды, руб./год;

 - амортизационные отчисления на оборудование, руб./год;

 - затраты на основные и вспомогательные материалы, руб./год;

 - затраты на электроэнергию (исходя из стоимости 0,28 руб./кВт);

 - амортизационные отчисления на здания, руб./год.

Так как данная программа предназначена для создания документов и рекламной продукции в ООО «Истра+», то не требуется дополнительного обслуживающего персонала, и так же не требуется амортизационных отчислений на здания, потому что компьютер устанавливается непосредственно на рабочее место.

Для работы на ЭВМ не требуется обслуживающий персонал, устанавливаются они на рабочих местах специалистов, поэтому , , ,  в этом случае не требуются и равны нулю.

Затраты на электроэнергию Bэ определяются исходя из годового фонда рабочего времени и потребляемой ЭВМ мощности (250 Вт).

Годовой объем работ ЭВМ в часах определяется следующим образом:

,                                                      (3.6)

где

 - среднесуточная загрузка оборудования (6 час.);

,3 - среднее количество дней работы ЭВМ в течение года.

, часов;              , руб./год.

В укрупненных расчетах годовые затраты на основные и вспомогательные материалы (CD/DVD-диски, бумага) определяются в размере 1% от стоимости основного оборудования , руб/год.

Величина  рассчитывается по формуле:

,                                                             (3.7)

где  - срок службы оборудования (для данного оборудования 6 лет).

Эксплуатационные затраты на обработку данных программы создания документов и рекламной продукции в ООО «Истра+» рассчитаем по формуле (3.5):

, руб./год.

Расчет эксплуатационных расходов на 1 час машинного времени производим по формуле:

,                                                               (3.8)

.

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

,                      (3.9)

где

 - сумма годовой экономии;

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

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

В рекламном агентстве ООО «Истра+» эту задачу выполняют 1 работник со средней заработной платой 25000 руб./мес., таким образом

, руб/год.

Следовательно, величина , согласно формуле (3.9), составляет

, руб./год.

3.4 Расчет показателей экономической эффективности от внедрения разработанной программы


Срок окупаемости () дополнительных капвложений при разработке программы рассчитаем по формуле:

, года                           (3.10)

Это составляет 1,57 дней.

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

На основании вышеприведенных расчетов можно сделать вывод, что в случае использования программы автоматизации заполнения документов капиталовложения составят 65062,36 руб. При этом годовая экономия эксплуатационных затрат, получаемых в результате применения программы, составит 15122688 руб. По приведенным выше расчетам видно, что данный программный продукт окупится за 1,57 дней.

Заключение


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

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

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

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

В итоге выполнения ВКР была достигнута ее цель, а также решены поставленные задачи: были изучены особенности организации документооборота в ООО «Истра+».

В результате проведенного сравнительного анализа современных средств программирования высокого уровня, была выбрана среда объектно-ориентированного программирования высокого уровня Delphi 7 в состав которой входят необходимые технологии.

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

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

Просмотр заполненных документов осуществляется при помощи такого популярного текстового процессора, как Microsoft Word.

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

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

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

Разработанное приложение имеет стандартный пользовательский интерфейс Windows и может работать под управлением таких версий данной операционной системы, как Windows XP / 7 / 8 / 10.

Список использованных источников


1.      ИБР: Делопроизводство [электронный ресурс] // http://www.doc-online.ru/software/ibr/ (дата обращения 13.03.17).

2.      Лесневский, А.С. Объектно-ориентированное программирование для начинающих [Текст] / А.С. Лесневский. - СПб.: Бином. Лаборатория знаний, 2012. - 232 с.

.        Globus Professional - система автоматизации нового поколения! [Электронный ресурс] // http://www.globusprof.ru/solutions/globus-professional (дата обращения 13.03.17).

.        ИБР: Делопроизводство [электронный ресурс] // http://www.doc-online.ru/software/ibr/ (дата обращения 13.03.17).

.        FreshDoc - сервис для удобной работы с документами: создание по шаблонам, хранение, учет [Электронный ресурс] // http://www.freshdoc.ru/ (дата обращения 13.03.17).

.        Описание программы «Автозаполнение шаблонов» [электронный ресурс] // http://www.softaccess.ru/descript.php?str=19/0# (дата обращения 13.03.17).

.        О системе E1. Оптимизация документооборота, схема WorkFlow [электронный ресурс] // www.evfrat.ru/about/ (дата обращения 13.03.17).

.        УниДок 2.00 [электронный ресурс] // http://soft.oszone.net/program/1447/UniDok/ (дата обращения 13.03.17).

.        Автоматизируемые процессы в СЭД iTs-Office [Электронный ресурс] // http://its.dn.ua/web/its3.nsf/0/Automated-processes (дата обращения 13.03.17).

.        RiDoc - программа для сканирования документов [электронный ресурс] // http://riman.ru/ridocinfo.php (дата обращения 13.03.17).

.        Система электронного документооборота UMS Docs [электронный ресурс] // http://iteranet.ru/it-novosti/2013/08/20/sistema-elektronnogo-dokumentooborota-ums-docs/ (дата обращения 13.03.17).

.        Form Pilot Home. Заполняем бумажные бланки [электронный ресурс] // http://soft.sibnet.ru/review/?id=71 (дата обращения 13.03.17).

.        Объектно-ориентированное программирование [электронный ресурс] // http://prog-cpp.ru/oop/ (дата обращения 13.03.17)/

.        Component Object Model [электронный ресурс] // https://ru.wikipedia.org/wiki/Component_Object_Model (дата обращения 13.03.17).

.        Самоучитель по Visual FoxPro 7. Визуальное объектно-ориентированное программирование [электронный ресурс] // http://dit.isuct.ru/ivt/books/DBMS/DBMS16/subd/FoxPro7/glava19.html (дата обращения 13.03.17).

.        Фленов, М. Е. Библия Delphi [Текст] / М. Е. Фленов. - СПб.: BHV, 2009. - 800 с.

.        Visual C++ для начинающих [Электронный ресурс] // http://www.hardline.ru/1/5/1444/1845-1.html (дата обращения 13.03.17).

.        Нил Дж. Рубенкинг. Язык программирования Delphi для «чайников» [Текст] / Нил Дж. Рубенкинг. - М.: Диалектика, 2012. - 336 с.

Приложения


Код главного модуля приложения

Unit1;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, IniFiles, ComObj, ComCtrls, StrUtils;_Form = class(TForm): TButton;: TButton;: TButton;: TButton;: TLabel;: TProgressBar;Button1Click(Sender: TObject);FormCreate(Sender: TObject);Button2Click(Sender: TObject);Button3Click(Sender: TObject);Button4Click(Sender: TObject);

{ Private declarations }

{ Public declarations }chenie_INI(var Max_Nom: integer); // Чтение из INI файла;_Form: TMain_Form;:String; // Переменная, где будет храниться путь к программе_Nomer: integer; // Максимальный номер имеющихся параметров_param: integer; // Количество параметров для заполнения: TIniFile; // Переменная инициализационного файла: string; // Наименование секции_param: array[1..100] of string; // Коды параметров: array[1..100] of string; // Наименования параметров_Naim: array[1..100] of string; // Отсортированные наименования параметров: array[1..100] of string; // Примеры параметров_files: integer; // Количество выбранных файлов-шаблонов_File_names: array[1..100] of string; // Полные пути и имена файлов открываемых шаблонов_param: integer; // Номер выводимого параметра: array[1..100] of string; // Значения параметров_File_names: array[1..100] of string; // Имена файлов для сохранения

{$R *.dfm}unit2, Unit3, Unit4, Unit5, Unit6, Unit7;TMain_Form.chenie_INI(var Max_Nom: integer); // Чтение из INI-файла,j: integer; // Переменные цикла:string; // Временная переменная для сортировки_param:=0; // Обнуление количества используемых параметровi:=1 to Max_Nom do // Цикл до максимального номера:='$'+inttostr(i)+'$'; // Получение имени секции(ini.SectionExists(section)) then // Если секция существует_param:=Kolvo_param+1; // Увеличение счетчика параметров

// Вывод параметров секции_param[i]:=section;[i]:=ini.ReadString(section,'Наименование','');_Naim[Kolvo_param]:=Naim[i];[i]:=ini.ReadString(section,'Пример','');;;

// Сортировка наименований ключей для вывода в выпадающем спискеi:= 1 to Kolvo_param-1 doj:= 1 to Kolvo_param-i doSort_Naim[j] > Sort_Naim[j+1] then begin:= Sort_Naim[j];_Naim[j]:= Sort_Naim[j+1];_Naim[j+1]:= k;

// Вывод параметров в выпадающей список на форме редактирования ключей (Form3)_Redakt_keys.Keys.Clear; // Очистка выпадающего списка выбора реадктируемых параметров_New_Shablon.Parametrs.Clear; // Очистка выпадающего списка выбора редактируемых параметровi:= 1 to Kolvo_param do_Redakt_keys.Keys.Items.Add(Sort_Naim[i]); // Вывод редактируемых параметров в выпадающий список_New_Shablon.Parametrs.Items.Add(Sort_Naim[i]); // Вывод редактируемых параметров в выпадающий список;;TMain_Form.Button1Click(Sender: TObject);// Добавление нового ключа: integer; // Количество добавляемых вариантов: string;_New_Key.Naim_Edit.Clear; // Очистить поле Наименование_New_Key.Primer.Clear; // Очистить варианты_New_Key.Key_Label.Caption:='$'+inttostr(Max_Nomer+1)+'$'; // Вывод нового ключа_New_Key.ShowModal; // Открытие формы ввода параметров нового ключа:='$'+inttostr(Max_Nomer+1)+'$'; // Получение имени секции

// Если наименование и пример нового параметра не пусты((Form_New_Key.Naim_Edit.Text<>'') and (Form_New_Key.Primer.Text<>'')) then_Nomer:=Max_Nomer+1; // Увеличить максимальный номер.WriteInteger('COMMON','Макс_номер',Max_Nomer);.WriteString(section,'Наименование',Form_New_Key.Naim_Edit.Text);.WriteInteger(section,'Количество_вариантов',Form_New_Key.Primer.Lines.Count);ks:=1 to Form_New_Key.Primer.Lines.Count do:='Вариант'+inttostr(ks);.WriteString(section,variant,Form_New_Key.Primer.Lines[ks-1]);;;;TMain_Form.FormCreate(Sender: TObject);

// При создании формы Form1:=Application.ExeName; // полный путь и название запущенной программы:=ExtractFileDir(Path); // отбрасываем название программы. Остается путь.Path[Length(Path)]<>'\' then Path:=Path+'\'; // если последний символ не \ то добавить его:=TIniFile.Create(Path+'nastroik.ini'); // полный путь к программе и имя ini файла_Nomer:=Ini.ReadInteger('COMMON','Макс_номер',0);;TMain_Form.Button2Click(Sender: TObject); // Редактирование файла настроек:integer; // Количество вариантов:string;_Form.chenie_INI(Max_Nomer); // Чтение параметров из инициализационного файла_Redakt_keys.Key_Label.Caption:=''; // Очистка ключа_Redakt_keys.Naim_Edit.Clear; // Очистка поля Наименование_Redakt_keys.Primer.Clear; // Очистка многострочного списка вариантов_Redakt_keys.ShowModal; // Открытие формы редактирования ключей замен:=Form_Redakt_keys.Key_Label.Caption; // Имя секцииForm_Redakt_keys.Keys.Text<>'' then.EraseSection(section); // Удалить всю секцию .WriteString(section,'Наименование',Form_Redakt_Keys.Naim_Edit.Text);.WriteInteger(section,'Количество_вариантов',Form_Redakt_Keys.Primer.Lines.Count);ks:=1 to Form_Redakt_Keys.Primer.Lines.Count do:='Вариант'+inttostr(ks);.WriteString(section,variant,Form_Redakt_Keys.Primer.Lines[ks-1]);;;

// ini.WriteString(section,'Наименование',Form_Redakt_keys.Naim_Edit.Text); // Запись наименования нового ключа

// ini.WriteString(section,'Пример',Form_Redakt_keys.Primer_Edit.Text); // Запись примера нового ключа;TMain_Form.Button3Click(Sender: TObject);_Form.chenie_INI(Max_Nomer); // Чтение параметров из инициализационного файла_New_Shablon.ShowModal;;TMain_Form.Button4Click(Sender: TObject);

// Выполнить обработку_Word: variant;,n: integer; // Переменные циклов_Add_Shablon.Vibr_files.Clear;_Add_Shablon.ShowModal; // Открытие формы выбора шаблонов_files:=0; // Обнуление счетчика выбранных файлов-шаблоновi:=0 to Form_Add_Shablon.Vibr_files.Items.Count-1 do // Цикл по количеству выбранных шаблонов_files:=Kol_files+1;_File_Names[Kol_files]:=Form_Add_Shablon.Vibr_files.items.Strings[i];

// Vibr_files.Items.Add(Form_Add_Shablon.Vibr_files.items.Strings[i]);;_param:=0; // Обнуление счетчика параметров_Form.chenie_INI(Max_Nomer); // Чтение параметров из инициализационного файлаi:=1 to Max_Nomer do // Цикл до максимального номера секции:='$'+inttostr(i)+'$'; // Получение имени секции(ini.SectionExists(section)) then // Проверка существования секции_param:=Nomer_param+1; // Увеличение счетчика испоьзуеых параметровв;_Zamens.ShowModal; // Открыть форму задания параметров заменn:=1 to Max_Nomer do[n]:=TComboBox(Form_Zamens.FindComponent('Vibor'+IntToStr(n))).Text;_Save_Dir.ShowModal; // Открыть форму выбора каталога для сохранения_Word:=CreateOleObject('Word.Application');i:=1 to Kol_files do // Цикл по количеству выбранных шаблонов.Position:=Round(100*i/Kol_files); // Вывод ProgressBar_Word.visible:=true;_Word.Documents.open(Full_File_Names[i]);n:=1 to Max_Nomer do // Цикл по количеству используемых параметров_Word.Selection.Find.MatchSoundsLike:= False;_Word.Selection.Find.MatchAllWordForms:= False;_Word.Selection.Find.MatchWholeWord:= False;_Word.Selection.Find.Format:= False;_Word.Selection.Find.Forward:= True;_Word.Selection.Find.ClearFormatting;_Word.Selection.Find.Text:=Kod_param[n];_Word.Selection.Find.Replacement.Text:=znach[n];_Word.Selection.Find.Execute(Replace:=2);;_File_names[i]:=copy(ExtractFileName(Full_File_Names[i]),1,Length(Full_File_Names[i])-4);_File_names[i]:=Form_Save_Dir.DirectoryListBox1.Directory+'\'+LeftStr(ExtractFileName(Full_File_Names[i]),length(ExtractFileName(Full_File_Names[i]))-4)+' '+DateToStr(Date)+'.doc';;

{ PoluchText.DestroyObject();.CreateObjectFromFile(New_File_Names[Kol_files], False);.Run();.DoVerb(ovShow); }_Word.quit;;.

Похожие работы на - Автоматизация процесса составления технического задания для производства рекламной продукции ООО 'Истра+'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!