Описание релизов/0.43.0: различия между версиями
Строка 111: | Строка 111: | ||
=== Операнд для расчета ячейки отчёта === | === Операнд для расчета ячейки отчёта === | ||
− | Добавлен операнд '''''EntryExpressionPivotSourceCellValueParameter''''' для рассчёта ячейки отчёта, где | + | Добавлен операнд '''''EntryExpressionPivotSourceCellValueParameter''''' для рассчёта ячейки отчёта, где |
+ | '''''pivotSourceId''''' - идентификатор отчета-источника данных, | ||
+ | '''''column''''' - номер столбца, | ||
+ | '''''row''''' - номер строки. | ||
+ | '''Важно!!!''' Индексы строк и столбцов начинается с 0 | ||
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px; overflow:auto;"> | <div class="toccolours mw-collapsible mw-collapsed" style="width:700px; overflow:auto;"> | ||
<div style="font-weight:bold;line-height:1.6;">JSON</div> | <div style="font-weight:bold;line-height:1.6;">JSON</div> |
Версия 09:10, 9 февраля 2022
Содержание
Критичные изменения
- Обновление версии Angular. Прикладным проектам, использующим библиотеки платформы, необходимо обновиться до Angular 13:
"@angular/animations": "~13.1.3",
"@angular/cdk": "^13.1.3",
"@angular/cdk-experimental": "^13.1.3",
"@angular/common": "~13.1.3",
"@angular/compiler": "~13.1.3",
"@angular/core": "~13.1.3",
"@angular/forms": "~13.1.3",
"@angular/platform-browser": "~13.1.3",
"@angular/platform-browser-dynamic": "~13.1.3",
"@angular/router": "~13.1.3",
а также версии других библиотек:
"@ag-grid-community/angular": "^26.2.0",
"@ag-grid-enterprise/all-modules": "^26.2.1",
"tslib": "^2.3.1",
"zone.js": "~0.11.4"
--devDependencies--
"@angular-devkit/build-angular": "~13.1.4",
"@angular/cli": "~13.1.4",
"@angular/compiler-cli": "~13.1.3",
"@types/jasmine": "~3.6.0",
"karma": "~6.3.11",
"ng-packagr": "^13.1.3",
"typescript": "~4.5.5"
- Нельзя использовать старые версии клиентов на новых версиях сервисах и наоборот, т.е. чтобы нужно использовать версии клиентов и сервисов > 0.43 или < 0.43.
- Отложенная загрузка справочников в формах, возможно некоторые формы надо будет перенастроить.
- При переходе на новый релиз будут следующие изменения в таблицах перекодировок:
Для различных справочников на одном источнике и имеющим разные атрибуты идентификаторы будут генерироваться таблицы с новыми наименованиями, что повлечёт за собой создание новых таблиц и их заполнение, что означает для подобных справочников таблица перекодировки будет сгенерирована заново.
Пример старого наименования - dict_169012_id_mapping Пример нового наименования - dict_169012_guid_id_id_mapping
Чем грозит такое изменение? 1) Что сгенерированный целочисленный идентификатор для нецелочисленного идентификатора может не совпасть с таковым в старой таблице, поэтому если для таких справочников используются где-то отметки с перечислением целочисленных идентификаторов напрямую (т.е. не через условия), то они станут не корректными. 2) При переходе на старый релиз (до данного изменения) будет использоваться таблица со старым наименованием, что приведёт к до заполнению таблицы недостающими данными, что опять же повлечет за собой ситуация, что сгенерированный идентификатор может не совпадать с таковым в новой таблице.
В общем, ключевая проблема, в том что теперь будут таблицы перекодировки и с старым наименованием и новым, если есть новая будет использоваться новая, если есть старая и новая, то будет использоваться новая, если есть только старая, то будет использоваться она.
От старой таблицы мы не можем отказаться по нескольким причинам: 1) Мы не знает какой атрибут идентификатор и какого справочника был использован в качестве значение при генерации значений в таблице перекодировке, поэтому мы не можем просто взять и переложить данные в новую таблицу или поменять название старой таблицы на новое. 2) Старую таблицу нужно оставить для совместимости, что если вдруг будет откат версии платформы, то такие справочники хотя бы будут открываться, а не падать с ошибкой о том, что не могут найти старую таблицу (т.к. таблица создается при сохранении и появится, только при пересохранении справочника).
Новая функциональность
Отчёты
Предпросмотр документа
Добавлена функциональность предпросмотра документов типа .pdf. Для того, чтобы открылся предпросмотр следует нажать иконку в ячейке отчёта. Функциональность реализована и в пользовательском навигаторе.
Автоматическое добавление виртуального элемента в боковик
Сейчас виртуальный элемент добавляется по умолчанию в сложные структуры боковика. Это сделано во избежание того, чтобы дочерние элементы не скрывались под родительскими. Эта настройка также вынесена в отчёт.
Формы
Новый элемент. Вкладки(trv-tabset и trv-tab)
Реализован новый элемент Вкладки. Для вкладок появилась возможность задать условия отображения, которые позволяют скрывать как саму вкладку, так и вложенные в неё элементов. В названии вкладки можно задать отступы и иконку из Material Icons. Подробнее...
Новый элемент. Контекстное меню(trv-dropdown)
Реализован новый элемент Контекстное меню. Контекстное меню - элемент, который представляет собой некоторое количество выпадающих кнопок. Для того, чтобы задать выпадающие элементы, следует внутри компонента добавить Пункты меню. Также существует возможность добавить разделитель, для визуального отделения пунктов меню друг от друга.
"Автоматическая высота" для линейных диаграмм
Для диаграмм реализован флаг "Автоматическая высота", включение которого позволяет диаграмме отстраиваться самостоятельно без задания высоты. Отстраивается она по размеру и количеству баров.
Операнд для расчета ячейки отчёта
Добавлен операнд EntryExpressionPivotSourceCellValueParameter для рассчёта ячейки отчёта, где pivotSourceId - идентификатор отчета-источника данных, column - номер столбца, row - номер строки. Важно!!! Индексы строк и столбцов начинается с 0
1 {
2 "expression": "[1]",
3 "operands": [
4 {
5 "pivotSourceId": 1,
6 "column": 0,
7 "row": 2,
8 "discriminator": "EntryExpressionPivotSourceCellValueParameter",
9 "id": 1,
10 "allowMultipleValues": false
11 }
12 ],
13 "id": 1,
14 "name": "Выражение",
15 "code": null
16 }
Показатели
Согласование
Переход к любому состоянию для роли админа
Пользователь с ролью админ может перейти на любое состояние запущенного процесса. В конфигурационный файл добавлено свойство ProcessAdminRole, в котором следует указать роль админа.
Новый внешний источник для получения данных по процессу (дописать)
Для согласования добавлен источник ProcessStateV2, который отличается набором полей.
Добавлены подстановки для SubProcessNameTemplate
SubProcessName - наименование подпроцесса из модели родительского процесса
StateName - наименование текущего состояния подпроцесса.
Уведомления
Навигатор
Доработка реестра согласования
Доработан реестр согласования:
- Убраны кнопки "Остановить" и "Перезапустить",
- Добавлена кнопка удаления экземпляра процесса согласования,
- Добавлена кнопка "Обновить" с пунктами:
- "Обновить реестр" - полностью обновляет реестр процессов.
- "Обновить шаблон" - обновляет шаблон экземпляра процесса в соответствии с основной модельною объекта согласования.
- "Обновить данные по субъектам" - обновляет кэш субъектов экземпляра процесса.
Контекстное меню навигатора
Реализовано контекстное меню для левого дерева навигатора. Конеткстное меню позволяет
- Создать папку или объект в выделенной папке
- Свернуть или развернуть выделенную папку
- Добавить в обновлению папку и всё её содержимое
- Копировать ссылку на папку или её идентификатор
- Вырезать выделенную папку
- Вставить в выделенную папку объекты в буфере обмена
- Переименовтаь
- Открыть панель прав доступа
- Открыть панель свойств папки
- Удалить папку
Переключение локализации до авторизации на стенде
Теперь выбор локализации для работы с платформой можно произвести до авторизации.
Пользовательский навигатор
Индикатор уведомлений(пример)
Реализован индикатор уведомлений, который .... Для того, чтобы настроить индикацию в меню пользовательского навигатора нужно сделать следующую настройку:
MENU_ITEM_NOTIFICATION_BOOL_CSS - Оформление уведомления элемента меню (для флага, а не числа)
MENU_ITEM_NOTIFICATION_CSS - Оформление уведомления элемента меню
Аудит
Гранулярный аудит
Реализована возможность более гибко настраивать аудирование системы с помощью задания действий, которые нужно записывать. В конфигах в секции AuditSettings добавлено два новых параметра:
Enabled - логическое значение, определяющее, включен ли аудит,
Actions - массив элементов, задающий аудируемые действия.
Элемент массива Actions | Описание записываемых действий |
---|---|
None | Действия не записываются в аудит |
MetaObjectChanges | Изменение метаобъекта |
DictionaryDataSaved | Сохранение данных справочника |
DictionaryElementChanges | Изменение элемента справочника |
IndicatorDataSaved | Сохранение данных показателя |
IndicatorDataChanges | Изменение данных показателя |
CalculationExecutions | Расчёт методики |
PivotOpenings | Открытие отчёта |
DbStructureChanges | Изменение структуры базы данных |
UserOperations | Пользовательские операции |
SchedulerTaskExecutions | Выполнение запланированной задачи |
WorkflowStateChanges | Изменение состояния согласования |
WorkflowProcessesChanges | Изменение согласования |
All | Все действия |
DictionaryDataSaved | Сохранены данные справочника |
IndicatorDataSaved | Сохранены данные показателя |
По умолчанию аудируются только изменения метаобъектов и структуры согласований.
Общее
Новые функции
Добавлены новые функции в NCalc:
- Median() - вычисляет медиану набора чисел,
- AddMinutes() - добавление минут к дате,
- AddHours() - добавляет часы к дате,
- AddDays() - добавляет дни к дате,
- AddMonths() - добавляет месяцы к дате,
- AddYears() - добавляет годы к дате.
- CurrentLocale() - вычисляет текущую локаль.
Подробнее об их использовании и настройке можно прочитать здесь.
Конструкторы
Конструктор справочников
Настройка локализованных названий
Реализован вынос локализации наименований атрибутов в конструктор.
Конструктор форм
Полная локализация конструктора форм
Реализована локализация левой и правой панели настройки для всех элементов форм.