1.29

1.29

1.29.0-ms3 от 26.10.26

1.29.0-ms3
Добавлено:
  1. Добавить ссылку на образ решения в контекст образа прикладного решения 323920T

    В прикладной контекст образа решения добавлена ссылка на образ решения. Добавлен метод ru.bitec.gtk.core.sbt.CoreSolutionImageContext.solutionImage_$eq(CoreSolutionImage)

  2. Предупреждать в логе сервера о неработающих фильтрах EvaluatorFilter 331428T

    Если в конфигурации логирования остались неработающие фильтры EvaluatorFilter

    с выражениями Janino, сервер пишет в лог предупреждение с перечнем аппендеров

    Правка перенесена из 1.27.6

  3. Добавить параметр onboardingEnabled для управления показом туров онбординга

    Добавлен параметр конфигурации сервера Configuration.Client.Ui.onboardingEnabled (по умолчанию true), управляющий показом обучающих туров онбординга нового функционала.

  4. Добавить механизм онбординга и анонс контрола вызова Навигационного хаба

    Добавлен анонс контрола вызова Навигационного хаба: при первом входе интерфейс затемняется, кнопка вызова Хаба подсвечивается и рядом показывается карточка-подсказка; анонс показывается один раз на пользователя, сброс доступен в отладочном меню.

  5. Создать корневой компонент Навигационного хаба 276276T

    Добавлен Навигационный хаб — окно для поиска и быстрого доступа к разделам, командам и закреплённым элементам.

  6. Задать WorkSessionCtx для текущего потока на время вызова методов CoreAuthProvider

    Добавлена возможность создания прикладной Session в методах экземпляра CoreAuthProvider. Сервер приложений, перед вызовом методов CoreAuthProvider устанавливает в поток ссылку на WorkSessionCtx, созданный для пользователя sys. Прикладной код может получить ссылку на WorkSessionCtx через вызов CoreWorkSessionContext$MODULE$#getThreadContext.

  7. Добавить управление скрытием наименования операции из прикладного кода 332874T

    Добавлена возможность скрывать и показывать наименование операции на кнопке

    панели инструментов из прикладного кода без переоткрытия формы — свойство

    CoreOper.isHideCaption().

    Размножаемые операции наследуют HideCaption клонирующей операции,

    см. Свойства операции.

  8. Реализовать восстановление текущей записи после обновления по ключевому атрибуту keyAttr 333072T

    Добавлено свойство выборки keyAttr — ключевой атрибут строки, по которому после обновления

    восстанавливается текущая запись и сопоставляются строки при точечном обновлении. Позволяет сохранять

    позицию в выборках без атрибутов ID, GIDREF, GID. Если keyAttr не задан, ключом служит первый найденный из

    атрибутов ID, GIDREF, GID; этот порядок теперь един для восстановления позиции, точечного обновления строк

    (mergeItems) и режима высокой ёмкости, где раньше первым брался GIDREF. Если ключевого атрибута нет,

    показывается уведомление.

    Правка перенесена из 1.28.0-rc8

  9. Дополнить библиотеку для тестов пользовательских настроек списка

    В библиотеку gs-automation добавлено чтение заголовка текущей пользовательской

    настройки списка из контекстного меню грида.

  10. Добавить прикладной API применения пользовательских настроек списка 330258T

    Добавлен прикладной API применения пользовательских настроек списка

    (CoreGridView.userSettings(),

    ru.bitec.gtk.core.gl.view.CoreGridUserSettings): настройку можно применить из операции

    без переоткрытия формы, подробнее — API. Прикладному коду API

    станет доступен с выходом Scala-обёртки GridView.userSettings в модуле gtk.

    Переактивация источника данных (обновление в режиме closeOpen, смена записи мастера) повторно

    применяет последнюю применённую настройку, а не умолчание, и не откатывает правки колонок, сделанные

    пользователем, см. Настройки пользователя.

  11. Добавить предупреждение об ограничении точности при экспорте в XLS/XLSX

    При экспорте грида и формировании Excel-отчётов выводится предупреждение о возможном округлении значений, содержащих более 15 значащих цифр, из-за ограничений точности XLS/XLSX.

    Правка перенесена из 1.28.0-rc6

  12. Дополнить библиотеку для тестов транспонированного грида

    В библиотеку gs-automation добавлены проверка доступности пункта меню, стандартные тексты диалогов, ожидание значения ячейки и состояния чекбокса, получение ячейки по абсолютному номеру строки и поиск строк в области видимости.

  13. Дополнить библиотеку для тестов транспонированного грида

    В библиотеку gs-automation добавлены проверка доступности пункта меню, стандартные тексты диалогов, ожидание значения ячейки и состояния чекбокса, получение ячейки по абсолютному номеру строки и поиск строк в области видимости.

  14. Разметить доступность пункта контекстного меню грида для автоматизации

    Пункты контекстного меню грида размечены признаком доступности для автотестов gs-automation.

  15. Обновить палитру цветов

    Цветовая палитра интерфейса приведена к обновлённому руководству по дизайну.

  16. Внести изменения в компонент Tooltip

    Всплывающие подсказки в обновленных частях интерфейса приведены к обновлённому стилю.

  17. Добавить кнопку «Загрузить все» на панель загрузки 324764T

    При неполной загрузке в панели грида доступна кнопка «Загрузить все».

    Правка перенесена из 1.28.0-rc5

  18. Изменить отображение панели состояния загрузки грида 324764T

    Обновлена панель состояния загрузки грида: сообщения отображаются снизу на всю ширину и не перекрывают данные.

    Правка перенесена из 1.28.0-rc5

  19. Добавить свойство конфигурации, управляющее активностью встроенного SSH-сервера 325620T

    Добавлено свойство конфигурации Configuration.Ssh.enabled , управляющее активностью запуска встроенного ssh-сервера при старте сервера приложений

  20. Вернуть исходный порядок кнопок в диалоговых окнах 327624T

    В диалоговых окнах восстановлен заданный порядок кнопок: фокусная кнопка больше не переносится автоматически в крайнюю правую позицию. Параметр focusButtonNumber по-прежнему определяет кнопку, которая получает фокус, но больше не влияет на её расположение.

    Правка перенесена из 1.28.0-rc5

