Битрикс24 глазами интегратора | Олег Груздев – Telegram
Битрикс24 глазами интегратора | Олег Груздев
93 subscribers
49 photos
3 videos
16 links
Канал интегратора Энтерпрайз-решений. Делюсь новостями и опытом настройки Битрикс24 для крупных компаний и госструктур.

Открыт к общению: @gruzdevoleg
Download Telegram
Как заставить REST-интеграции работать на тестовом контуре Битрикс24

Делюсь практикой, которая не раз выручала меня в проектах на тестовом портале.

На сегодня одновременная работа REST-приложений на двух порталах с одним лицензионным ключом стандартно не предусмотрена.

Почему так?
Лицензия привязывается к домену портала на стороне OAuth-сервиса вендора. И стандартно одновременная работа REST-приложений на боевом и тестовом портале с одним ключом не поддерживается. Конечно, у Битрикс24 это уже в планах, но пока что можно обойтись временным решением.

Чтобы REST-интеграции на тестовом портале заработали корректно:

1️⃣ Заходим на тестовый портал под администратором.
3️⃣ Переходим: Административный раздел → НастройкиИнструментыPHP-командная строка.
3️⃣ Выполняем этот код:
\Bitrix\Main\Loader::includeModule('rest');

$oldClientId = \Bitrix\Main\Config\Option::get('rest', 'service_client_id', null);
$oldClientSecret = \Bitrix\Main\Config\Option::get('rest', 'service_client_secret', null);

print_r('old service_client_id: "' . $oldClientId . '"');
print_r('old service_client_secret: "' . $oldClientSecret . '"');

\Bitrix\Main\Config\Option::delete('rest', ['name' => 'service_client_id']);
\Bitrix\Main\Config\Option::delete('rest', ['name' => 'service_client_secret']);

try {
\Bitrix\Rest\OAuthService::register();
\Bitrix\Rest\OAuthService::getEngine()->getClient()->getApplicationList();
} catch(\Bitrix\Main\SystemException $e) {
echo 'error register portal';
echo "\n <br> \n";
}

$newClientId = \Bitrix\Main\Config\Option::get('rest', 'service_client_id', null);
$newClientSecret = \Bitrix\Main\Config\Option::get('rest', 'service_client_secret', null);

if (
!is_null($oldClientId)
&& !is_null($oldClientSecret)
&& is_null($newClientId)
&& is_null($newClientSecret)
) {
\Bitrix\Main\Config\Option::set('rest', 'service_client_id', $oldClientId);
\Bitrix\Main\Config\Option::set('rest', 'service_client_secret', $oldClientSecret);
}


Что делает этот скрипт?
Он обновляет OAuth-привязку тестового портала на сервере https://oauth.bitrix.info. Дальше достаточно переустановить интеграционное приложение на тестовом портале и можно снова пробовать подключать интеграции. На боевом портале ничего не изменится — он продолжит работать как раньше.

Такой подход отлично подходит для тестирования. Но держите в голове — это временное решение. Если нужна стабильная работа двух контуров одновременно, лучше обсудить с вендором или интегратором варианты лицензирования.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Структура компании + кроссфункциональные команды в Битрикс24 = порядок в системе

Если хотите, чтобы в компании было понятно: кто за что отвечает, как найти нужного коллегу, в какие чаты автоматически попадет новичок — начните со структуры. Как работать со структурой компании читайте тут.

Из моего опыта, это один из самых недооценённых инструментов. Структура и кроссфункциональные команды — база для масштабируемой и прозрачной организации.

Что даёт структура?

🔹 Визуально показывает отделы и подчинённость.
🔹 Отражает роли: руководитель, зам, подчинённый.
🔹 Помогает новичкам быстро адаптироваться (сразу понятно, кто их руководитель и к кому идти за советом).
🔹 Автоматически добавляет сотрудников в нужные чаты и каналы.
🔹 Упрощает поиск коллег и отделов.
🔹 Предоставляет руководителям доступ к задачам и отчётам сотрудников.
🔹 Служит основой для бизнес-процессов (отпуска, командировки и т. д.).

Но! Структура — это «каркас». А вот гибкость в проектах обеспечивают кроссфункциональные команды.

Зачем нужны команды?
Сотрудники остаются в отделах, но работают вместе в рамках задачи или проекта.

