Перейти к содержанию

Версия 2.7 (12.07.2018)

Переход на новую сборку

  1. Изменены рабочие места: Administrator, User (добавлены представления “Уведомления” и “Типы уведомлений” в папку Справочники в режиме отбора; представление “Рабочие места” на верхнем уровне в режиме отбора).
  2. Изменены представления: Notifications (добавлено), NotificationTypes (добавлено), KrFilteredStageTypes, KrStageRows, Workplaces (добавлено).
  3. Изменены файлы схемы данных .tsd (схема) и .tsp (библиотеки) вследствие изменении версии схемы. Перед объединением схемы данных обновите версию схемы данных, выгруженной в файлы, посредством её открытия в SchemeEditor. Это обновит таблицы в библиотеках схемы, относящихся к проектному решению, после чего их можно перенести в новую схему данных из папки со сборкой.
  4. Изменены таблицы: DefaultWorkplacesVirtual, KrAcquaintanceSettingsVirtual (добавлена), KrEditSettingsVirtual, KrTaskCommentVirtual (добавлена), KrNotificationSettingVirtual (добавлена), KrProcessButtons, KrProcessManagementStageTypeModes, KrProcessStageTypes, KrSecondaryProcessCommonInfo, KrStageGroups, KrUniversalTaskOptions, KrUniversalTaskOptionsSettingsVirtual, Notifications (добавлена), NotificationTypes (добавлена).
  5. Изменены функции: CalendarIsWorkTime.
  6. Изменены типы карточек: GeneralUserSettings, KrAcquaintanceStageTypeSettings (добавлен), KrAdditionalApproval, KrChangeStateStageTypeSettings, KrEdit, KrEditInterject, KrEditStageTypeSettings, KrNotificationStageTypeSettings (добавлен), KrPerformersSettings, KrProcessButton, KrProcessManagementStageTypeSettings, KrRegistration, KrResolutionStageTypeSettings, KrSecondarySatellite, KrStageCommonMethod, KrStageGroup, KrStageTemplate, KrUniversalTask, KrUniversalTaskStageTypeSettings, Notification (добавлен), NotificationType (добавлен).
  7. Изменены карточки: Acquaintance (добавлена), CancelButton, CancelTemplate, DeregisterButton, DeregisterTemplate, EditTemplate, RebuildButton, RebuildTemplate, RegisterButton, RegisterTemplate, RejectButton, RejectTemplate, StartProcessButton, StartProcessGroup (добавлена), StartProcessTemplate (добавлена).
  8. Изменены библиотеки локализации.
  9. Обновление схемы данных необходимо выполнять через SchemeEditor, причём на предложение обновить версию схемы надо согласиться. Не требуется при автоматизированном обновлении через Upgrade.bat.
  10. Изменены возвращаемые значения для хранимой функции CalendarIsWorkTime: теперь возвращает 1/true, если часы рабочие, или 0/false, если нерабочие.
  11. Откройте и тут же сохраните карточки шаблонов этапов, в которых есть этапы типа “Настраиваемое задание”. Убедитесь, что варианты завершения в настройках этапа упорядочены корректно.
  12. Обновите хост Chronos.exe. Версия Chronos увеличена до 2.7.
  13. В скриптах этапов для типа этапа “Настраиваемое задание” параметры завершения для каждого исполнителя теперь заполняются в коллекции StageInfo.Tasks в порядке их завершения. Например, если указан единственный исполнитель, то его вариант завершения доступен по StageInfo.Tasks[0].OptionName, а комментарий по StageInfo.Tasks[0].Comment.