Исправлено:
  1. Реализовать пересоздание дочернего узла по актуальному типу редактора 313968T

    Исправлена актуализация представления редактора в карточке при динамическом изменении его типа.

  2. Восстановить фильтрацию консоли сервера в конфигурации логирования сессий 331428T

    Исправлен вывод в консоль сервера логов операций, скриптов и текста SQL, включённых для консоли браузера

    в карточке «Настройки логирования». Ошибка проявлялась начиная с версии 1.27.0.

    При обновлении сервера каталог application/config не перезаписывается: в существующих установках

    обновите logback-LoggerContext-session.xml по образцу из дистрибутива

    Правка перенесена из 1.27.6

  3. Исправить протокол OTLP-экспортёра в конфигурации телеметрии по умолчанию 331428T

    В конфигурации телеметрии по умолчанию исправлен протокол экспорта OTLP:

    для порта 4318 указан http/protobuf вместо grpc

    Правка перенесена из 1.27.6

  4. Исправить ошибку получения el.ClientSession вследствие перезагрузки кода решения 335250T

    Исправлена ошибка NullPointerException при открытии gtk-сессии

    (SessionImpl.clientSession() is null) во время перезагрузки кода решения, например,

    при построении отчётов в фоновом задании.

    Правка перенесена из 1.27.5

  5. Помечать прежний образ решения устаревшим до снятия блокировки при перезагрузке кода 335250T

    Исправлена ошибка «CoreSessionPool by class loader … not found»

    при открытии и закрытии gtk-сессий во время перезагрузки кода решения.

    Правка перенесена из 1.27.5

  6. Исправить срабатывание горячих клавиш при фокусе в iframe

    Исправлена работа горячих клавиш, когда фокус находится внутри встроенного HTML-документа (iframe), например в окне приветствия.

  7. Вернуть платформенные модули Smack для создания XMPP-соединения 335140T

    Исправлена ошибка подключения службы оповещений к XMPP-серверу: при создании

    соединения в лог добавлялось исключение NullPointerException.

  8. Раскладывать flex-контейнер по метаданным детей, а не по их стилям 314666T

    Исправлена раскладка элементов flex-композера при изменении размера окна: элементы больше не оставляют пустое место при увеличении и не выходят за границы контейнера при уменьшении, а сохранённые пользователем размеры распределяются по весам flex, как в CSS. Элемент без атрибута flex теперь получает значение “1”, а базис auto считается нулевым, поэтому пропорции форм без flex и форм с сохранёнными размерами могут отличаться от прежних.

    Правка перенесена из 1.28.0-rc8

  9. Установить имя выборки в контекст формы до открытия gtk-сессии 332190T

    Исправлена передача имени открываемой выборки (WorkSessionCtx.Ct.SELECTION_NAME)

    в прикладной код при открытии gtk-сессии формы: в аудите пользователя снова заполняется

    список открытых форм.

    Правка перенесена из 1.27.4

  10. Адаптировать YandexDriver к Selenium 4.49.0

    Исправлен запуск автоматизированных тестов в Яндекс Браузере после обновления Selenium.

  11. Устранить гонку обновления cookie при выходе 333166T

    Исправлена ошибка выхода из приложения при одновременном удалении записи пользователя из кэша аутентификации.

  12. Устранить пустое место при удалении записей в конце списка 322722T

    После удаления строк список больше не оставляет пустого

