Выпущен релиз СЭД 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.