🔹 Команды можно создавать на срок проекта — и удалять после завершения.
🔹 Их можно прикреплять к отделу или даже к другой команде — не ломая оргструктуру.
🔹 Автоматически создаются чаты и каналы, где состав участников синхронизируется.
🔹 Можно назначить руководителей и заместителей, которые получают временные полномочия для согласований.
🔹 Всё настраивается: роли, права доступа, описание, состав.

Если у вас до сих пор в компании нет структуры или вы не используете команды — начните. Это как минимум экономит время.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2
Как работают уведомления в мобильном приложении Битрикс24

Меня как-то спросили: почему уведомления в мобильном приложении приходят с задержкой, а иногда и вовсе не приходят? Разберу по порядку, как устроена логика:

Первое — банальное. Проверьте настройки телефона. У приложения Битрикс24 должны быть разрешены уведомления. У половины пользователей именно в этом кроется причина «пропажи» пушей.

Дальше — специфика работы самих уведомлений:

Битрикс24 отправляет уведомления через свой push-сервер.
Он анализирует, где вы сейчас активны, и уже исходя из этого выбирает, по какому каналу отправить уведомление.

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

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

🔹А вот если запущен десктоп, уведомления на мобильное устройство не придут. Система считает, что вы находитесь за компьютером и видите всё там.

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


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

Важно: Push-сервер Битрикс24 взаимодействует с устройствами через определённые порты. Если в вашей сети закрыты порты 80, 443 или 8893–8894, уведомления не дойдут.

Если пуши все равно не приходят — пишите в комментариях. Разберем вместе, я проходил через это десятки раз.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍2
Нюансы создания CRM-объектов в Битрикс24 через REST API

Друзья, сегодня делюсь важными наблюдениями из практики интегратора. Часто вижу, как при интеграции с Битрикс24 «не заводятся» CRM-объекты — хотя вроде бы метод API выбран верно и переданы все «вроде бы нужные» поля.

Сейчас разберу на самом «капризном» примере — Сделки.

Какие поля обязательны для создания сделки через REST API?
Когда вы вызываете crm.deal.add, Битрикс24 ждет от вас заполнения сразу нескольких системных полей — без них сделка не создастся:

🔹ASSIGNED_BY_ID — ответственный сотрудник.
🔹CATEGORY_ID — ID направления сделки.
🔹STAGE_ID — ID стадии сделки.
🔹STAGE_SEMANTIC_ID — группа стадий (P — в работе, S — успешно, F — провалена).
🔹NAME — название сделки.

Эти поля не всегда «очевидны». Снаружи кажется: «Ну вот же, передал название и комментарий — почему не создалась?». А система «молча» возвращает ошибку из-за отсутствия этих значений.

1️⃣Проверьте настройки воронки
Еще одна ошибка — в конкретном направлении могут быть настроены обязательные пользовательские поля. Их тоже нужно передавать в API-запросе — иначе CRM вернет ошибку валидации.

3️⃣Проверьте другие объекты CRM
С лидом (crm.lead.add) и контактом (crm.contact.add) сценарий похожий, но проще. Например, при создании контакта не нужно ни CATEGORY_ID, ни STAGE_ID — достаточно NAME и ASSIGNED_BY_ID.

Не поленитесь заранее:
🔹 Посмотреть список обязательных системных полей для нужной сущности.
🔹 Проверить настройки обязательных полей в самой CRM.
🔹 Передать все эти значения при вызове метода API.

Если нужна памятка по системным полям для каждой сущности — напишите в комментариях, подготовлю отдельный пост.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Связи CRM‑объектов в Битрикс24: как реализовать «все со всеми»?

В проектах автоматизации на Битрикс24 возникает задача:
связать несколько CRM‑объектов между собой по принципу «многие ко многим».

Например:
🔹Карточка смарт‑процесса CLM‑цикла, в которой хранится информация о клиенте и автомобиле и нужно, чтобы эта карточка была связана со всеми сделками по этому клиенту и автомобилю.
🔹 Карточка смарт‑процесса группы компаний, где должны отображаться все сделки всех компаний из группы.

Почему это не работает штатно?
Потому что в Битрикс24 отсутствует функционал связи CRM‑объектов по модели «многие ко многим». Сейчас реализована только схема «один ко многим»: одна карточка смарт‑процесса может быть привязана к множеству сделок, но не наоборот.