места внизу: оставшиеся записи подтягиваются снизу сразу, без прокрутки,

а недостающие подгружаются с сервера.

Правка перенесена из 1.28.0-rc6

  1. Устранить гонку передачи типов коллекций изображений 318204T

    Исправлена ошибка ThereIsNoTypeForImageCollection при открытии приложения под нагрузкой из-за передачи приложения раньше типов коллекций изображений.

  2. Исправить изменение высоты фреймов 318220D

    Исправлено изменение высоты фреймов: разделитель корректно

    останавливается на минимальной границе и сохраняет установленное положение.

    Правка перенесена из 1.28.0-rc6

  3. Исправить пропадание вкладок неактивных MDI-форм на клиенте 330492T

    Исправлено пропадание вкладок форм: при открытии нескольких форм за одно действие и после восстановления соединения с сервером на клиенте была видна только часть вкладок.

    Правка перенесена из 1.28.0-rc6

  4. Учесть настройки Currency в настраиваемом фильтре

    Исправлено количество знаков после запятой в настраиваемом фильтре Currency: оно теперь соответствует настройке исходного столбца.

    Правка перенесена из 1.28.0-rc6

  5. Исправить потерю точности значений Currency 306540T

    Для Currency устранена потеря точности при работе с большими значениями и большим количеством знаков после запятой. Режим повышенной точности включён по умолчанию и при необходимости может быть отключён параметром useBigDecimal.

    Правка перенесена из 1.28.0-rc6

  6. Исправить некорректную установку ширины колонок грида после ресайзинга 326924T

    Исправлена некорректная установка ширины колонок грида после ресайзинга, если они располагаются по правой границе одной банд-группы.

  7. Исправить сброс флага «Восстанавливать изменения в интерфейсе при переоткрытии» после переоткрытия интерфейса 331030T

    Исправлен сброс флага «Восстанавливать изменения в интерфейсе при переоткрытии»

    после переоткрытия интерфейса: флаг сохраняется отдельно для каждого интерфейса и грида,

    детальные гриды и другие интерфейсы его не перезаписывают. Ширина дерева и масштаб диаграммы

    Ганта также сохраняются отдельно для каждого интерфейса.

    Правка перенесена из 1.28.0-rc6

  8. Восстановить отображение клавиатурной фокусной обводки у React-компонентов при монтировании в GWT

    Восстановлена обводка фокуса при навигации с клавиатуры в модальных окнах обновленного интерфейса.

  9. Устранить блик React модального окна при монтировании через GWT

    Устранена кратковременная вспышка в левом верхнем углу экрана при открытии модальных окон обновленного интерфейса.

  10. Исправить игнорирование новых параметров динамических деталей при обновлении выборки-источника 328844T

    Исправлено игнорирование новых значений параметров динамических деталей и закладок

    при обновлении выборки-источника, когда имя выборки, представление и имя детали не изменились.

    Правка перенесена из 1.28.0-rc6

  11. Исправить ошибку вызова clientSetSelfVar в нередактируемой выборке 329120T

    Исправлена ошибка при вызове selection.clientSetSelfVar в выборке, недоступной для

    редактирования (isEditable = false). Метод устанавливает значение атрибута без вызова сеттера

    независимо от редактируемости выборки и сам завершает редактирование записи, если до вызова

    она не редактировалась. В выборке только для чтения (isReadOnly = true) запись по-прежнему запрещена.

    Правка перенесена из 1.28.0-rc6

  12. Освобождать незавершённую сессию редактирования грида

    Исправлены отмена зависшего Lookup-редактирования по Escape и очистка сессии при закрытии грида.

  13. Привязать Lookup-ответ к сессии редактирования ячейки

    Исправлено применение устаревшего ответа Lookup-редактора к другой сессии редактирования грида.

  14. Исправить клавиатурное редактирование checkbox в гриде

    Исправлены переключение checkbox клавишей Enter и продолжение редактирования при навигации по гриду.

  15. Ограничить реплей навигационного autorepeat в гриде

    Исправлено продолжение навигации по гриду после отпускания клавиши.

  16. Сохранить режим редактирования при вертикальной навигации в гриде

    Исправлено сохранение режима редактирования при перемещении вверх и вниз между ячейками табличного представления.

  17. Синхронизировать завершение редактирования с переключением колонки

    Исправлено сохранение значения при переходе кликом из редактируемой ячейки грида.

  18. Сделать завершение inline-редактирования реентерабельно безопасным

    Исправлено завершение inline-редактирования при синхронном запуске следующей ячейки.

  19. Защитить очередь и отложенный запуск редактора грида

    Исправлена обработка быстрых переходов и отложенного запуска inline-редактора грида.

  20. Исправить перенос pending-редактирования грида

    Исправлено восстановление ожидающего inline-редактирования после обновления грида.

  21. Исправить пропадание названия колонки в области группировки 321382D

    Исправлено пропадание названия колонки в области группировки грида.

    Правка перенесена из 1.28.0-rc5

  22. Исправить отображение состояния unset в чекбоксах 327234T

    В гридах и карточках чекбоксы со значением null отображаются в состоянии unset, а не как unchecked.

    Правка перенесена из 1.28.0-rc5

  23. Исправить типографику вкладок в компактном режиме

    Улучшена читаемость вкладок и закладок в компактном режиме.

  24. Исправить типографику контекстных меню в компактном режиме

    Улучшена читаемость контекстных меню в компактном режиме.

