Полезные настройки в Битрикс24
4 subscribers
18 photos
21 links
Download Telegram
Блокировка поля при изменении без разработки и маркета

Можно написать локальное приложение и установить готовое решение из Маркетплейса Битрикс24, скажите вы, для решения задачи связанной с блокировкой поля от изменения. И будете правы. Приложение или модуль можно написать, готовое решение для решения этой задачи тоже есть.

Но, что если вам нужно решение, которое:
1. Хранит ваши данные у вас в вашем Битрикс24, а…

https://set-b24.ru/blokirovka-polya-pri-izmenenii-bez-razrabotki-i-marketa/
Блокировка поля при изменении без разработки и маркета

Можно написать локальное приложение и установить готовое решение из Маркетплейса Битрикс24, скажите вы, для решения задачи связанной с блокировкой поля от изменения. И будете правы. Приложение или модуль можно написать, готовое решение для решения этой задачи тоже есть.

Но, что если вам нужно решение, которое:
1. Хранит ваши данные у вас в вашем Битрикс24, а…

https://set-b24.ru/blokirovka-polya-pri-izmenenii-bez-razrabotki-i-marketa/
Отправить уведомление в Telegram Вебхуком

Если по каким-то причинам у вас нет возможности установить готовое приложение из Битрикс24 Маркетплейс – Уведомление в Telegram (робот и активити БП), то ниже я вам дам код, который позволит отправить уведомление с помощью исходящего Вебхука с робота или активити в бизнес-процессе.

https://api.telegram.org/botтокен:бота/sendMessage?chat_id=ID чата, текст

- Токен бота – вы получаете при создании бота в…

https://set-b24.ru/otpravit-uvedomlenie-v-telegram-vebhukom/
Обновление крайнего срока задачи с помощью Вебхука

Давайте представим, что вы автоматически ставите задачу роботом или активити и через какое-то время или по определенному условию вам нужно обновить крайний срок. Как это сделать? Рассмотрим ниже..

1. Создадим входящий вебхук. Для этого перейдем в раздел “Разработчикам” https://вашеназвание.bitrix24.ru/devops/, далее Другое и провалимся в Входящий вебхук.
2. Далее создаем Вебхук со следующими настройками.

Метод –…

https://set-b24.ru/obnovlenie-krajnego-sroka-zadachi-s-pomoshhyu-vebhuka/
Как в Коробке Битрикс24 получить ID начальника c помощью PHP активити

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

1. Создадим переменную var5 c типом “Привязка к пользователю“

2. Напишем код в активити PHP код

$num = 2; // Определяем уровень в структуре
$userId = substr("{{Ответственный}}", 5); // Вместо переменной {{Ответственный}} подставьте свое значение…

https://set-b24.ru/kak-v-korobke-bitriks24-poluchit-id-nachalnika-c-pomoshhyu-php-aktiviti/
❤1
Как передать несколько товаров из Бизнес Процесса с параметрами в Смарт-процесс

Давайте разберем такую ситуацию. Вам необходимо запускать БП в сделке и через него, выбирая товары из каталога товаров далее пробрасывать их в созданный в этом же процессе Смарт-процесс.

1. Создадим БП. Вот так выглядят настройки БП.

2. Далее мы должны создать параметр. В нашем БП их несколько, но для примера нас интересует “Выберите доп услугу“…

https://set-b24.ru/kak-peredat-neskolko-tovarov-iz-biznes-proczessa-s-parametrami-v-smart-proczess/
👍1
Вывод дополнительных логов при отладке обработчиков в Битрикс24

В каких-то случаях нам может быть недостаточно логирования в Журнале событий или php-error.log, тогда нужно изменить немного файл /bitrix/.settings.php.

То, что там по умолчанию:

