Biconnectormobile 26.150.0: мобильный BI без отдельного переключателя
Ломающее обновление
Удалены или изменены публичные API — прикладной код может перестать работать.
В biconnectormobile 26.150.0 убрали переключатель мобильного BI. Теперь BI в приложении видят все, у кого есть права, и выключить его прежней опцией нельзя. Если вы скрывали BI с телефона или включали его из кода через MobileBIFeature, после обновления это перестанет работать.
Новое
Мобильный BI открывают права, а не флажок
Пункт BI появляется в мобильном меню, когда установлен модуль biconnector, доступен инструмент crm_bi и у пользователя есть право ACTION_BIC_ACCESS. Вкладка области показывается, только если в ней есть доступные пользователю отчёты.
Контроллеры Dashboard, Filter и Instance по-прежнему проверяют тариф, инструмент crm_bi и право доступа к BI. Фильтр MobileBIFeatureAccess отвечает FEATURE_DISABLED, только если не подключается модуль biconnector. Выключенный переключатель этого отказа больше не вызывает.
Что сломается
Удалён публичный класс Bitrix\BIConnectorMobile\Public\Features\MobileBIFeature вместе с методами isEnabled(), enable(), disable() и регистрацией в feature-flags. Код, который создаёт этот объект, упадёт с ошибкой «класс не найден». Замены для включения и выключения мобильного BI в этой версии нет.
Опция biconnectormobile/bi_mobile_enabled больше ни на что не влияет. На порталах, где ею прятали BI, меню и вкладки появятся у всех, кто проходит проверки из раздела выше. Чтобы спрятать BI, используйте те же условия: выключите инструмент crm_bi или не выдавайте право ACTION_BIC_ACCESS.
Deprecated
ScopeVisibilityService::isFeatureEnabled(): bool помечен @deprecated и всегда возвращает true: права пользователя и наличие biconnector он не проверяет. Если ваш код решал по нему, показывать ли BI, замените вызов:
use Bitrix\BIConnectorMobile\Service\ScopeVisibilityService;
$showMenu = ScopeVisibilityService::isRootEntryVisible();
$showTab = ScopeVisibilityService::isScopeVisible($scopeCode);
Метод оставлен ради mobile/biconnector/dashboard-embedded.php из модуля mobile до версии 26.1700.0 включительно. Комментарий в ядре обещает удалить его, когда зависимость поднимут до mobile 26.1800.0.
Устаревшие и удалённые API в этой версии
| Символ | Статус | Чем заменять |
|---|---|---|
Bitrix\BIConnectorMobile\Service\ScopeVisibilityService::isFeatureEnabled()
|
Deprecated |
Bitrix\BIConnectorMobile\Service\ScopeVisibilityService::isRootEntryVisible() / Bitrix\BIConnectorMobile\Service\ScopeVisibilityService::isScopeVisible()
|
Bitrix\BIConnectorMobile\Public\Features\MobileBIFeature
|
Удалено | — |
Bitrix\BIConnectorMobile\Public\Features\MobileBIFeature::isEnabled()
|
Удалено | — |
Bitrix\BIConnectorMobile\Public\Features\MobileBIFeature::enable()
|
Удалено | — |
Bitrix\BIConnectorMobile\Public\Features\MobileBIFeature::disable()
|
Удалено | — |