Изменены рабочие места: Administrator, User (изменены настройки расширения CreateCardExtension для узла “Контрагенты”; добавлены расширения CreateCardExtension для узлов в папке “Регистратор” и для узла “Мои документы”).
Изменены карточки: PasswordExpires (добавлена), Server settings (settings) (необязательное изменение).
Изменены библиотеки локализации.
Обновите хост Chronos.exe. Версия Chronos увеличена до 2.7.1.
В скриптах маршрутов для объекта-исполнителя Performer свойство SQLApprover переименовано в IsSql. В схеме данных сохранено прежнее название для обратной совместимости.
На вкладке “Безопасность” в карточке “Настройки сервера” добавлены настройки безопасности, связанные с сессиями и паролями пользователей. Изменяйте эти настройки только в том случае, если это требуется политиками безопасности в вашей организации.
Расширение представлений CreateCardExtension, используемое для создания карточек из реестров, теперь имеет выбор режима работы: по выделенной строке представления (как раньше) или по заданному типу карточки или документа. Режим задаётся в окне настройки расширений (вызывается по кнопке рядом с именем расширения, добавленного в узел рабочего места).
В типовых рабочих местах тип карточки теперь явно указан для кнопки создания контрагентов и объектов маршрутов. Также добавлено расширение на создание документов для реестра “Мои документы” и для реестров в папке “Регистратор”.
В маршрутах для типа этапа “Регистрация” добавлена настройка с указанием комментария для задания регистрации.
В маршрутах для типа этапа “Создание карточки” добавлена возможность создать карточку по заданному типу карточки или типу документа, в дополнение к созданию по шаблону.
Добавлены плейсхолдеры для ссылок на приложения (appLink и webAppLink) и для определения срока окончания действия пароля у сотрудника, если отчёт генерируется для карточки сотрудника (passwordExpires).
API: В скриптах маршрутов добавлены вспомогательные свойства и методы: CardTables, CardTask, CardRows().
API: В скриптах маршрутов для объекта-исполнителя Performer свойство SQLApprover переименовано в IsSql. В схеме данных сохранено прежнее название для обратной совместимости.
Компиляция объектов маршрутов теперь выполняется один раз, и скомпилированная сборка сохраняется в базе данных. При изменении объектов маршрутов она очищается. Это значительно оптимизировало операции с карточками, включёнными в типовое решение, сразу после перезапуска рабочего процесса в пуле приложений, т.е. при холодном старте или после автоматического перезапуска процесса пула, который настроен в IIS).
Исправлен доступ к текущему контексту UIContext.Current из метода GetData() для клиентского представления, добавленного расширением.
Исправлены запрос комментариев и завершение задания по запросу комментариев у доп. согласования.
Исправлено указание пользователя для запроса комментария в списке участников текущего этапа маршрута (над заданием). До получения ответа теперь пишется сотрудник, задавший вопрос, а после получения - сотрудник, ответивший на него.
Исправлена редкая ошибка при одновременном взятии блокировки на расчёт ролей в плагине пересчёта динамических и метаролей. Ошибка приводила к тому, что расчёт одной динамической роли или генератора метаролей завершался с ошибкой и пропускался до следующего расчёта.
Исправлены редкие ошибки при запуске приложений TessaClient или веб-клиента, которые одновременно подключаются к одному и тому же серверу. Проблемы были с сериализацией рабочих мест перед их отправкой на клиент.
Исправлена проблема, при которой некоторые плитки при уменьшении размера текста из-за нехватки места меняли размер текста и внутренние отступы при каждом открытии.
Исправлена ситуация, когда требовались права на редактирование карточки при наличии в запросе на сохранение пустых секций, т.е. секций, в которых был пустой список полей или строк. Такие секции могут создаваться вызовами card.Sections.GetOrAdd(“ИмяСекции”) в серверных расширениях на сохранение карточки.
При регистрации расширений с одинаковым Stage и Order порядок их выполнения друг относительно друга теперь стабилен и определяется полным именем типа регистратора (вместе с пространством имён). Это актуально для большинства регистраторов с атрибутом [Registrator] без дополнительных настроек.
Исправлено возможное дублирование строк на вкладке “История заданий” при сворачивании/разворачивании строк на несколько уровней вложенности.
Исправлено сохранение значений по умолчанию для колонок в схеме данных типа Time.
Теперь невозможна ситуация, когда схема данных сохраняется с циклическими связями между таблицами, в образовании которых участвует комплексная колонка с установленным признаком “Ссылка на родителя”. Такого рода связи не имеют смысла, поскольку такие колонки определяют связи для дочерних коллекционных секций карточки, которые не могут быть циклически связаны с родителями. Если циклическая связь присутствовала (добавленная по ошибке), то при действиях с карточками сервер приложений мог падать с ошибкой StackOverflowException без явного указания на причину. Теперь редактор схемы данных предупреждает о наличии таких связей и запрещает сохранение схемы данных.
Исправлены ошибки в схеме данных, возникающие в некоторых сценариях при изменении типа секции у таблицы.
Исправлено переименование внешних ключей для базы данных PostgreSQL, если переименована таблица, но не имя колонки.
Исправлена невозможность добавить в схему данных колонку в таблицу-перечисление с типом, отличным от String, если в этой таблице уже присутствуют строки.
Исправлено изменение типа колонки в базе данных с NULL на NOT NULL и обратно.
Исправлена ошибка, когда для последнего этапа согласования был снят флаг “Вернуть при несогласовании” и согласующий выбрал “Не согласовать”. В таком случае процесс завершался и задание на доработку не отправлялось. Теперь процесс корректно переходит на следующий цикл согласования и отправляет задание инициатору на доработку.
Исправлены ошибки перехода в начало группы для этапов согласования и подписания, когда этап является последним.
Исправлена ошибка в маршруте с несколькими этапами согласования, один из которых имеет настройку “Вернуть при согласовании”. Для воспроизведения ошибки требуется согласовать задание на таком этапе, и не согласовать на следующем за ним этапе. В этом случае после возврата на редактирование произойдёт пропуск этапов согласования вплоть до этапа с настройкой “Вернуть при согласовании”.
Исправлен ряд ошибок, который мог происходить при копировании и создании по шаблону для карточек с непустыми маршрутами.
Исправлена ошибка “Violation of PRIMARY KEY constraint ‘pk_KrStages’“, которая могла происходить в некоторых сценариях при ручном добавлении этапа после пересчёта маршрута, и при последующем его повторном пересчёте.
Исправлены опечатки в локализации.
Удалена проверка “Вы не указали роль Вычисляемые согласующие” при настройке этапов маршрутов с указанным SQL-запросом, поскольку в этом случае роль будет автоматически подставлена в конец, и сообщение мешает настройке этапов.
В TessaAdmin в редакторе рабочих мест исправлено контекстное меню для узлов дерева таким образом, чтобы оно выводило действия для узла, по которому кликнули, но не для выделенного узла.
В web-клиенте исправлена невозможность раскрыть узел представления на мобильных устройствах, если он содержит дочерние узлы (например, другие представления).
В web-клиенте исправлено открытие созданной карточки на клиенте для типа этапа “Создание карточки”.
В web-клиенте исправлен вывод создателя задания, если он отличается от автора задания (например, при отправке задачи “от имени” руководителя, где руководитель будет автором, а отправивший сотрудник - создателем задания).
Кнопка “Создать карточку”, добавляемая на панель представлений расширением CreateCardExtension, теперь корректно создаёт карточки того же типа, что и выбранная строка, если экземпляр карточки имеет тип документа.
Исправлена возможность выделить и скопировать имя колонки и некоторые другие настройки физических колонок при редактировании схемы данных, если они доступны только для чтения. Проблема появилась в 2.6.
Исправлено использование нескольких плейсхолдеров {t:Table.Column} в пределах одной строки для одной и той же таблицы и колонки, но с разными дополнительными настройками. Например: <_row>{t:RoleDeputies.MaxDate}, {t:RoleDeputies.MaxDate utc}</_row>
При изменении в метаинформации списка доступных настроек пользователей (“Мои настройки”) для уже сохранённых в базе данных настроек в момент загрузки будет проходить исправление их структуры (добавление/удаление полей, секций и др.) для приведения настроек в соответствие с метаинформацией.
Исправлена возможная проблема при запуске клиентских приложений (Tessa Applications и др.), когда Windows не возвращает корректной информации о языке интерфейса для текущей терминальной сессии.
Исправлено логирование необработанных исключений в плагинах Chronos. Ошибка появилась в сборке 2.6.
Исправлено появление сообщения об ошибке в плагинах Active Directory, которые включены для лицензии без соответствующего модуля. Сообщение также расширено.
В логах Chronos с настройками по умолчанию скрыты малозначительные сообщения о планировщике Quartz.
Исправлена ошибка в этапе “Создание карточки” в режимах с автоматическим запуском процесса или в режиме “Сохранить и открыть карточку” с последующим запуском процесса вручную. Ошибка возникала при наличии в карточке заполненного маршрута (до пересчёта при запуске).
При сохранении сателлитов заданий теперь учитывается, что у них могут быть собственные секции, при изменении в которых сателлит будет создан.
В сообщениях об ошибках, связанных с блокировками на карточки, теперь выводится идентификатор карточки, чтобы администратор мог определить, для какой карточки снять блокировку вручную.
В тексте ошибки об отсутствии этапов в маршруте для таких маршрутов, которые построены для кнопок процессов, теперь выводится информация по этим кнопкам. Т.о. можно отличить ошибку основного маршрута от ошибки в маршруте кнопки.
Библиотеки локализации больше не помечаются как изменённые, если в них не было изменений.
Скрипт обновления Upgrade.bat сначала выполняет все действия с базой данных, и только после этого проверяет соединение с веб-сервисом, открывая там сессию. Это предупреждает проблемы, когда для открытия сессии требуются дополнительные действия.
Перед сохранением карточек в типовом решении теперь удаляется структура с отображаемыми кнопками процесса, это сокращает запросы и лог истории действий.
Поле “Порядок” для карточек “Группа этапов” теперь может быть неуникальным числом. В частности, это позволяет выстраивать группы этапов для кнопок процессов независимо от групп этапов основного процесса. Если две группы в пределах процесса имеют один и тот же порядковый номер, то они сортируются друг относительно друга стабильным образом.