'exception_handling' =>
array (
'value' =>
array (
'debug' => true,
'handled_errors_types' => 4437,
'exception_errors_types' => 4437,
'ignore_silence' => false,
'assertion_throws_exception' => true,
'assertion_error_type' => 256,
'log' => NULL,
),
'readonly'…

https://set-b24.ru/vyvod-dopolnitelnyh-logov-pri-otladke-obrabotchikov-v-bitriks24/
🔥1
Пишем обработчик для запрета на изменение поля в коробке Битрикс24

Начнем с того, что все кастомные обработчики находятся в папке /local/php_interface/[название папки с обработчиками], можно назвать include или custom-init. В папке /local/php_interface/ должен быть файл init.php, если его там нет, создайте. В этом файле нужно написать следующий код.

if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) die();
foreach (glob("{$_SERVER["DOCUMENT_ROOT"]}/local/php_interface/custom-init/*.php") as $customInit) { // путь до ваших…</body

https://set-b24.ru/pishem-obrabotchik-dlya-zapreta-na-izmenenie-polya-v-korobke/
🔥1
Обработчик для Битрикс24: Последний комментарий не от ответственного

Давайте представим, что у нас есть задача фиксировать Последний комментарий из Таймлайна смарт-процесса в отдельное поле. Но фиксировать не каждый комментарий, а только от пользователей не являющимися ответственными по элементу. Ниже будет приведен готовый код, который фиксирует последний комментарий не от ответственного и раскрашивает сам комментарий в фиолетовый цвет.

AddEventHandler('crm', 'OnAfterCrmTimelineCommentAdd', 'handleNewComment');

function handleNewComment($commentId)…</body

https://set-b24.ru/obrabotchik-dlya-bitriks24-poslednij-kommentarij-ne-ot-otvetstvennogo/
❤1
Как запустить свой обработчик в Битрикс24

Все кастомные обработчики находятся в папке /local/php_interface/[название папки с обработчиками], можно назвать include или custom-init. В папке /local/php_interface/ должен быть файл init.php, если его там нет, создайте. В этом файле нужно написать следующий код.

if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) die();
foreach (glob("{$_SERVER["DOCUMENT_ROOT"]}/local/php_interface/custom-init/*.php") as $customInit) { // путь до ваших обработчиков
require_once $customInit;

}…</body

https://set-b24.ru/kak-zapustit-svoj-obrabotchik-v-bitriks24/
👍1
Получение множественного списка ID из переменной и преобразование списка в строку в Бизнес-процессе Битрикс24

Данное решение подойдет для коробочной версии Битрикс24. Мы с вами с помощью активити PHP-код примем на вход список ID сущностей CRM и вернем весь этот список в виде строки через запятую.

Код, который формирует строку с URL, разделёнными запятыми (вместо переноса строк), в формате Markdown-ссылок:

// 1. Получаем массив ID
$rawIDs = $this->GetVariable('ids'); // Тут…

https://set-b24.ru/poluchenie-mnozhestvennogo-spiska-id-iz-peremennoj-i-preobrazovanie-spiska-v-stroku-v-biznes-proczesse-bitriks24/
Убираем ковычки из текста с помощью PHP активити в бизнес-процессе

Сегодня мы с вами с помощью PHP кода уберем ковычки из текста в переменной Variable1 и сохраним его уже без ковычек в Variable2, а также запишем логи в переменную Variable3.

// 1. Получаем данные из Variable1
$input = $this->GetVariable('Variable1');
if ($input === null) {
$input = '';
}

// 2. Создаем лог
$log = "===…

https://set-b24.ru/ubiraem-kovychki-iz-teksta-s-pomoshhyu-php-aktiviti-v-biznes-proczesse/
PHP-код активити проверки на дубли по пользовательскому полю

В этой статье мы разберем с вами пример кода для PHP активити (коробочный Битрикс24), который позволит нам проверять на дубли компанию или контакт при добавлении по пользовательскому полю.

// 1. Указываем поле для проверки дублей
$fieldToCheck = 'UF_CRM_1749400867028';