Изменено:
  1. Удалить неиспользуемую зависимость janino 331428T

    Из дистрибутива сервера приложений исключены библиотеки janino и commons-compiler:

    logback не использует их начиная с версии 1.5.13

  2. Включить инструментирование в конфигурации телеметрии по умолчанию 331428T

    Для включения телеметрии с конфигурацией по умолчанию достаточно установить

    disabled: false в otel-sdk.config.yaml

    Правка перенесена из 1.27.6

  3. Писать в файл логи сессий и прикладной бизнес-логики 331428T

    В настройках логирования по умолчанию в файлы пишутся логи сессий (*.session.log)

    и прикладной бизнес-логики (*.application.log) с указанием пользователя,

    лог сервера приложений пишется в *.system.log

    Правка перенесена из 1.27.6

  4. Увеличить время хранения кеша изображений до суток в конфигурации по умолчанию 334592T

    В конфигурации Сервера Приложений, заданной по умолчанию, увеличено время хранения кеша изображений до 24 часов

    Правка перенесена из 1.27.6

  5. Включить запись логов в файл в дефолтные настройки 331428T

    В настройках логирования по умолчанию включена запись логов в файл

    Правка перенесена из 1.27.6

  6. Обновить Smack до версии 4.5.0 335140T

    Обновлена библиотека Smack, через которую служба оповещений работает по протоколу XMPP.

  7. Добавить исключение Configurator из дистрибутива AS начиная с версии 1.27.4 327608T

    Из дистрибутива GlobalServer удалено приложение Конфигуратор, начиная с версии 1.27.4 включительно

  8. Обновить зависимости для view 313770T

    Осуществлено обновление зависимостей во всех npm проектах внутри AS, что позволило закрыть ряд уязвимостей, связанных с безопасностью.

    Правка перенесена из 1.28.0-rc6

  9. Убрать флаг “Конфигуратор” из клиентской части окна логина

    Из окна входа в систему убран чекбокс “Конфигуратор” — запуск конфигуратора через основной сервер приложений больше не поддерживается.

  10. Сделать включение Configurator в сборку дистрибутива условным по версии 327608T

    Из дистрибутива GlobalServer убрано приложение Конфигуратор

  11. Перенести ssh-сервер из модуля webserver в модуль engine 325620T

    Перенесён код webserver/services/ssh в engine/sshd.

1.29.0-ms2 от 21.09.26

1.29.0-ms2
Добавлено:
  1. Объединить отчёты JUnit в один xml до формирования Test summary в GitLab CI

    В GitLab CI junit-отчёты всех модулей объединяются в один файл перед

публикацией артефактов, а запись stdout и stderr тестов в junit-xml отключена. Test summary в

