Содержание

Выпущен релиз СЭД TESSA 3.5 : часть 3

Платформа TESSA 3.5.0 расширяет функции маршрутов и бизнес-процессов, упрощает работу с файлами, и это ещё не всё…

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

Маршруты

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

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

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

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

Группировку можно переключить в меню рядом с файлами.

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

Там выбирается режим отображения по умолчанию.

Web-клиент тоже поддерживает новую группировку.

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

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

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

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

Конструктор бизнес-процессов

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

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

С версии TESSA 3.5.0 появился набор действий, цель которых – быстро настроить бизнес-процессы как в маршрутах.

Процессы могут совмещать действия в группе Маршруты с любыми действиями, например, с действием Уведомление.

Действие Инициализация маршрута позволяет указать инициатора процесса и комментарий к циклу маршрута. Здесь их можно привязать к полям карточки.

Технически такие сложные действия, как Доработка, можно организовать, комбинируя стандартные действия (Задание, Смена состояния, Уведомление) в пределах одного узла – это возможность конструктора процессов TESSA.

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

В руководстве разработчика бизнес-процессов есть описание всех действий в группе Маршруты и инструкции по тому, как настроить процессы из примеров RoutingSamples.

Новое действие Диалог даёт возможность создать и показать карточку-диалог во многом аналогично тому, как это можно в одноимённом этапе маршрута.

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

На всякий случай уточним: всё описанное работает для пользователя и в web-клиенте тоже.

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

При импорте можно выбрать схему в нотации BPMN 2.0, созданную в специализированном приложении.

Нажав кнопку импорта, выберите формат файла Процесс BPMN.

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

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

Сохранение карточки с файлами

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

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

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

В конструкторе бизнес-процессов можно выбрать любую стрелку (переход) и указать ей новый Режим обработки сигналаПосле загрузки файлов.

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

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

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

Все действия с заданиями сохраняют файлы отдельным запросом с клиентского приложения на сохранение карточки, а уже потом выполняется действие с заданием вторым запросом. Это могут быть: взятие в работу и возврат из работы, откладывание задания и возврат из отложенного, завершение задания как с его удалением (например, кнопки Согласовать, Отозвать, Делегировать), так и без удаления (Запросить комментарий, Изменить параметры как автор), включая любые варианты завершения, добавленные в проектном решении.

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

Такое поведение поддерживается и в TessaClient, и в web-клиенте. Оно не влияет на сохранение карточки посредством API.

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

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

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

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

Файлы в таблицах

Мы подумали, что было бы удобно выбирать: работать с файлами как со списком или в форме таблицы.

На самом деле это элемент управления Представление, который был изменён расширением типа карточки Список файлов в представлении.

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

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

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

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

В API клиентских расширений для элемента управления доступен объект IFileControl со всеми его возможностями.

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

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

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

Примеры вывода файлов в табличной форме доступны в карточке Автомобиль.

В текущей версии элемент управления Представление отсутствует в web-клиенте, поэтому настройки расширения в нём также игнорируются. Мы над этим работаем, ждите в следующей версии TESSA…

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

Полный список изменений приведён в ReleaseNotes.