// 2. Получаем значение ПОЛЯ из переменной бизнес-процесса
$sellerIDToCheck = trim($this->GetVariable('Наш_ID'));

// 3. Инициализируем результаты
$result =…

https://set-b24.ru/php-kod-aktiviti-proverki-na-dubli-po-polzovatelskomu-polyu/
Уведомление в Band с помощью PHP кода (активити)

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

$webhookUrl = 'https://band.ru/hooks/**';

// Формируем сообщение
$message = " n"
. "n"
. "{=Variable:Variable2}";

// Подготовка данных…

https://set-b24.ru/uvedomlenie-v-band-s-pomoshhyu-php-koda-aktiviti/
Как получить номер дня недели в бизнес-процессе Битрикс24

Создаем в бизнес-процессе переменные: Номер дня недели тип Целое число код week_day_number и День недели тип Список код week_day_name:

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

Чтобы получить Номер дня недели будем использовать функцию date, в параметр Формат которой передаем значение…

https://set-b24.ru/kak-poluchit-nomer-dnya-nedeli-v-biznes-proczesse-bitriks24/
Определяем одно слово в поле или больше с помощью активити PHP в Битрикс24

Давайте представим задачу, что нам нужно массово проверить 100 000 компаний. К примеру нам надо определить, что в поле содержится город и если в поле город скопировать его в другое поле. Мы понимаем, что город это всегда одно слово, поэтому если слов больше, то это не город и копировать его не нужно. Пишем короткий PHP…

https://set-b24.ru/opredelyaem-odno-slovo-v-pole-ili-bolshe-s-pomoshhyu-aktiviti-php-v-bitriks24/
PHP код, который очищает название товара типа текст от HTML Тегов

К примеру мы хотим куда-то, для каких-то целей строкой выводить название товара, товаров. Стандартно Битрикс24 выводит название из поля типо текст с HTML тегами и так далее. Давайте напишем код, который будет очищать название от лишних символов и выводить в переменную Variable2 чистое название.

// 1. Получаем данные из Variable1
$input = $this->GetVariable('Variable1');
if ($input…

https://set-b24.ru/php-kod-kotoryj-ochishhaet-nazvanie-tovara-tipa-tekst-ot-html-tegov/
Форматирование сообщений в Битрикс24 (BB-code)

Для оптимизации работы и форматирования сообщений можно использовать — BB-коды.

Как использовать BB-код в чатах, в уведомлениях, в задачах, в бизнес-процессах и роботах.

BB-код — это язык разметки для форматирования сообщений. Он состоит из тегов, заключенных в квадратные скобки. Разберем на примерах.

Выделить текст полужирным. Используйте BB-код — [B][/B]. Текст вставьте между тегами [B] и…

https://set-b24.ru/formatirovanie-soobshhenij-v-bitriks24-bb-code/
Смена ответственного у сделки (PHP-активити)

Скрипт для Bitrix24, который меняет ответственного за сделку.Основные действия:

1. Проверяет подключение модуля CRM.
2. Получает ID сделки и ID нового ответственного из переменных процесса (Variable2 и manager_r).
3. Обрабатывает данные:

- Если значение — массив, берёт первый элемент.
- Если ID ответственного в формате user_123, извлекает числовой ID.

4. Обновляет сделку: устанавливает нового ответственного…

https://set-b24.ru/smena-otvetstvennogo-u-sdelki-php-aktiviti/
Смена стадии сделки (PHP-активити)

PHP-скрипт для Битрикс24 CRM, меняет стадию сделки.Основная логика:

1. Проверяет подключение модуля CRM (crm).
2. Получает ID сделки (Variable2) и новую стадию (STAGE_ID) из переменных.
3. Если значения — массивы, берёт первый элемент.
4. Преобразует ID сделки в целое число.
5. При валидном ID (> 0) и непустой стадии обновляет стадию сделки через CCrmDeal::Update().

Особенности:…

https://set-b24.ru/smena-stadii-sdelki-php-aktiviti/