Skip to content

v0.13.0

Latest

Choose a tag to compare

@github-actions github-actions released this 19 Oct 16:54
· 453 commits to main since this release
125cf6f

Главное

v0.13.0 собирает изменения платформы после v0.12.0. Для разработчиков
конфигураций главное — новые возможности управляемых форм и подбора ссылок,
настройка навигации в «Предприятии», а также исправления запросов и хранения
данных. Служебные изменения конвейера не требуют действий от пользователей
платформы. Ниже отдельно перечислено то, что меняет поведение уже написанных
конфигураций.

Формы и подбор ссылок

  • Серверный поиск в диалоге подбора больше не требует выгружать весь справочник
    в браузер (#1495). Подчинённые справочники отбираются по владельцу (#1696).
  • choice_filter стал пригоден для более сложных форм: булев литерал и источник
    за ссылкой (#1769), пять точечных ключей элемента формы (#1774), eq_or_empty
    для общих и своих записей (#1781), строковый конец глубокого пути (#1813),
    отбор по parent_id (#1834) и постоянная ссылка ref (#1856).
    Добавлены исключение поддерева not_in_hierarchy (#1872), отбор
    корневых записей is_root (#1873) и проверка ссылочной колонки
    табличной части выбираемого справочника через eq (#1917).
  • Подбор работает и в формах обработок; onebase check теперь проверяет их
    условия, а не пропускает молча (#1846). Управляемые формы получили
    ОткрытьФорму и ПоказатьВопрос из обработчика (#1682, #1681).
  • Интерактивные фильтры списка типизированы (#1671), из строки списка можно
    открыть карточку записи (#1668), а список регистра сведений выводится
    постранично (#1854).

Навигация и настройка интерфейса

Смысловое меню сохраняет порядок contents и показывает разделы со смешанными
папками с учётом текущих прав (#1837, #1838). Конфигурационное меню можно
редактировать визуально (#1845). Администратор задаёт общую раскладку, а
пользователь — личную поверх неё; сохранение проверяет ревизию и не стирает
чужие изменения из устаревшей вкладки (#1847, #1853, #1855).

Данные, права и надёжность

  • Исправлены точность денежных сумм в SQLite (#1779), выбор счетов своего плана
    в виртуальных таблицах бухрегистра (#1800) и проверка счета проводки (#1801).
  • Решение о строковом доступе больше не зависит от порядка ролей пользователя
    (#1793). В PostgreSQL создание базы не упирается в цикл ссылок (#1849).
  • Исправлены сохранение реквизитов формы без видимого элемента (#1859),
    изоляция вкладок между сеансами входа (#1858) и обновление итогов живого
    списка (#1851).

Дополнения к формам, DSL и интеграциям

  • У DSL-диалога ПоказатьПодбор можно настроить ширину окна (#2116)
    и поля отбора в шапке (#2118); в управляемой форме работают цвет кнопки,
    событие смены страницы и порядок колонок табличной части
    (#2109, #2159, #2167).
    Для обмена данными добавлен XDTO-сериализатор (#1386).
  • Страница констант доступна только администратору (#1944). Для секретов
    в данных добавлена функция РасшифроватьСекрет с поддержкой enc:
    (#1945); существующие пароли автоматически не шифруются.
  • Исправлены сохранение пустых типизированных значений при импорте (#1950),
    доступ к данным присоединённых источников в запросах (#1926, #1459)
    и отображение списков регистров на узком экране (#1922, #2208).
    Импорт .obz в PostgreSQL работает на пустой базе и при круговых
    ссылках; восстановление проверяет внешние ключи до фиксации данных (#1966).

Изменения поведения существующих конфигураций

  • Неверный choice_filter формы обработки теперь блокирует onebase check, а
    верный действительно ограничивает подбор; раньше тот же ключ молча
    игнорировался (#1846).
  • Объявленный в форме обработчик ПередЗакрытием теперь действительно
    вызывается. Проверьте его код: отказ, ошибка или таймаут оставят форму
    открытой. Заполнение реквизитов при открытии больше не помечает форму
    изменённой (#1829).
  • Дата документа для проведения и движений берётся из реквизита Дата, а не
    из первого реквизита типа «дата». Проверьте модули, которые опирались на
    прежний ошибочный выбор (#1827).
  • Реквизиты с default: и результаты ПриСозданииНового сохраняются даже
    тогда, когда поле не размещено на управляемой форме (#1760). Ключи
    width/height/halign/valign, раньше игнорировавшиеся, теперь влияют
    на геометрию элементов: проверьте импортированные формы, где они заданы.
  • Для рабочего места кассира требуется явное features.pos: true; без него
    раздел не появляется (#1464).
  • Индексный доступ Объект["Реквизит"] теперь выдаёт ошибку при неизвестном
    имени, нестроковом ключе и неподдерживаемом объекте вместо тихого пропуска
    (#1310). У объекта документа Проведен и ПометкаУдаления теперь отражают
    состояние, а не Неопределено (#1791).
  • Проводка бухгалтерского регистра с пустым счётом или счётом не из его плана
    теперь отклоняется; проверьте модули проведения, если они раньше записывали
    такие движения (#1801). Роль без RLS-политики снимает ограничение другой
    роли независимо от порядка загрузки ролей (#1793).
  • Конфигурация со шлюзом transport: amqp теперь отклоняется при загрузке:
    потребителя AMQP в платформе не было, такой шлюз раньше молча не работал
    (#1789).
  • Первый запуск после обновления может построить индекс по регистратору у
    регистров; запланируйте время на миграцию крупной базы (#1777).
  • На SQLite суммы и календарные группировки запросов могут дать другие,
    теперь корректные результаты. Сверьте отчёты и тесты, которые закрепляли
    прежнее поведение (#1779, #1768).
  • Самообновление использует подпись релиза. Перед обновлением установленной
    копии проверьте, что канал и ключ подписи настроены по
    инструкции; простая подмена бинаря в рабочей базе
    не заменяет проверки совместимости и резервного копирования.

Перед обновлением также проверьте следующие изменения:

  • Enter перемещает фокус, а запись остаётся на явных командах. Для форм,
    которым нужна отправка по Enter, задайте enter_submits_form: true (#1520).
  • Некорректная строка в Число / Number вызывает исключение вместо
    молчаливого нуля (#2200). Строка(Неопределено) и Строка(Null) теперь
    возвращают пустую строку вместо "<nil>" (#2155).
  • Для Каждого обходит структуру, а неитерируемое значение даёт ошибку
    (#2146). Лишние аргументы Структура.Свойство больше не игнорируются
    (#2147); метод с одним аргументом по-прежнему возвращает значение.
  • Константы через UI изменяет и читает администратор (#1944).
    Проверьте рабочие места, где эту страницу использовали другие роли.
    В режиме без пользователей и при открытом доступе прежнее поведение сохранено.
  • Секреты требуют отдельной настройки и сохранности мастер-ключа.
    Новая функция расшифровывает только enc:-значения; она не заменяет
    миграцию существующих паролей и ключей в зашифрованный формат (#1945).
  • Защищённые одноимённые колонки в JOIN требуют явных уникальных алиасов:
    неоднозначная выдача отклоняется целиком (#1484).

Все предупреждения, накопленные после v0.12.0, сохранены в
разделе v0.13.0 CHANGELOG.
Проверьте его перед обновлением рабочей базы: там отдельно описаны изменения
запросов, дат и периодов, маскирования, проведения, обмена и миграций.

Перед заменой бинаря сделайте резервную копию рабочей базы и проверьте свою
конфигурацию командой onebase check --project <каталог> на новой сборке.
Новые возможности, ещё не влитые в main, в этот релиз не входят.

Приёмка конфигураций колл-центра

Проверка частных oneservice-cc и oneservice-cc_v2 отложена на период после
выпуска платформы. Перед обновлением рабочей базы проведите их прикладную
приёмку на копии данных: onebase check, миграцию и рабочие сценарии под
ролями оператора и администратора на используемой СУБД.

Полный состав PR

Перечень включает 440 PR, вошедших в main после v0.12.0 до подготовки
самой заметки. Служебные и плановые PR перечислены для полноты; наличие
плана в перечне не означает, что описанная в нём возможность реализована.

Подготовка этой заметки и раздела CHANGELOG — #1874.

What's Changed

Full Changelog: build-1487...v0.13.0