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

Содержание

Слайд 2

Цели и задачи Цель: автоматизировать процесс, формирования листа согласования при помощи

Цели и задачи

Цель: автоматизировать процесс, формирования листа согласования при помощи использования

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

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

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

Слайд 4

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

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

Слайд 5

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

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

Слайд 6

Схема работы модуля Сам модуль состоит из 4 классов: MainPluginPackage SignsContextMenuRegister

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

Сам модуль состоит из 4 классов:
MainPluginPackage
SignsContextMenuRegister
SignsPrintComandProvider
SignToWord 
Проще говоря модуль состоит

из 3 частей:
Создание кнопки в меню;
Обработка события по нажатию документа;
Формирование документа.
Слайд 7

MainPluginPackage Класс MainPluginPackage отвечает за регистрацию плагина Все действия в системе

MainPluginPackage 

Класс MainPluginPackage отвечает за регистрацию плагина
Все действия в системе выполняются от

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

SignsContextMenuRegister SignsContextMenuRegister добавляет кнопку в меню и вешает на нее ивент,

SignsContextMenuRegister

SignsContextMenuRegister добавляет кнопку в меню и вешает на нее ивент, который

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

SignsPrintCommandsProvider Класс SignsPrintCommandsProvider отвечает за получение данных об электронной подписи выбранного

SignsPrintCommandsProvider

Класс SignsPrintCommandsProvider отвечает за получение данных об электронной подписи выбранного объекта

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

SignToWord Класс SignToWord отвечает за создание документа Word на основе полученных

SignToWord

Класс SignToWord отвечает за создание документа Word на основе полученных

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