Как решить задачу?

1️⃣В облачных порталах:

Для таких сценариев воспользуйтесь возможностями REST API. В бизнес‑процессе (роботе) вызовите метод crm.deal.update и пропишите нужные ID смарт‑процесса в поля сделки.

Пример запроса:
{
"id": {=Variable:ID_deal},
"fields": {
"PARENT_ID_136": {=Variable:parentID},
"UF_CRM_1708091479": {=Variable:parentID}
}
}

Чтобы не писать код руками, удобнее воспользоваться приложением из маркетплейса — например «REST Activity» от IT Solution, которое выполнит такие REST‑запросы прямо из конструктора бизнес‑процессов.

3️⃣В коробочных порталах:

В «коробке» можно обойтись без API и записывать данные напрямую в таблицы CRM с помощью PHP‑активити в бизнес‑процессе.

Пример кода для добавления связи между сделкой и смарт‑процессом:
use Bitrix\Crm\ItemIdentifier;
use Bitrix\Crm\Service\Container;

$parentEntityTypeId = 134; // ID смарт‑процесса
$parentEntityId = $this->getvariable('parentEntityId');
$childEntityTypeId = \CCrmOwnerType::Deal;
$childEntityId = $this->getvariable('childEntityId');

$parent = new ItemIdentifier($parentEntityTypeId, $parentEntityId);
$child = new ItemIdentifier($childEntityTypeId, $childEntityId);

if (!Container::getInstance()->getRelationManager()->areItemsBound($parent, $child)) {
Container::getInstance()->getRelationManager()->bindItems($parent, $child);
}

Так создаются записи связи напрямую в нужных таблицах базы данных CRM и реализовываются сценарии «все со всеми».

Стандартного функционала Битрикс24 недостаточно, чтобы построить связи CRM‑объектов по схеме «все со всеми». Но это легко реализовать — через REST API или прямые записи в базу данных на коробочных порталах.

Если тема для вас актуальна — ставьте «🔥», чтобы я понимал, стоит ли продолжать разбирать похожие кейсы.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
Лайфхак: как включить «режим суперадминистратора» и видеть всё

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

Как включить: зайдите в свой профиль на порталенастройки → и в блоке «Права администратора» активируйте галочку «Перейти в режим администратора».

После включения, вы как администратор сможете:
— Просматривать все задачи на портале, даже если не участник.
— Видеть все группы и проекты без вступления в них.
— Следить за элементами CRM, к которым обычно нет доступа.
— Лучше контролировать то, что происходит в компании.

На самом деле, этот лайфхак официально описан в справке Битрикс24, но на практике про него вспоминают единицы.

Мы включаем этот режим в проектах почти сразу, это удобно на этапе аудита или когда нужно быстро разобраться в чужом «зоопарке» задач.

А вы знали об этом режиме?
❤️ — да, 👍🏻 — нет
3👍2
С праздником, друзья!

Не зря же мы с вами отработали шестидневку, теперь заслуженно отдыхаем во вторник. Я решил, это повод, чтобы немного нарушить традиции канала.

В основном, пишу здесь только про Битрикс24: CRM, автоматизацию, интеграции и прочие радости. А вот про меня самого — ничего. Исправляюсь!

🔹Я руководитель проектного офиса Битрикс24 в Webest, уже больше 8 лет внедряю и настраиваю Битрикс24 для крупных компаний и госструктур.
🔹Люблю проводить время с семьей и активный отдых в путешествиях
🔹Увлекаюсь футболом, собственно, фото поста это и отражает :)

А теперь — заслуженный выходной, который проведу с семьей.

Всем хорошего отдыха, единства в команде и стабильной работы Битрикс24!
Please open Telegram to view this post
VIEW IN TELEGRAM
17🔥3
Все помнят, что сегодня релиз Нового Битрикс24?

Если вдруг пропустили →
ссылка для регистрации на просмотр.

Начало в 11:00 — свежие фишки, обновлённый интерфейс и идеи для командной работы. А с 10:00 стартует интересный блок про космическую психологию для команд и компаний.

Я подключусь онлайн, а мой коллега будет смотреть в Москве. Впечатлениями поделимся уже после 😉

Присоединяйтесь к трансляции:
🔹YouTube
🔹ВК
🔹RuTube
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Что новенького у Битрикс24?

