Bitrix24: заполнение списка значений поля смарт-процесса через вебхук

21.08.23

Интеграция - WEB-интеграция

Заполняем значения пользовательского поля смарт-процесса Bitrix24 через вэбхук из 1С. Пример рабочего кода на платформе 8.3.23.1782.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Bitrix24 заполнение списка значений поля самт-процесса через вебхук:
.epf 8,43Kb
1 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Добрый день.

Поступила задача заполнять список значений поля смарт-процесса из 1С через веб-хук, так как толком нет информации, то вот мой вариант. На infostart.ru это моя первая статья, прошу сильно не пинать.

В Битриксе есть функция "userfieldconfig.update", которая обновляет пользовательское поле смарт-процесса, особенность в том, что если поле имеет тип список, то добавить значение нелья, можно только заменить массив, где параметр "field?userTypeId=enumeration" обязателен. Параметр "enum" массив значений с лимитом 460 записей. Для создания нового значения достаточно указать значение(value), для обновления надо указать ID и новое значение(value).

Для получения ID пользовательского поля использовал функцию "userfieldconfig.list" со значением" crm" в параметре "moduleId".

https://Адрес/rest/НомерРест/ТипоТокен/userfieldconfig.list?moduleId=crm

Далее выявил ID поля, у меня это 942.

Формат передачи через адресную строку:

https://Адрес/rest/НомерРест/ТипоТокен/userfieldconfig.get?id=942&moduleId=crm&field?userTypeId=enumeration&enum[0][value]=тест

 

в 1С это выглядит так:

	НомерСТроки = 0;

	СтрокаПараметров = "id="+ИДСписка+"&moduleId=crm&field[userTypeId]=enumeration";

	Для Каждого СтрокаТЗ из ТЗ ЦИКЛ
		
       //Если у нас есть ID то обновляем значение
		Если ЗначениеЗаполнено(СтрокаТЗ.IDBitriex24) тогда
			СтрокаПараметров = СтрокаПараметров +"&field[enum]["+Формат(НомерСТроки,"ЧГ=0")+"][id]="+СокрЛП(СтрокаТЗ.IDBitriex24);
		КонецЕсли; 
		
		СтрокаПараметров = СтрокаПараметров +"&field[enum]["+Формат(НомерСТроки,"ЧГ=0")+"][value]="+СокрЛП(СтрокаТЗ.Наименование);
		
		НомерСТроки=НомерСТроки+1;
        // Проверка на лимит записей.
		Если  НомерСТроки = 460 тогда
			Прервать; 
		КонецЕсли;
		
				
	КонецЦИкла;
	
	// 1С "0" добвляет как ""
	СтрокаПараметров = СтрЗАменить(СтрокаПараметров,"[]","[0]");
	
	AccessToken = "";
	Сервер = "";
	ИдХука = "";

	АдресБитрикс24 = "/rest/"+ ИдХука+ "/" + AccessToken + "/" ;	
	SSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows(), Новый СертификатыУдостоверяющихЦентровWindows());
	Соединение = Новый HTTPСоединение(Сервер+АдресБитрикс24,,,,, 0, SSL);
	
	RESTЗапрос ="userfieldconfig.update";						 
	Заголовки = Новый Соответствие;
	Запрос = Новый HTTPЗапрос(RESTЗапрос + "?" , Заголовки);
	Запрос.УстановитьТелоИзСтроки( СтрокаПараметров);
	Ответ = Соединение.ОтправитьДляОбработки(Запрос);
	
	// Модуль добавления ID в базу	 
	

Использую метод POST, так как количество передаваемых символов больше 2000.

Особенности функции "userfieldconfig.update" - некоторые символы заменяет на пробелы, к примеру, строку "Тест+1" запишет как "Тест 1", также если есть одинаковые значение "value", обновления не произойдёт, и код ответа будет 200.

Обработка выгрузит выбранный справочник в список значений пользовательского поля. При добавлении в 1С реквизита справочника IDBitriex24 будет выполнено обновление значения. Кода записи и сопоставления полученного ID в 1С нет.

Вступайте в нашу телеграмм-группу Инфостарт

Bitrix24 список значений самт-процесс вебхук

См. также

WEB-интеграция Программист Бизнес-аналитик 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

Модуль "Экспортер" — это расширение для 1С, предназначенное для автоматизации процессов выгрузки данных. Оно позволяет эффективно извлекать, преобразовывать и передавать данные из систем 1С в интеграционную платформу Spot2D. Подсистема упрощает настройку, снижает количество ручных операций и обеспечивает удобный контроль данных.

17568 руб.

20.12.2024    6533    28    4    

30

WEB-интеграция Программист 1С:Предприятие 8 1С:Бухгалтерия 3.0 Бытовые услуги, сервис Платные (руб)

Расширение для автоматизации передачи данных между сервисом Vetmanager с 1С: Бухгалтерия 3.0. Решение позволяет загружать документы и справочники из Ветменеджер в 1С:Бухгалтерию, сокращая время на ручной ввод данных и минимизируя ошибки.

24000 руб.

02.02.2021    23299    70    52    

43

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь 1С:Предприятие 8 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM / LOGICSTARS. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM / LOGICSTAR разных брендов в одной информационной базе в ручном и автоматическом режиме.

42700 руб.

03.08.2020    24579    37    26    

28

WEB-интеграция Системный администратор Программист Пользователь 1С:Предприятие 8 1C:Бухгалтерия 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена по API между конфигурацией 1С:Альфа-Авто 6 и порталом LogicStar. Позволяет работать с несколькими обменами LogicStar разных брендов (CHERY, OMODA, JAECOO, EXEED, TENET) в одной информационной базе в ручном и автоматическом режиме. Поддерживается выгрузка заказ-нарядов, реализаций товаров и товарных остатков.

20740 руб.

13.05.2025    2301    2    0    

5
Для отправки сообщения требуется регистрация/авторизация