bizprocdesigner 26.500.0: фильтр ноды приехал выключенным

3 мин чтения
Узнавайте о ломающих изменениях Битрикса раньше, чем они доедут до прода: свежие разборы — в канале @bxmax_updates

Крупный UI-релиз редактора схем плюс новый тип конструкции — фильтр ноды. Ломающих изменений нет: все правки контроллера и DTO совместимы со старыми вызовами. Главное, что стоит знать заранее: фича спрятана за опцией и по умолчанию выключена.

Фильтр ноды

Новый экшен контроллера:

        Activity::getNodeFilterMetadataAction(
    string $activityType,
    array $documentType = [],
    bool $onlyDynamicEntities = false
): ?array

    

Отдаёт метаданные фильтра для конкретной активности. Два условия: у вызывающего должно быть право CreateWorkflow, а сама активность должна реализовывать NodeFilterMetadataProvider — контракт приехал в bizproc 26.1000.0 того же батча. То есть фильтровать умеет не любая нода, а та, которая объявила, по чему её можно фильтровать.

В перечисление типов конструкций добавлен ConstructionType::FILTER = 'filter', ConstructionDto::fromArray() его обрабатывает, а в JS появился UI (edit-filter-expression).

Включается всё это опцией модуля node_filter_available, дефолт — N:

        \Bitrix\Main\Config\Option::set('bizprocdesigner', 'node_filter_available', 'Y');

    

Проверка — Internal\Config\Feature::isNodeFilterAvailable(). Если после обновления вы не находите фильтр в интерфейсе, это не баг.

Совместимые расширения

Ничего не удалено, но кое-что стоит учесть:

  • Activity::getSettingsControlsAction(..., array $options = []) — новый ключ $options['hideEditorComment'] скрывает поле комментария редактора. То же и со стороны админки: bizproc_activity_settings.php при POST options.hideEditorComment=Y комментарий не показывает и не сохраняет.
  • LoadSettingsResponseDto — поле bool $filterSupported = false. Клиент по нему понимает, показывать ли UI фильтра для этой ноды.
  • ConditionExpressionDto::$value — тип сменился с ?string на mixed, а на $field навешен #[NotEmpty]. Условие теперь может сравнивать не только строки, но поле обязано быть заполнено — валидация переехала из проверок в атрибут.
  • FieldDto — опциональные ?array $options и ?array $settings.
  • Трейт ConditionValueResolver::resolveConditionValue() — общий разбор значения условия, вынесен из дублирования.

Небольшая, но полезная замена внутри

getSettingsControlsAction берёт описание активности через ActivitySearcherService::searchByCode(), а не через CBPRuntime::getActivityDescription(). Поиск по коду вместо обхода рантайма — как правило, это про скорость открытия карточки настроек в дизайнере, где раньше на каждый клик поднималось описание всех активностей.

UI редактора

Основной объём релиза — JS редактора схемы (install/js/bizprocdesigner/editor/chart/src/): скелетон приложения на время загрузки (app-skeleton), Lottie-анимации иконок блоков, тултипы каталога, шапка настроек ноды, табы, bx-control, form-input-tracker. Плюс инспектор данных ноды и preview/rules layout для общих настроек, приехавшие ещё в 26.400.0.

Что делать

  • Хотите фильтры нод — включите bizprocdesigner / node_filter_available.
  • Пишете свои активности и хотите фильтр в дизайнере — реализуйте NodeFilterMetadataProvider из bizproc.
  • Если разбираете ConditionExpressionDto — учтите смену типа value на mixed, строковых допущений в коде быть не должно.

Новая версия вышла — разбор уже в Telegram

В канале @bxmax_updates публикуем каждый свежий разбор: что сломается, что устарело и что появилось в API. Узнаете до того, как обновите прод.

Подписаться

Читайте дальше

Bizprocdesigner 26.1200.0: опции стали feature-флагами, REST агента строже проверяет граф

В Bizprocdesigner 26.1200.0 одиннадцать скрытых опций редактора заменены feature-флагами. У нас включённые опции при установке перешли во флаги, но `Option::set(’bizprocdesigner’, …)` в ваших скриптах больше ничего не включает. REST-методы внешнего AI-агента отклоняют часть графов, которые раньше пр…

6 мин
bizprocdesigner 26.1100.0 Безопасность Свежее

bizprocdesigner 26.900.0–26.1100.0: AI-агент больше не правит PHP-условия, публикация с остановкой старых процессов и свои поля документа

В разборе три версии bizprocdesigner: 26.900.0, 26.1000.0 и 26.1100.0. Метка security стоит из-за AI-агента, который с 26.900.0 не может написать или поменять PHP-условие ветки, а с 26.1000.0 пишет только в шаблоны, которые пользователю разрешено редактировать. Пользователи портала заметят, что реда…

1 мин

bizprocdesigner 26.600.0: публикация схемы сверяет права с шаблоном, внешние ИИ-агенты получили REST v3

В bizprocdesigner 26.600.0 публикация схемы проверяет права по типу документа самого шаблона. До этого пользователь с правом создавать процессы для одного типа документа мог опубликовать схему поверх шаблона другого типа, а по ответу контроллера понять, существует ли шаблон с нужным ID. Вендор не уп…

2 мин

bizprocdesigner 26.550.0: кода нет, переводы догнали выборку CRM из 26.500.0

В релизе сменился только номер версии в `version.php` и приехали языковые файлы de/en/kz. Логика PHP и JS не менялась, API, схема БД и deprecated-пометки на месте, обновляться можно не глядя. По коду в эталоне, выборка элементов CRM по фильтру, секция «Name and description» в настройках ноды и заглу…

2 мин
Мы используем файлы cookie для улучшения работы сайта. Продолжая использовать сайт, вы соглашаетесь с нашей политикой конфиденциальности.
AI Домовой

AI Домовой История

на связи

пишет…

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

Нет истории чатов
AI Домовой

Нужна авторизация

Войдите, чтобы задавать вопросы AI Домовому.

Войти