Это был весьма интересный и насыщенный релиз. Ну и если тренд «Космос» продолжится, то жду, что в следующем году Сергей Рыжиков проведёт презентацию прямо с МКС 😄

В целом ощущение, что Битрикс24 сделал серьезный шаг к тому, чтобы AI стал полноценным нативным ассистентом и помощником компаний. Главный фокус на MCP-технологиях и AI-агентах. Они станут центром управления рабочими процессами на порталах.

Что еще интересного:

🔹 Мобильное приложение — новый интерфейс Зефир, ускоренный мессенджер и обновленный профиль сотрудника. Приложение проще и приятнее в работе.
🔹 Аудио Задачи AI — говорите голосом, AI распознаёт, оформляет, ставит сроки и назначает ответственных.
🔹 CRM AI — AI автоматически заполняет CRM после разговора с клиентом, создает автоматические дела из звонков и обрабатывает нерелевантные звонки.
🔹 Новые задачи с чатом — теперь чат станет центром работы, без вкладок и переключений.
🔹 AI-мессенджер — расшифровывает голосовые, анализирует эмоции, плюс новые эмодзи, стикеры и папки.
🔹 Почта — в мобильном приложении появился отдельный раздел Почта и добавлены централизованное управление почтовыми ящиками, права доступа и возможность настройки сразу несколькими сотрудниками.

Полный список обновлений читайте здесь, описание новинок — здесь, а тут можно запись релиза посмотреть.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9
Как корректно синхронизировать направления сделок из 1С в Битрикс24

Недавно делал интеграцию между 1С:УТ и Битрикс24, и хочу поделиться деталью, о которую спотыкаются даже опытные интеграторы.

Задача вроде простая: нужно, чтобы заказы из 1С попадали не в одну общую воронку CRM, а сразу в нужное направление сделки. Казалось бы, прописал поле «Направление сделки Битрикс24» — и готово. Но увы и ах.

В чём причина?

При активных бизнес‑процессах в сделке (БП) Битрикс24 не разрешает менять воронку. Запрос от 1С возвращает ошибку: CRM_ITEM_HAS_RUNNING_WORKFLOWS.

Даже если в заказе в 1С заполнен реквизит «Направление сделки Битрикс24», при запущенном БП воронка не изменится.

Как правильно настроить?

1️⃣В заказе 1С обязательно заполните реквизит «Направление сделки Битрикс24».

3️⃣Проверьте, чтобы в модуле синхронизации были правильно сопоставлены статусы заказов и стадии сделок в разных воронках.

3️⃣Перед сменой направления убедитесь, что у сделки нет активных бизнес‑процессов (их нужно завершать или проектировать так, чтобы они не блокировали смену воронки).

После этого при регламентной выгрузке из 1С направление и стадия сделки корректно обновляются.

Многие делают костыли (например, выгружают направление во вспомогательное поле и потом меняют воронку через БП в Битрикс24). Но штатный механизм тоже работает, главное, чтобы не мешали незавершенные процессы.


Если у вас похожая задача — сначала проверьте, нет ли у сделки зависших БП. В 90% случаев проблема именно в этом 😉
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍21
Что выбрать для интеграции Битрикс24 и 1С: Push&Pull или HTTP-сервисы?

Оба способа работают для связи Битрикс24 и 1С, но подходят для разных сценариев. Далее рассказываю подробнее.

📨 Push&Pull
— для интерактивных и оперативных процессов, где важна скорость и реакция «в реальном времени».

Как работает?
1С устанавливает исходящее постоянное соединение с Битрикс24. Через это соединение она сразу получает события с портала и отправляет свои изменения.

Требования:
🔹Доступ 1С в интернет.
🔹Важно: публикации базы 1С на веб-сервере не требуется.
Push&Pull работает как инициируемое из 1С соединение, без необходимости «открывать» саму базу наружу.

Особенности подключения:
🔹Соединение устанавливается вручную через кнопку «Запустить соединение к Битрикс24» и отключается по кнопке.
🔹В клиент‑серверном варианте базы соединение работает в фоновом режиме.
🔹В файловом варианте соединение держится в текущем сеансе: клиент «замораживается» и ждёт сообщение от Битрикс24. Прерывать сеанс нельзя, иначе модуль начнёт работать некорректно.
🔹Недоступно при работе базы 1С в режиме сервиса.Это вариант «в реальном времени».