merge request’е строится заметно быстрее, вывод тестов остаётся доступен в логе job и в

html-отчёте.

  1. Отключать автоматически цвето-анимацию DOM при выполнении в GitLab CI

    В библиотеке gs-automation цвето-анимационная индикация действий

(dom.colorizable) автоматически отключается при выполнении автотестов в pipeline GitLab CI.

Признак pipeline – переменная окружения GITLAB_CI. Включить индикацию в pipeline можно явно:

переменной GSAUTO_DOM_COLORIZABLE или аргументом -Dgsauto.dom.colorizable.

  1. Заменить ожидание стабилизации dom-модели динамическими ожиданиями

    В библиотеке gs-automation ожидание стабилизации dom-модели заменено

динамическими ожиданиями готовности конкретного элемента: действие выполняется сразу, как

только элемент присутствует в dom-модели, видим, перестал перемещаться, не перекрыт маской

длительной операции и доступен. Добавлены Actionability, WebDriverHelper.retryingUntil,

waitActionable, clickRetrying, waitFocused, Grid.waitFullLoaded и Grid.waitEditable. Методы

WebDriverHelper.waitForDomStability, WebDriverHelper.waitUntilMaskDisappears и параметр

duration.dom.stability удалены.

Исправлено:
  1. Исправить ожидание фактического ухода фокуса в clickToResetFocus

    В библиотеке gs-automation метод clickToResetFocus теперь дожидается

фактического ухода фокуса ввода из редактора: ранее одиночного клика не хватало, если редактор

возвращал себе фокус отложенной командой, и введённое значение оставалось незакоммиченным.

  1. Заменить бесполезное предупреждение о закладке без имени выборки 317010T

    Предупреждение о закладке без имени выборки теперь содержит выборку, форму, режим и значения полей проблемных записей и печатается одним сообщением на построение панели.

    Правка перенесена из 1.28.0-rc5

Изменено:
  1. Обновить numbertostr до версии 1.2 327480T

    Исправлена пропись дробной части числа в печатных формах: вместо дробных

    разрядов печатался мусорный знаменатель, разделитель стоял в мужском роде, а у чисел

    по модулю меньше единицы пропадала целая часть. Библиотека прописи обновлена до версии 1.2.

    Правка перенесена из 1.28.0-rc5

1.29.0-ms1 от 18.09.26

1.29.0-ms1
Добавлено:
  1. Реализовать отображение blob-изображений в ячейках табличного представления 285952T

    Реализована возможность отображения в табличном представлении изображений, получаемых из файлового хранилища сервера. Более подробная информация содержится в спецификации изображений из файлового хранилища сервера.

  2. Добавить метод MsgDialog.text() получения текста сообщения диалога 322934T

    В библиотеку gs-automation добавлен метод MsgDialog.text(), возвращающий текст сообщения диалога с инкапсулированным ожиданием видимости.

  3. Добавить группировку SQL-запросов в консоли браузера 312518T

    SQL-запросы в консоли браузера группируются пачками по выборкам и категориям с именем SQL-блока, а упавшие запросы выводятся красной строкой с текстом ошибки СУБД.

  4. Добавить группировку операций в консоли браузера 312518T

    Операции в консоли браузера выводятся сворачиваемыми группами с бейджем OPER, длительностью выполнения и текстом ошибки при сбое.

  5. Переработать выбор уровней в карточке «Настройки логирования» 312518T

    В карточке «Настройки логирования» у каждого тумблера отображается и выбирается свой уровень логирования из набора уровней канала, а состояние каналов восстанавливается при повторном открытии карточки.

  6. Открыть внешнему агенту чтение выборок по протоколу MCP

    Добавлен встроенный MCP-сервер только на чтение: эндпоинт /app/sys/rest/es/mcp (Streamable HTTP, JSON-RPC 2.0) даёт внешнему агенту десять инструментов — поиск выборок, их метаданные, операции, атрибуты и поля фильтра, открытие выборки с правами пользователя и постраничное чтение строк. Перечень доступных выборок задаётся серверной секцией конфигурации <mcp>, число сессий на пользователя и открытых выборок на сессию ограничено; поддерживаются решения на PostgreSQL.

  7. Реализовать метод CoreApplication#getMdiForms 323236T

    Добавлен метод ru.bitec.gtk.core.gl.CoreApplication.getMdiForms().

  8. Добавить операции над веткой дерева в интерфейс древовидного списка 319236T

    В контекстное меню древовидного списка добавлены пункты «Развернуть всю

