Блокировка поля при изменении без разработки и маркета
Можно написать локальное приложение и установить готовое решение из Маркетплейса Битрикс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/
Блокировка поля при изменении без разработки и маркета
Можно написать локальное приложение и установить готовое решение из Маркетплейса Битрикс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/
Если по каким-то причинам у вас нет возможности установить готовое приложение из Битрикс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/
Давайте представим, что вы автоматически ставите задачу роботом или активити и через какое-то время или по определенному условию вам нужно обновить крайний срок. Как это сделать? Рассмотрим ниже..
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. Создадим переменную 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. Создадим БП. Вот так выглядят настройки БП.
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/
В каких-то случаях нам может быть недостаточно логирования в Журнале событий или 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/
Начнем с того, что все кастомные обработчики находятся в папке /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/
Давайте представим, что у нас есть задача фиксировать Последний комментарий из Таймлайна смарт-процесса в отдельное поле. Но фиксировать не каждый комментарий, а только от пользователей не являющимися ответственными по элементу. Ниже будет приведен готовый код, который фиксирует последний комментарий не от ответственного и раскрашивает сам комментарий в фиолетовый цвет.
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/
Все кастомные обработчики находятся в папке /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/
Данное решение подойдет для коробочной версии Битрикс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 кода уберем ковычки из текста в переменной 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/
В этой статье мы разберем с вами пример кода для 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/
При отправке через обычный исходящий вебхук, хандлером, бывает возникает ошибка и уведомление не отправляется. Чаще всего происходит это из-за ограничения в кол-ве символов. С помощью 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/
Создаем в бизнес-процессе переменные: Номер дня недели тип Целое число код 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/
Давайте представим задачу, что нам нужно массово проверить 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 выводит название из поля типо текст с 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/
Для оптимизации работы и форматирования сообщений можно использовать — 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/
Скрипт для 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/
Полезные настройки в Битрикс24
Смена ответственного у сделки (PHP-активити) – Полезные настройки в Битрикс24
Скрипт для Bitrix24, который меняет ответственного за сделку.Основные действия: 4. Обновляет сделку: устанавливает нового ответственного через CCrmDeal::Update().…
Смена стадии сделки (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/
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/
Полезные настройки в Битрикс24
Смена стадии сделки (PHP-активити) – Полезные настройки в Битрикс24
PHP-скрипт для Битрикс24 CRM, меняет стадию сделки.Основная логика: Особенности: Скрипт предназначен для использования в бизнес-процессах или автоматизации Битрикс24…