Плюсы: Максимально быстрое обновление данных.
Минусы: Нужно постоянно держать активное соединение. Не работает в режиме сервиса.

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

Как работает?
1С публикует HTTP-сервис, а Битрикс24 обращается к нему по указанному URL.
Дополнительно 1С может сама отправлять данные на портал по этому же механизму.

Требования:
🔹В 1С нужно опубликовать HTTP‑сервис на веб‑сервере.
🔹Необходимо указать веб-адрес базы 1С. По этому адресу Битрикс24 будет подключаться по HTTP-сервису.
🔹В настройках указываются: логин и пароль пользователя (с полными правами или ролью «(Коннектор к Битрикс24) Администратор») и веб‑адрес опубликованного HTTP‑сервиса.
🔹Сервер 1С должен работать с корректной цепочкой SSL‑сертификатов.

Плюсы: нет зависимых сеансов, нет постоянного подключения.
Минусы: данные обновляются не мгновенно.

Если у вас процессы, где каждая минута важна (сделки, заказы, оплаты), то Push&Pull даст нужную скорость.
Если же главное стабильность и объёмные обмены, а не моментальный отклик, то HTTP-сервисы будут надёжнее.

Я советую начинать с HTTP-сервисов, а когда процессы устоятся, можно переходить на Push&Pull, если есть бизнес-смысл в онлайне.

Ставьте «❤️», если было полезно.
Please open Telegram to view this post
VIEW IN TELEGRAM
5🥰1
Обновления Битрикс24 и вечный вопрос: почему всё зависло?

Столкнулся с интересной ситуацией при обновлении портала. В какой-то момент установка просто зависает на CRM-модуле (24.300.0), а потом портал уходит в 502 или 504 ошибку.

Я сразу начал перебирать стандартные причины:
🔹Ресурсов сервера достаточно? сервер не упирается, CPU и память свободны?
🔹Таймауты в nginx, Apache и php.ini выставлены щедро?
🔹Весь кастом временно отключён, local переименован?
🔹Установка идёт полностью стандартным способом, без ручного копирования или подмены файлов?

Казалось бы, все условия соблюдены… но обновления упрямо не устанавливаются

Тогда я задумался: а что именно сейчас делает обновление? Где оно спотыкается?

Ответ оказался в базе. Оказалось, при обновлении CRM выполняется вот такой SQL-запрос:
ALTER TABLE b_crm_act MODIFY OWNER_TYPE_ID INT(1) NOT NULL;


И если в CRM накопилось много активностей, таблица b_crm_act разрастается до внушительных размеров. Из-за этого SQL-операция просто не успевает завершиться в отведённое время — особенно на неторопливых VPS/VDS.

Решение оказалось до смешного простым:
Выполнил этот запрос вручную через консоль MySQL под админом. Подождал, пока он отработает, и снова запустил обновление. Главное, делать это только после резервной копии, не шутите с базой.

Если во время обновления Битрикс24 ловите 502/504, а в логах мелькают MySQL sserver has gone away или upstream timed out — стоит проверить, не застопорилось ли обновление на тяжёлой операции в БД. В таких случаях помогает внимательнее посмотреть, какой именно шаг выполняет апдейтер, и при необходимости слегка подтолкнуть его вручную.
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥2
Кейс: как мы автоматизировали сбор NPS в «коробочном» Битрикс24

Недавно для одного из клиентов реализовали гибкое решение по сбору NPS внутри Битрикс24 на коробочной версии.

Задача — встроить процесс опроса клиентов в привычную карточку сделки, сделать удобным для сотрудников и полезным для аналитики.

Решение

1. Создали кастомный модуль NPS на базе универсальных списков

Использовали «Универсальные списки» как гибкую основу, а поверх них разработали отдельный модуль NPS с тремя разделами:
— Сценарии
— Создание сценариев
— Настройка вопросов

2. Настроили сценарии опросов

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

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

3. Настроили гибкий конструктор вопросов
Интерфейс «Как формируется вопрос» позволяет:
— Привязывать вопрос к нужному сценарию.
— Выбирать тип вопроса: строчка, число или список.
— Определять, учитывать ли его в среднем значении.
— Задавать сортировку, чтобы вопросы выводились в нужном порядке.
— Принудительно записывать результат по конкретному вопросу в отдельный реквизит карточки сделки.