ветку» и «Свернуть всю ветку», действующие на поддерево текущего узла. В отличие от пунктов

«Развернуть/Свернуть все дерево», они доступны и на частично загружаемом, и на рекурсивном

(курсорном) дереве: потомки каждого узла ветки дозагружаются запросами к базе данных. Перед

раскрытием ветки на таком дереве выводится запрос подтверждения. Ранее горячая клавиша

«Развернуть ветку текущего узла» (HK_TREE_OPEN_CURRENT_SUBNODE) на таких деревьях раскрывала

только один уровень вложенности — теперь раскрывается вся ветка. Добавлена горячая клавиша

«Свернуть ветку текущего узла» (HK_TREE_CLOSE_CURRENT_SUBNODE) с сочетанием по умолчанию

Ctrl+Alt+-. Более подробная информация содержится в описании операций

разворачивания ветки и

сворачивания ветки, а также в

справке по горячим клавишам.

  1. Добавить перенос описания операции в размножаемые операции 321978T

    У операций, созданных клонирующим запросом, во всплывающей

    подсказке теперь отображается описание: из поля sDescription запроса,

    а если оно не задано — описание клонирующей операции.

    Правка перенесена из 1.28.0-rc3

  2. Добавить вывод описания операции во всплывающей подсказке кнопки тулбара 321978T

    Во всплывающей подсказке кнопки тулбара теперь

    отображается описание операции (description из @Oper), если оно задано;

    иначе, как раньше, показывается название операции.

    Правка перенесена из 1.28.0-rc3

  3. Добавить нормализацию ввода в автофильтре и inline-редактировании грида

    Добавлена нормализация пробельных символов пользовательского ввода в строковых

полях. Свойство редактора trimValue (edit,

memo,

buttonsEdit,

editButton,

hyperLink)

включает нормализацию в карточке и строке списка, свойство фильтра

trimAttrValues задаёт умолчание для атрибутов

фильтра, настройка приложения

trimFilterInput — умолчание

для полей фильтров и автофильтра грида (по умолчанию включена). Значение обрезается по краям,

ставшее пустым приводится к NULL, пустое обязательное поле штатно подсвечивается; в автофильтре

грида ввод из одних пробелов условие не подставляет.

