Тема выпускной квалификационной работы: Разработка модуля формирования листа согласования электронных документов в IPS
Цели и задачи
Исследование предметной области
Выбор языка программирования
Выбор среды разработки
Схема работы модуля
MainPluginPackage 
SignsContextMenuRegister
SignsPrintCommandsProvider
SignToWord
Тестирование
526.80K
Category: programmingprogramming

Разработка модуля формирования листа согласования электронных документов в IPS

1. Тема выпускной квалификационной работы: Разработка модуля формирования листа согласования электронных документов в IPS

Руководитель от кафедры: к.т.н., доцент Котов Владимир Валерьевич
Исполнитель: студент группы И-116 Наумов Сергей Николаевич

2. Цели и задачи

Цель: автоматизировать процесс, формирования листа согласования при
помощи использования подключаемого модуля.
Задачи:
изучить PLM систему IPS;
изучить систему электронного документооборота на АО КЭМЗ;
проанализировать различные варианты решения выявленной проблемы;
изучить текущие требования к оформлению листа согласования;
разработать тех задание на основание технических требований;
выбрать язык программирования и среду разработки, наиболее подходящие для работы с
IPS;
• разработать модуль формирования листа согласования;
• провести тестирование модуля.

3. Исследование предметной области

4. Выбор языка программирования

5. Выбор среды разработки

6. Схема работы модуля

Сам модуль состоит из 4 классов:
• MainPluginPackage
• SignsContextMenuRegister
• SignsPrintComandProvider
• SignToWord
Проще говоря модуль состоит из 3 частей:
1. Создание кнопки в меню;
2. Обработка события по нажатию документа;
3. Формирование документа.

7. MainPluginPackage 

MainPluginPackage
Класс MainPluginPackage отвечает за регистрацию плагина
Все действия в системе выполняются от имени авторизованной
пользовательской сессии (интерфейс Intermech.Interfaces.IUserSession), что
позволяет производить проверку прав доступа и аудит выполнения действий,
а также выполнять модификацию данных в рамках транзакций с
возможностью отката проведённых изменений.
Сессия получается с помощью вспомогательного класса SessionKeeper,
который возвращает ссылку на сессию для текущего потока.
Пример:

8. SignsContextMenuRegister

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

9. SignsPrintCommandsProvider

Класс SignsPrintCommandsProvider отвечает за получение данных
об электронной подписи выбранного объекта (дата и номер
регистрации документа, информация о подписанте и подписи и
т.д.)
Любой элемент управления, которому требуется поддержка
контекстных меню, должен реализовать интерфейс
ICommandsProvider.
Также необходимо реализовать метод GetMergedCommands,
который вызывается для получения допустимых и подавляемых
команд контекстного меню для выделенных элементов навигации
одной категории и типа.

10. SignToWord

Класс SignToWord отвечает за создание документа Word на основе
полученных из IPS данных.
Для создания документа WORD возможностями .net framework и c#
существует написанная Microsoft библиотека для работы с ПО
Microsoft Office. Наименование необходимой нам библиотеки –
Microsoft.Office.Interop.Word.

11. Тестирование

English     Русский Rules