Добавление и изменение функциональности

  1. В TessaClient по умолчанию пользователю теперь показывается только первое рабочее место из доступных. По кнопке слева от списка вкладок пользователь может добавить вкладку с любым рабочим местом из доступных. Также можно открывать несколько вкладок для одного и того же рабочего места и закрывать любую вкладку с рабочим местом.
  2. В диалоге “Мои настройки” пользователь может настроить список “Рабочие места, открываемые при запуске”, чтобы при открытии приложения TessaClient открывался заданный список вкладок рабочих мест в указанном порядке вместо единственной вкладки с первым доступным рабочим местом. Если рабочие места в списке перестают быть доступными, то пользователю они не открываются, хотя присутствуют в списке. Каждый пользователь может настроить список, индивидуально для себя.
  3. В TessaClient добавлено контекстное меню по правой кнопке мыши на заголовках вкладок, через которое доступно массовое закрытие вкладок.
  4. В TessaClient доступно перетаскивание открытых вкладок, используя drag&drop.
  5. В TessaAdmin при сохранении библиотек локализаций теперь сохраняются только изменённые библиотеки.
  6. Переход между этапами маршрута теперь возможен на этап из другой группы.
  7. Поле “Условие” в скриптах этапов теперь расширяется по высоте без прокрутки, если скрипт внутри не умещается в 5 строк.
  8. Если при пересчёте маршрута по кнопке не было изменений, то в TessaClient теперь отображается всплывающее уведомление вместо окна с сообщением, если в настройках пользователя разрешены уведомления.
  9. Добавлен тип карточки “Уведомление”, в котором можно создавать и настраивать отправляемые системой уведомления. В заголовке и теле письма можно использовать плейсхолдеры.
  10. Добавлен тип этапов “Уведомление” в процессе маршрутов. Этап работает как при синхронной работе процесса, так и при асинхронной. В настройках указывается карточка уведомления, сотрудники, кому должно быть отправлено уведомление и флаг “Не отправлять заместителям”.
  11. Добавлен тип этапов “Ознакомление” в процессе маршрутов. Этап работает как при синхронной работе процесса, так и при асинхронной. В настройках указываются сотрудники или роли, кому должно быть отправлено ознакомление, комментарий ознакомления (в комментарии допустимо использование плейсхолдеров), алиасы плейсхолдеров, флаг “Не отправлять заместителям”, а также карточка уведомления, уведомление по которой отправляется сотрудникам для ознакомления.
  12. Тип этапа “Редактирование” переименован в “Доработка”. Добавлены настройки этапа для указания срока и текста задания, а также настройка “Не пропускать этап”. При завершении задания сотрудник может ввести комментарий к циклу маршрута, который будет перенесён в соответствующее поле при завершении задания.
  13. В типе этапа “Настраиваемое задание” теперь можно указать нескольких исполнителей. Задания выбранным исполнителям приходят параллельно, а этап завершается после завершения всех заданий.
  14. В типе этапа “Смена состояния” выбор состояния теперь доступен по троеточию из справочника.
  15. В типе этапа “Настраиваемое задание” порядок вариантов завершения теперь настраивается вручную.
  16. В настройки этапа “Управление процессом” добавлены режимы отзыва и пропуска процесса.
  17. В карточке “Кнопка процесса” добавлены скрипты, позволяющие управлять настройками видимости кнопки в момент открытия карточки и в момент фактического нажатия на кнопку. Также добавлено поле “Сообщение о недоступности кнопки при нажатии”.
  18. Плитки-группы для кнопок процессов теперь занимают половину плитки, если группа не расположена внутри плитки “Действия”.
  19. Для приложения Tessa Applications добавлена настройка в конфигурационном файле %appdata%\tessa\settings\application_catalogs.xml: t:AppPath=”%appdata%\tessa”. В ней можно указать любой путь к папке загруженных приложений (подпапка applications от заданного пути) с учётом переменных окружения (%appdata%, %localappdata% и др.), в т.ч. указать путь, не являющийся частью переносимого профиля %appdata%. Используйте эту настройку только в том случае, если размер переносимого профиля пользователя ограничен, и средствами сторонних приложений выполняется синхронизация этого профиля между рабочими станциями.
  20. В карточке “Кнопка процесса” удалено поле указания сигнала, который отправляется при нажатии на кнопку; чтобы отправить сигнал, используйте этап “Управление процессом”. Также кнопка “Запуск процесса” теперь имеет свою группу и шаблон, которые можно дополнять/изменять в рамках проекта.
  21. Добавлен плейсхолдер {cardDigest}, который заменяется на дайджест карточки.
  22. Добавлен форматтер плейсхолдеров #noencode, который предотвращает вызов Encode-методов для плейсхолдера при замене его в документе (актуально, в частности, для HTML документов).
  23. Задания редактирования, регистрации, доп. согласования и настраиваемые задания теперь можно откладывать.
  24. Типы карточек, относящиеся к построению процессов маршрутов (шаблоны этапов KrStageTemplate, группы этапов KrStageGroup, кнопки процессов KrProcessButton и методы расширений KrCommonMethod), теперь доступны для создания из группы “Маршруты” (группа “Routes” в TessaAdmin). Ранее использовалась группа “Настройки”.
  25. API: В скриптах маршрутов, запускаемых по кнопке процесса, параметры кнопки теперь доступны в свойстве Button, которое возвращает объект IKrProcessButton. Доступные свойства описаны в объявлении интерфейса в расширениях типового решения.
  26. API: В скриптах маршрутов добавлен метод AddTaskHistoryRecord, упрощающий добавление строк-сообщений в историю заданий, например, сообщение о запуске процесса, о возврате на доработку и др.
  27. API: Добавлен сигнал для процесса маршрутов KrStartProcessUnlessStartedGlobalSingal, запускающий процесс, если процесс ещё не запущен.
  28. API: Метод storage.Get<T>(“key”) при отсутствии ключа в хранилище теперь выводит подробную информацию по ошибке в исключении KeyNotFoundException.
  29. API: Добавлены методы validationResult.AddError(“text”), AddWarning(“text”) и AddInfo(“text”), которые не указывают тип объекта при добавлении сообщения.
  30. API: Для удобства добавления сообщений в скриптах этапов добавлены методы AddError(“text”), AddWarning(“text”) и AddInfo(“text”).
  31. API: Добавлен объект INotificationManager (доступен только в серверных расширениях), который позволяет отправлять уведомления, настраиваемые в карточках уведомлений. В параметрах можно указать карточку, по которой производится расчет контекстных ролей и плейсхолдеров, роли, сотрудникам которых приходят уведомления, и флаг “Не отправлять заместителям”, который определяет, нужно ли отправлять уведомление заместителям переданных ролей.
  32. API: Добавлен метод GetRoleIDList в IRoleRepository для получения списка идентификаторов ролей по списку имен ролей.
  33. API: Добавлен объект IKrAcquaintanceManager (доступен на клиенте и сервере), который позволяет отправлять ознакомления по карточке на список ролей с возможностью указания уведомления из справочника “Уведомления”.
  34. API: Добавлены интерфейсы ITabbedFormViewModel для формы карточки со вкладками и свойствами Tabs и SelectedTab, а также IMainFormViewModel для основной формы карточки. Свойство ICardModel.MainForm требуется привести к интерфейсу, используя метод cardModel.TryGetMainForm().
  35. API: Для dynamic-коллекций и хеш-таблиц добавлены методы Add(value), Insert(index, value), Remove(value), RemoveAt(index), Clear(), IndexOf(value) и LastIndexOf(value). Методы Insert(index, value), RemoveAt(index), IndexOf(value) и LastIndexOf(value) доступны только для коллекций. Примеры использования: StageInfo.Tasks.Clear(); StageInfo.Remove(“Tasks”).
  36. API: Обновлены библиотеки: Linq2DB 2.1.0, Npgsql 4.0.2, Quartz 3.0.6, System.Threading.Tasks.Extensions 4.5.1.