Исправлено:
  1. Определять встроенность SysApplication по git-дереву, а не по диску

    Определение встроенности проекта SysApplication больше не зависит от случайных файлов, оставшихся в рабочей копии CI от сборки другой ветки.

  2. Исправить попадание значений показателей в чужие колонки при экспорте грида в Excel 325728T

    Исправлено попадание значений показателей в чужие колонки при экспорте грида в Excel.

    Ошибка проявлялась, когда колонки грида разложены по нескольким рядам внутри группы колонок, — например

    в универсальном отчёте, построенном по нескольким видам учёта.

    Правка перенесена из 1.27.3

  3. Исправить засорение лога сообщением о ненастроенном выпадающем списке 326694T

    Сообщение о незаданных свойствах выпадающего списка больше не пишется в лог для атрибутов, у которых список не настраивался, для скрытых атрибутов и для атрибутов с типом редактора, вычисляемым в рантайме. Для видимого атрибута с наполовину сделанной настройкой, когда задан запрос списка, но не заданы отображаемые поля, выводится предупреждение уровня WARN. При обращении к ненастроенному списку сервер сообщает выборку, атрибут и перечень незаданных свойств редактора вместо NullPointerException.

    Правка перенесена из 1.28.0-rc4

  4. Исправить игнорирование прикладной выборки при выборе версии печатной формы на БД Oracle 326804T

    На БД Oracle версия печатной формы выбирается прикладной выборкой SEL_RPT_ReportVersion

    (представление VersionAtDate). Раньше метод БД, выбирающий версию, вызывал сам сервер приложений, а он

    знал и передавал только два аргумента — имя отчёта и дату, — поэтому аргументы, добавленные в решении,

    в выборе версии не участвовали. Теперь метод БД вызывает прикладная выборка, поэтому расширить состав

    аргументов или изменить правила выбора версии можно силами решения, без доработки сервера приложений.

    Правка перенесена из 1.28.0-rc4

  5. Исправить проверку доступа к прикладным пакетам из SDW 318602T

    Убрана проверка прав на прикладные пакеты из модуля SDW.

  6. Очистить java.util.ResourceBundle от ссылок на прикладные загрузчики 319302T

    Устранены причины, мешавшие выгрузке из памяти прикладных загрузчиков классов после перезагрузки кода образа решения.

  7. Добавить копирование *.md5 файлов при копировании образа решения 317450T

    Добавлено копирование *.md5 файлов при копировании образа решения в рабочий каталог. Содержимое файла solution.md из корневого каталога образа решения возвращается в результатах методов ru.bitec.gtk.core.gl.cluster.CoreClusterNodeManager.getClusterNodesAsJsonString() и ru.bitec.gtk.core.gl.cluster.CoreClusterNodeManager.getClusterNodeAsJsonString(String).

  8. Синхронизировать список выделенных записей карточного фрейма с текущей записью 324548T

    В карточном фрейме selectedRecordsCount() и selectedValue() теперь всегда соответствуют текущей записи (1 при наличии записи, 0 на пустой выборке), независимо от свойства isMultiSelect и порядка обновления/скролла.

    Правка перенесена из 1.28.0-rc4

  9. Восстановить поведение метода CoreApplicationImpl#eventBus. Проблема ——— При вызове CoreApplication#eventBus в создание экземпляра CoreEventBus всегда передавалась главная выборка приложения, из-за чего при попытке вызова метода handleEvents на события afterScroll и beforeScroll метод не видел event.representation 324184T

    Восстановлено поведение вызова application.eventbus.post(“Topic”,”Event”). Начиная с версии AS 1.26.0-ms18 метод отсылал BusEvent, источником которого становилась главная выборка приложения. Восстановлена исходная логика, в которой источником BusEvent является выборка, в коде которой получен объект application.

  10. Устранить пропадание значений tagLookup после обновления выборки 323608T

    Исправлено пропадание выбранных значений tagLookup после обновления выборки со свёрнутой панелью фильтров.

    Правка перенесена из 1.28.0-rc3

  11. Передавать параметры заданий Jenkins через окружение

    Значения параметров заданий сборки больше не подставляются в текст shell-команды.

  12. Передавать доменные учетные данные через переменные окружения

    Доменные логин и пароль передаются заданиям сборки через переменные окружения, а не аргументами командной строки.

  13. Убрать канал «Скрипт» из карточки логирования в PostgreSql решениях 312518T

    В PostgreSql решениях карточка «Настройки логирования» больше не показывает канал «Скрипт», не дающий вывода.

  14. Исправить позиционирование scrollbar в grid после обновления (F5)

    Исправлено положение вертикальной полосы прокрутки в гриде после обновления страницы (F5).

    Правка перенесена из 1.28.0-rc3

  15. Исправить перемешивание строк в древовидном grid 304517T

    Исправлено перемешивание и дублирование строк в древовидном гриде после сворачивания, разворачивания и прокрутки.

    Правка перенесена из 1.28.0-rc3

  16. Починить закрытие занятых REST-сессий и захват закрывающихся

    Исправлено закрытие REST-сессий, занятых выполнением запроса: команда закрытия сессии администратором больше не завершается молчаливым отказом, а выполняется сразу после того, как запрос отпустит сессию. Обращение к закрывающейся сессии теперь возвращает 404 вместо внутренней ошибки сервера.

  17. Исправить потерю контекста операции в host-функциях скриптов 315996T

    Устранена ошибка, из-за которой обращение к функции контекста операции в квадратных скобках (например, Libs[‘ИМЯ’]) внутри вложенной процедуры паскаль-скрипта завершалось ошибкой вместо выполнения.

    Правка перенесена из 1.28.0-rc3

  18. Исправить распознавание клавиш «-» и «=» основного ряда в горячих клавишах

    Горячие клавиши с клавишами «-» и «=» основного ряда клавиатуры теперь

срабатывают: ранее их распознавание работало только для одноимённых клавиш дополнительной

клавиатуры. Затронуты все настроенные сочетания с этими клавишами, в том числе «Развернуть

