Ниже представлен список изменений, с которыми вы можете ознакомится уже сейчас, активировав демоверсию ELMA365.
После 16.06.2025 все изменения станут доступны нашим клиентам в их активных компаниях. Обратите внимание, список может быть расширен после релиза.
Пожалуйста, обращайте особое внимание на любые обновления, помеченные тегом #BreakingChangeAlert, так как они могут потребовать дополнительных действий с вашей стороны для адаптации или корректировки вашей текущей конфигурации.
Виджеты
TEAM-25311 Для виджета Кнопка добавлена опция Не активна, при включении которой кнопка будет отображаться на форме, но пользователи не смогут её нажать. Кроме того, можно настроить динамическую активность кнопки — задать условие, при котором пользователь сможет выполнить действие по её нажатию.
Приложения
1. TEAM-33631 Реализованы единые настройки видимости для кнопок действий:
- на странице приложения, в том числе и массовых операций с элементами;
- в карточках элементов.
Задать видимость можно на уровне групп пользователей с помощью опции Показывать в настройках кнопки. Доступ на выполнение действий по кнопке зависит от настроек прав, указанных для пользователя из группы.
Важные особенности:
- в настройках видимости учитываются созданные для пользователей замещения;
- для корректной работы приложения в другой компании группы, указанные в настройках кнопок, нужно включить в пакет экспорта;
- если группы не найдены в пакете импорта в другую компанию, они удаляются из настроек кнопки.
2. TEAM-33814 Появилась возможность безвозвратно удалять поля из контекста приложения. Перед удалением поля в настройках формы приложения вы сможете экспортировать хранящиеся в нём данные.
Пользователи и группы
1. TEAM-34939 Если в настройках компании включена авторизация по номеру телефона, пользователь может принять приглашение в компанию с помощью одноразового кода из SMS-сообщения, без установки пароля. Установить пароль можно позже через процедуру восстановления пароля.
Чтобы возможность стала доступна, в компании нужно активировать специальный фича-флаг. Для этого обратитесь в техподдержку ELMA365.
2. TEAM-35453 Для улучшения пользовательского опыта на странице Администрирование > Группы реализована быстрая загрузка данных. Теперь при открытии страницы показываются по 10 групп из каждого раздела. Чтобы отобразить остальные записи или вложенные группы, можно нажать Загрузить ещё.
Импорт/экспорт структур
1. TEAM-27249 Реализована поддержка версионности для приложения и раздела. Версии создаются при внесении изменений в настройки компонента, а также при его импорте или обновлении.
Возможность версионирования доступна после включения фича-флага allowVersionsSnapshots.
Отдельно сохраняются:
- версии приложения — при редактировании параметров на страницах: Настройка формы, Название элемента, Иерархический справочник, Поле Статус, Нумератор, Настройки подписи, Настройки архивации, Печатная форма;
- версии страниц приложения или раздела — обновлением страницы считается редактирование основных настроек компонента в окне Настройки Приложения или Настройки Раздела.
Список версий хранится в меню настроек компонента в окне История версий. Для приложения доступны отдельные вкладки: Приложение и Страница.
Доступные действия с версиями:
- восстановление предыдущей версии. Например, если после импорта возникла ошибка и нужно вернуться к старым настройкам;
- сравнение содержания предыдущей и текущей версий в формате JSON.
- выгрузка версии в файл формата .е365.
2. TEAM-35116 Для улучшения процесса экспорта и импорта решения файл формата package.json в его составе был отформатирован. Ранее файл передавался в однострочном формате, что приводило к выводу ложных изменений и конфликтам при импорте.
Бизнес-процессы
TEAM-34855 Добавлена возможность отслеживать выполненные пользователями массовые действия с экземплярами бизнес-процессов. Для этого в разделе Администрирование создана страница Массовые операции.
Доступ к странице включается с помощью фича-флага disableCreateBulkOperation.
Здесь хранится список операций, запущенных со страниц Монитор процессов или Монитор ошибок. В таблице указаны: название и тип действия, его статус и автор, а также даты запуска и завершения операции. Пользователи могут найти нужное действие на странице с помощью поиска по параметрам.
#BreakingChangeAlert
Документооборот
TEAM-21506 При загрузке нескольких файлов в поле типа Файлы добавлено отображение общего размера файлов и прогресса. Загруженные файлы показываются в виде списка, из которого можно удалить добавленный файл, нажав на значок корзины.
Проекты
1. TEAM-7434 В режиме редактирования плана проекта добавлена опция Показать ограничения. Используется при сдвиге сроков связанных задач. После включения опции на диаграмме отмечаются даты, дальше которых некорректно сдвигать связанные задачи, чтобы сохранить логику их взаимосвязи.
2. TEAM-35932 При работе с разделом Проекты добавлена проверка на наличие в компании лицензии решения ELMA365 Проекты. Если лицензии нет, пользователь увидит уведомление об этом, например, при попытке создать тип проекта.
Service
TEAM-25533 Для линий с подключённой электронной почтой реализован расширенный режим работы с сообщениями в сессиях.
Возможность выпущена в ознакомительной версии и включается с помощью фича-флага allowExtendedInboxMode. В последующих версиях системы расширенный режим будет доступен для всех поставок.
В данном режиме сообщения в сессиях отображаются с сохранением темы и получателя письма. Оператор может ответить на каждое сообщение в отдельности, тем самым создав цепочку писем.
При ответе открывается окно создания письма. Пользователь может указать в нём основных, вторичных и скрытых получателей письма, прикрепить вложения и внести текст, используя редактор. При этом назначенные получатели сохраняются, если к сессии подключается ELMA Bot или письмо отправляется в ходе бизнес-процесса с помощью специальных графических элементов.
Телефония
1. TEAM-34125 Добавлено отображение нескольких карточек звонка при входящих вызовах на одного пользователя. Теперь уведомления о звонках показываются в виде свёрнутых карточек внизу экрана. Пользователь может открыть карточку, принять звонок, прервать вызов или переназначить его на другого сотрудника.
2. TEAM-34405 Реализована возможность переназначить входящий или исходящий звонок на другого пользователя. Действие выполняется с помощью кнопки в карточке звонка. Опция доступна, если в модуле интеграции с провайдером телефонии поддерживается метод переназначения звонков.
3. TEAM-36561 В карточке звонка теперь отображаются все контакты, найденные в системе по определившемуся номеру телефона. Пользователь может выбрать запись из списка, перейти к контакту и связать звонок с нужным элементом.
CRM
1. TEAM-35520 В мобильное приложение ELMA365 добавлена возможность отображать список записей в разделе Задачи > Задачи CRM в виде таблицы и канбан-доски. Для табличного отображения реализованы вкладки-фильтры: Просроченные, Текущие, Завершенные, Все.
2. TEAM-35521 В разделе Задачи > Задачи CRM добавлен вид отображения Список задач. Он позволяет просматривать задачи с перечнем исполнителей, назначенные на определённое время в течение дня, недели или месяца.
TS SDK и API
1. TEAM-31234 Начиная с версии 2025.5 в скриптах закрыт доступ к внутренним полям системных структур. В связи с этим убраны методы, с помощью которых к ним можно было обращаться: (System as any).factory и getFactory.
#BreakingChangeAlert
2. TEAM-32120 Добавлено сохранение в кэш схем исполнения серверных скриптов, что позволяет уменьшить серверное время выполнения скриптов. В поставках On-premises, на больших конфигурациях от 1 000 элементов приложений или экземпляров процессов прирост может достигать 90%.
3. TEAM-35789 Внесены изменения в метод для сложения значений в переменных типа Деньги:
- метод add() отмечен как устаревший из-за выявленных проблем;
- добавлен новый метод, который гарантирует точность и проверяет совпадение валют — addm(money: TMoney<C | 'XXX'>): TMoney<C>:
Код:
// Перед выполнением операции проверяется совпадение валют для предотвращения ошибки округления.
// Если валюты различаются, операция не выполнится и будет возвращена ошибка.
// Пример:
```typescript
const a = new Money(100.25, 'RUB');
const b = new Money(200.75, 'RUB');
const result = a.addm(b); // 301.00 RUB
```
@throws Error — Если валюты не совпадают.
// Известные проблемы при использовании устаревшего метода add():
- потеря точности при работе с дробными значениями.
- возможна ошибка округления, например, при суммировании:
```typescript
new Money(0.0, 'RUB')
.add(new Money(49941947.50, 'RUB'))
.add(new Money(70472042.00, 'RUB'))
.add(new Money(24552195.08, 'RUB'))
.add(new Money(19034739.10, 'RUB'))
.add(new Money(17737647.61, 'RUB'))
```
// Результат: `181 738 571,27`, Ожидаемый результат: `181 738 571,29`.
// Подробнее читайте в официальной справке ELMA365 — https://elma365.com/ru/help/platform/js-imprecise-calculations.html.
#BreakingChangeAlert
4. TEAM-29457 Добавлен метод для массового скачивания из элемента приложения файлов формата .cms с присоединённой подписью пользователя — createCMSFile.
Пример использования:
Код:
// Запросить элемент приложения из поля в контексте
const app = await Context.data.app?.fetch();
const signHistory = await app?.getSignHistory();
// для аттрибутов заменить на SignType.Attributes
const entity = signHistory?.find(s => s.type === SignType.File);
if (!entity) {
throw new Error('Подпись файла не найдена');
}
const signID = entity.signs[0].__id;
const sign = await System.signs.entitySigns.search().where(q => q.__id.eq(signID)).first();
if (!sign) {
throw new Error('Подписи с таким идентификатором не существует');
}
const file = await sign.createCMSFile();
if (!file) {
Context.data.res = 'no file'
return
}
const url = await file.getDownloadUrl();
// Сохранить в переменную контекста URL для скачивания файла, который соответсвует файлу полученному из архива подписей
Context.data.res = url
5. TEAM-35167 Улучшены методы для работы с задачами в календарном плане проекта. Теперь в скрипте необязательно указывать порядковый номер задачи в поле __gantt_order. Если значение не заполнено, задаче присваивается следующий по порядку номер. Кроме того, в поле _description теперь можно вносить изменения.