Исправления и оптимизации

  1. Исправлен тип этапа “Задача” при отзыве процесса и при отправке задачи на новом цикле процесса.
  2. Исправлены возможные ошибки при отзыве процессе для типов этапов “Согласование”, “Подписание”, “Регистрация” и “Настраиваемая задача”.
  3. Исправлена обработка ошибок в типе этапа “Настраиваемое задание”.
  4. В настройках этапа, которые используют единственную роль исполнителя, исправлено использование SQL-запроса с вычисляемыми исполнителями. В этом случае используется первая роль исполнителя, возвращаемая SQL-запросом. Если запрос не возвращает строк, то используется роль, указанная в настройках этапа, или отображается сообщение об ошибке, если такая роль не задана. В типовом решении исправление затрагивает тип этапа “Настраиваемое задание”.
  5. При отправке типовых задач комментарий теперь может содержать переводы строк, которые отображаются в Digest задания, но не в истории заданий. Это позволяет использовать тип этапа “Задача” в маршруте, в котором приводится подробное описание задачи с разделением на несколько строк.
  6. Исправлен этап создания карточки по шаблону в маршруте. Теперь создание карточки не зависит от прав пользователя, при действии которого был инициирован этап. Также исправлено создание по шаблону, в котором присутствовали файлы.
  7. Исправлено копирование комментария инициатора в строку истории заданий после того, как инициатор завершил задание на доработку. Если инициатор изменил комментарий, то изменение теперь будет отражено в истории.
  8. Исправлены сообщения об ошибках при компиляции скриптов в этапах маршрутов.
  9. Улучшено сообщение об ошибке при перемещении этапа вне границ группы этапов.
  10. При отсутствии выполняемых этапов в маршруте документа теперь выводится сообщение об ошибке. Например, если присутствует единственный этап “Доработка”, который будет пропущен при запуске.
  11. Если у пользователя нет прав на редактирование маршрута (в карточках прав доступа), то он больше не может редактировать маршрут.
  12. Исправления при переходах в маршруте на текущую группу этапов.
  13. Исправлено добавление/удаление групп этапов по условиям в скриптах “Выполнение маршрута”, если при завершении текущей группы этапов изменились условия включения групп в маршрут (например, изменилось поле в карточке, на основании которого определялось включение группы).
  14. Если выполняется отправка письма, к которому должен быть приложен файл, находящийся в процессе загрузки на сервер, то письмо не отправляется и откладывается до следующей отправки писем.
  15. В английской локализации типового решения строки “Disapprove” в значении “Не согласовать” везде заменены на “Reject”, т.к. это правильный термин в делопроизводстве.
  16. Контролы “Ссылка” и “Список” теперь всегда передают параметры PageLimit/PageOffset, если представление поддерживает постраничное отображение, и не передают их, когда представление его не поддерживает.
  17. Хранимая функция CalendarIsWorkTime теперь возвращает 1/true, если часы рабочие, или 0/false, если нерабочие.
  18. Улучшена обработка ошибки, когда в синхронный процесс, не разрешающий наличие этапов с задачами (т.е. асинхронный этапов), добавлены такие этапы. Например, в группу этапов, связанную с кнопкой процесса.
  19. Исправлена редкая ошибка, при которой порядок библиотек локализации в TessaAdmin мог отличаться от алфавитного.
  20. Исправлена простановка штампа в документах PDF для ещё не сохранённой карточки.
  21. В web-клиенте исправлено открытие карточки замещений, после которого эта же карточка могла непроизвольно открываться при открытии других карточек.
  22. В web-клиенте исправлено дублирование плиток создания по шаблону после выполнения выхода и тут же входа в учётную запись.
  23. В web-клиенте исправлена выгрузка представлений в html/csv, если к представлению была применена сортировка.
  24. В web-клиенте исправлен перенос на несколько строк в дайджесте заданий.
  25. В web-клиенте исправлен переход по back_url в исходную ссылку на карточку или представление после логина, если при изначальном открытии такой ссылки вход в систему не был выполнен.
  26. Исправлен порядок выполнения скриптов в типовом процессе. Сначала всегда выполняются design-time скрипты, а только потом runtime, и первым из скриптов выполняется условие.
  27. Улучшено сообщение об ошибке при невозможности загрузить библиотеку схемы данных из-за её версии.
  28. Исправлено сохранение схемы данных с записями, добавленными в типовую таблицу-перечисление в библиотеку, отличную от типовых, если схема открыта из файловых папок через приложение SchemeEditor.
  29. Исправлено добавление первой записи в таблицу-перечисление.
  30. Исправлен расчёт изменений при сохранении таблицы в схеме данных, в которой была изменена колонка путём переименования, изменения описания или изменения значения по умолчанию. Ранее такие изменения пропускались, поэтому таблица не была отмечена как изменённая.
  31. Исправлена миграция базы данных из базы Postgres в базу Postgres.
  32. Исправлено добавление этапов в карточку шаблона этапов, которая ещё не была сохранена.
  33. Исправлена синхронизация с Active Directory для базы данных Postgres.
  34. Исправлена установка связи между родительскими подразделениями при синхронизации с Active Directory.
  35. В схеме данных исправлено поведение ссылочных колонок внутри комплексных. Такие колонки имеют предопределённое имя, тип и COLLATION (параметры наследуются из колонок, на которые ссылается комплексная колонка), но могут определять любые значения по умолчанию и другие свойства, независимо от связанных колонок. Это исправило проблемы со значениями по умолчанию в ссылочных колонках.
  36. Исправлены почтовые уведомления при отправке задач в этапах “Согласование”, “Подписание” и “Настраиваемое задание”, а также при запросе комментария и при делегировании. В некоторых случаях уведомления могли не отправляться.
  37. Исправлено отображение колонки “Участники” в таблице с этапами, в которой могли отображаться уже удалённые участники.
  38. Исправлена локализация названия роли “Вычисляемые исполнители” в колонке “Участники” в таблице с этапами и при задании доп. согласующих.
  39. Исправлена локализация в шаблонах этапов для типовых кнопок процесса.
  40. Исправлена видимость таблицы с активными заданиями на этапе маршрута.
  41. В настройках типа этапа “Задача” флажки для массовой отправки и выбора ответственного исполнителя теперь видны всегда, независимо от количества исполнителей.
  42. Улучшен вывод комментария инициатора совместно с комментарием этапа согласования или подписания.
  43. В TessaClient исправлен размер и местоположение окна со строкой в контроле “Таблица” или с другим диалогом, который по высоте превышает размер основного окна, развёрнутого на весь экран.
  44. Исправлено изменение карточки-сателлита в процессе маршрутов одновременно с движением процесса, например, при добавлении этапа одновременно с завершением задания.
  45. В типе этапа “Управление процессом” исправлен поиск этапа для перехода при вводе с клавиатуры, и запрещено редактирование всех настроек этапа в документе.
  46. Задания, отправленные этапом “Настраиваемое задание”, теперь группируются в циклы маршрута совместно с другими заданиями.
  47. Исправлена видимость виртуального файла “Лист согласования” для маршрутов, в которых отсутствуют группы согласования и подписания.
  48. Исправлена простановка записей об отмене/отзыве/возврате на доработку в истории заданий для типового процесса маршрутов.
  49. Исправлен отзыв задания “Доработка” при отзыве процесса маршрутов.
  50. Исправлена ошибка возврата языка локализации на текущий после окончания использования LocalizationManager.CreateScope(…).
  51. Исправлена ошибка в процессе маршрутов, из-за которой пользователю требовались права на редактирование карточки, даже если он не менял карточку, но завершил задание.
  52. Кнопка “Пересчитать” под таблицей с этапами маршрута теперь отображается только для запущенного процесса.
  53. Кнопка “Создать карточку” на панели представления, добавляемая расширением CreateCardExtension, больше не отображается при выборе из представлений по кнопке троеточия.
  54. В типе этапа “Задача” исправлена отправка задачи с явно заданным датой/временем, которые расположены в прошлом на момент выполнения этапа, при этом в настройках типа документа включена проверка на дату/время подзадач. Такая проверка теперь пропускается для задач, отправленных из этапа маршрута.
  55. При закрытии строки с этапом “Задача” теперь сразу выводится предупреждение о том, что срок или длительность не указаны.
  56. При обновлении схемы данных из базы данных удаляются объекты default constraint из метаинформации, которые были по ошибки созданы в предыдущих версиях редактора схемы данных.
  57. Исправлен расчёт SQL-исполнителей в этапах маршрутов. Теперь состав исполнителей рассчитывается непосредственно перед выполнением этапа, а не при пересчёте маршрута.
  58. Исправлена ситуация, когда при пересчёте части маршрута в затронутых этапах могли быть удалены изменения, выполненные вручную в маршруте документа, т.е. отсутствующие в шаблоне.
  59. Оптимизирована компиляция скриптов в маршрутах.
  60. В TessaClient исправлена вставка писем Outlook в файлы карточки из буфера обмена и через drag&drop.
  61. Добавлены проверки обязательности для списка исполнителей в этапах маршрутов.
  62. Исправлен запуск процесса с одновременным удалением этапов.
  63. Исправлена работа этапа “Пересчёт маршрута”.
  64. Оптимизирован серверный кэш объектов, используемый в маршрутах. Это также оптимизировало сохранение и импорт карточек, используемых для настройки маршрутов (шаблоны этапов, группы этапов и др.).
  65. Улучшены сообщения об ошибках компиляции. Также такие ошибки теперь всегда записываются в лог.
  66. Исправлены мобильное согласование и автосогласование, в которых не выполнялась компиляция.
  67. Исправлено автосогласование при наличии заданий доп. согласования.
  68. Тип карточки теперь корректно отмечается как изменённый, если в любом контроле по кнопке “Дополнительно” поменять отступ контрола.
  69. Исправлено указание отрицательных сроков в этапах маршрутов, если включена опция “Разрешить отрицательные сроки” в карточке настроек “Типовое решение”.
  70. Исправлено “мерцание” при обновлении карточки, в которой есть свёрнутые по умолчанию блоки.
  71. Актуализированы документация и подсказки рядом со сценариями для написания процессов маршрутов.
  72. Исправлено выполнение маршрутов, полученных при копировании карточки с уже построенным маршрутом, некоторые этапы которого изменялись вручную.
Back to top