В карточке сделки сотрудник может открыть вкладку опроса, ответить за клиента или фиксировать ответы. На скриншоте «Результат опроса» (прикрепил в комментариях) видно, как это выглядит.

Так как решение построено на универсальных списках, данные легко выгружаются для построения отчетности в BI-системах. И при этом клиент сам может добавлять или корректировать сценарии опросов под разные сегменты сделок и продуктов.

Результат
Компания получает регулярную обратную связь по NPS прямо в Битрикс24 без лишних инструментов и лишней нагрузки на сотрудников.
🔥3👍1
Как получить публичную ссылку на запись звонка в Битрикс24 для внешних сценариев

Часто встречаю запрос от клиентов: «А как нам автоматически получать ссылку на запись разговора, чтобы отправить её во внешний сервис или прикрепить в отчёт?». Рассказываю, как сделать по шагам.

1️⃣Находим нужные звонки в CRM
Используем метод API: crm.activity.list. Он позволяет получить список активностей по нужной сделке, контакту или лиду. В ответе ищем массив FILES, именно там хранятся ID файлов записей звонков.

Например:
"FILES": [
{
"id": 129,
"url": "https://ваш_портал/bitrix/tools/crm_show_file.php?fileId=129&ownerTypeId=6&ownerId=89&auth="
}
]


3️⃣Фильтруем звонки
Если хотите поставить фильтр, например, только успешные звонки длительностью > 30 секунд — подключаем метод: voximplant.statistic.get. Он позволяет гибко задать фильтры по длительности, направлению, результату и т.д., а в ответе уже получаем идентификаторы нужных звонков.

3️⃣Получаем публичную ссылку на файл
По id из массива FILES вызываем метод: disk.file.getExternalLink. Это возвращает не требующую авторизации ссылку на файл записи, ее можно отправить куда угодно.

В итоге получается автоматизированный сценарий:
Поиск нужных звонков → Получение ID файла → Получение публичной ссылки.

👍 — если было полезно
🔥 — если хотите больше полезного
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍1
Почему фильтр в сделках Битрикс24 показывает «провальные» сделки

Вы когда-нибудь сталкивались с ситуацией, когда при фильтрации сделок по статусам отображались… провальные сделки, несмотря на то, что в фильтре они исключены? 🤔
Я — да, рассказываю дальше.

Что интересно, при проверке показывает:
— Cистема обновлена.
— Диагностика ошибок не выявляет.
— Интерфейс фильтра работает как положено.

Тем не менее, в итоговой выборке всё равно появлялись сделки со статусом «Сделка провалена». Проверил разные направления (воронки), но быстро понял, что ситуация повторяется.

Дальше выяснил, что у части сделок в базе данных был некорректно указан параметр STAGE_SEMANTIC_ID. Он не совпадал с фактическим статусом сделки. В интерфейсе все выглядело идеально, но фильтрация шла по «сырому» значению в базе. Именно это ломало результат.

Пришлось аккуратно обновить данные через SQL-запрос. Для проваленных сделок, например, подошел такой:
UPDATE b_crm_deal 
SET STAGE_SEMANTIC_ID='F'
WHERE STAGE_ID IN (
SELECT STATUS_ID
FROM b_crm_status
WHERE ENTITY_ID LIKE "%DEAL_STAGE%" AND SEMANTICS='F'
) AND STAGE_SEMANTIC_ID='P';


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

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

Нужна помощь с диагностикой или разбором подобных «призраков» в Битрикс24? Пишите @gruzdevoleg, помогу найти источник.
🔥5
У нас классический декабрьский марафон:

— Запускаем новые проекты по акции от Битрикс24.
— Готовим к публикации собственные решения в Маркетплейсе Битрикс24 и 1C-Битрикс.Маркет.
— Разбираем «хвосты» и финализируем проекты.
— Подводим итоги с клиентами и планируем работы на 2026.

Год получился насыщенным, хочется выдохнуть все сильнее 🙂
👍2
С наступающим!

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

Желаю вам, чтобы 2026 год принес больше прибыльных проектов и профессиональных побед. Дальше — больше! Двигаемся только вперёд!
5🤩3👍2🔥2🎄2