текущий узел дерева», «Закрыть текущую ветку дерева» и «Развернуть ветку текущего узла».

  1. Починить закрытие простаивающих REST-сессий по таймауту

    Исправлено закрытие REST-сессий по таймауту: простаивающие просроченные сессии не закрывались вовсе и удерживали ресурсы сервера — прикладное решение и соединения с базой — до его перезапуска, тогда как закрывались, наоборот, занятые.

  2. Исправить обработку полей с датой и блобом при экспорте в Access

    Исправлен экспорт списка в формат Access: списки со столбцами дат

    и двоичных данных выгружаются, а не завершаются ошибкой создания столбцов.

  3. Добавить создание целевого каталога выгрузки при экспорте в Access

    Исправлен экспорт списка в формат Access, который не работал на инсталляциях,

    где каталог временных файлов выгрузки ещё не создан: теперь экспортёр создаёт его сам.

  4. Добавить освобождение ресурсов при ошибке экспорта в Access

    Исправлено накопление временных файлов после неудачного экспорта списка

    в формат Access: файл выгрузки теперь удаляется и при ошибке.

  5. Исправить обрыв экспорта в Access на дробных значениях BigDecimal

    Исправлен экспорт в формат Access списков, у которых числовой столбец объявлен

    типом BigDecimal: раньше дробное значение в таком столбце прерывало выгрузку. Количество знаков

    после запятой подбирается по данным списка, а значения, не помещающиеся в разрядность Access,

    округляются.

  6. Включить isCanEditText и setEditButtonEnabled в гридах

    Свойства «Разрешить ввод текста» и доступность кнопок редактора теперь действуют в списках, а не только в карточках.

    Правка перенесена из 1.28.0-rc2

  7. Устранить схлопывание текста в ячейках табличного представления 314930T

    Устранена проблема, которая приводила к схлопыванию текста в ячейках табличного представления.

    Правка перенесена из 1.27.1

  8. Исправить переоткрытие браузера сессий при смене пароля и сервера

    Исправлено переоткрытие браузера сессий после смены пароля или сервера.

  9. Исправить поведение ресайзинга элементов FlexBoxLayoutContainer 311094T

    Исправлено поведение ресайзинга дочерних элементов Flex-компоновщика в случае, если у него имеются элементы с фиксированными размерами.

    Правка перенесена из 1.28.0-rc1

Изменено:
  1. Обновить jackcess до версии 4.0.11 и заменить commons-lang 2.0 на commons-lang3

    Обновлены библиотеки зависимостей для экспорта данных выборки в Access

  2. Обновить версию конфигурации прикладных библиотек 318486T

    Обновлена версия конфигурации прикладных библиотек для sysapplication (commonLibConfigVersion: 2)

    Правка перенесена из 1.28.0-rc2

  3. Изменить gtk-шлюз выполнения Jexl-скриптов и добавить информацию об источнике скрипта 316822T

    Изменён gtk-шлюз выполнения Jexl-скриптов. Вместо методов: “ru.bitec.app.gtk.jexl.session.Gtk_JexlPkg$.jexlScript.eval”, “ru.bitec.app.gtk.jexl.gl.Gtk_JexlLib$.jexlScript.eval” вызываются: “ru.bitec.app.gtk.jexl.session.Gtk_JexlGatePkg$executeJexl”, “ru.bitec.app.gtk.jexl.gl.Gtk_JexlGateLib$executeJexl”. Добавлена информация об источнике скрипта: SSH, REST, SOAP, WebSocket, RichClient.

  4. Опубликовать в GTK Core Api недостающие константы ключей сведений о рабочих сеансах

    Добавлены класс констант ru.bitec.gtk.core.gl.cluster.CoreWorkSessionManager.Ct.Attributes.WorkSessionInfo; В класс констант ru.bitec.gtk.core.session.WorkSessionCtx.Ct добавлены недостающие значения.

  5. Добавить в сведения узла кластера информацию об образах решения 317450T

    1. В результаты методов ru.bitec.gtk.core.gl.cluster.CoreClusterNodeManager.getClusterNodesAsJsonString() и ru.bitec.gtk.core.gl.cluster.CoreClusterNodeManager.getClusterNodeAsJsonString(String)— добавлены ключи: “nodeCurrentDate”, “nodeTimeZone”, “nodeTimeZoneOffset”, “solutions/images/loadDate”, “solutions/images/isObsolete”, “solutions/images/md5”, “solutions/images/id”. 2. В результаты методов ru.bitec.gtk.core.gl.cluster.CoreWorkSessionManager.getWorkSessionsAsJsonString() и ru.bitec.gtk.core.gl.cluster.CoreWorkSessionManager.getWorkSessionsAsJsonString(String) — добавлен ключ “solutionImageId”.

  6. Переименовать коллекцию изображений navigation_hub в navhub #317480T

    Коллекция изображений ‘navigation_hub’ переименована в ‘navhub’

  7. Добавить новую коллекцию изображений navigation_hub #316519T

    Добавлена векторная коллекция изображений navigation_hub.