Передаем контакты из 1С в Битрикс24 через REST API

0. Андрей Андреев (user662672_explorer2000) 46 09.01.17 09:01 Сейчас в теме
Хочу поделиться опытом использования Битрикс24 REST API для экспорта контактов из 1С УТ 11

Перейти к публикации

Комментарии
1. script Мальчинко (script) 198 09.01.17 20:07 Сейчас в теме
У меня к Вам огромная просьба. Покажите пожалуйста в какую сторону копать если нужно передавать из 1С реализации а в битрикс 24 загружать "Сделки"
2. Андрей Андреев (user662672_explorer2000) 46 10.01.17 08:38 Сейчас в теме
Добрый день! Смотрите офф документацию, в частности по сделкам http://dev.1c-bitrix.ru/rest_help/crm/cdeals/index.php. Для создания сделки используйте метод crm.deal.add. Перечень передаваемых полей доступен там же. Такой сущности, как реализация нет в Битрикс24, возможно это счета? по ним вся информация здесь http://dev.1c-bitrix.ru/rest_help/crm/invoice/index.php. Там примеры к сожалению только на js, так что пробуйте и смотрите что возвращается в качестве ответа. Если ошибка, то будет описание ошибки.
3. bulpi bulpi (bulpi) 113 10.01.17 14:03 Сейчас в теме
Люди, а вы не в курсе, что существует вот это :
http://1c.1c-bitrix.ru/intranet/download.php
Там готовые модули, в частности для УТ 11.1 есть.
Выгружаются организации, контрагенты, контактные лица партнеров, реализации....
Но плюс поставлю, т.к. метод реализован другой.
4. Андрей Андреев (user662672_explorer2000) 46 10.01.17 14:39 Сейчас в теме
Тут неверно я указал привязку к УТ. Данный код можно использовать в любой конфигурации, даже под которую нет готовых модулей. Да и функционал можно реализовать какой угодно, т.к. доступен любой метод REST API
5. script Мальчинко (script) 198 10.01.17 18:52 Сейчас в теме
(3) И не только смотрели, но и внедрили. Только когда внедрили, то оказалось что это полная ерунда.
Выгружает
Из 1С контрагенты в Б24 в клиенты
Из 1С конт. лица в Б24 в контакты
Из 1С все (любые) документы в Б24 в Дела
И все.

А внутри просто шлак. Запросы к базе через две точки.
Обращение к несуществующим полям в справочниках из-за которых все это сразу вываливается в ошибки.
Пишешь на поддержку - тебе дают 1С-ника, который лезет в запросы. Начинает там начинает ограничивать поля неограниченной длины - при тебе.
А сам модуль добавляет столько мусора, столько лишних объектов, что только из-за этого уже начинаешь жалеть что связался с ним.
Aquashop; Starec_I; +2 Ответить 1
6. script Мальчинко (script) 198 11.01.17 03:28 Сейчас в теме
И еще один вопрос.
Это доступ через REST API работает и на облачной версии или только в коробке?
7. Андрей Андреев (user662672_explorer2000) 46 11.01.17 06:32 Сейчас в теме
На облачной работает точно, проверялось на ней. С коробочной не проверял, ее просто нет.
8. Александр Кунташов (kuntashov) 357 12.01.17 17:25 Сейчас в теме
(6) Все нововведения у Б24 сначала в облаке. В коробке REST API добавили совсем-совсем недавно.
9. Александр Прокопенко (alprk) 13.01.17 10:15 Сейчас в теме
Спасибо что поделились, как раз собирались городить свои костыли к Б24))
10. Александр Прокопенко (alprk) 13.01.17 10:36 Сейчас в теме
Удивило что вы сделали авторизацию по логину и паролю. Почему бы не получить токен единожды, регулярно его обновляя?
Хотя конечно определенные плюсы в этом есть, особенно если вызовы нерегулярные. Я например даже не думал что оно даст авторизоваться по Basic, даже через curl проверил сейчас что оно работает, но вдруг перестанет (в документации ведь об этом ни слова).
11. Андрей Андреев (user662672_explorer2000) 46 13.01.17 12:20 Сейчас в теме
(10) Я вроде бы так и хотел сделать) Первоначально по логину и пароль получаю AccessToken и RefreshToken. Далее если время жизни токена истекло, уже обновляю его.
12. Alister (Alister) 9 24.04.17 20:01 Сейчас в теме
(5) еще замечательная поддержка, которая долго ищет какой релиз какой редакции УТ 11 минимально нужен для работы с Б24, а потом не могут объяснить какой же модуль используется для интеграции с УТ - трекер или модуль обмена с сайтом и чем они отличаются.
13. Олеся Н (user755384) 20.05.17 00:17 Сейчас в теме
Большое спасибо за статью! Очень помогла. Если знаете, подскажите, пожалуйста, в каком виде параметры (СтрПараметров) передавать в функцию для добавления товарных позиций к сделке. (crm.deal.producrows.set). Передаю
СтрПараметров = "id="+ИДСделки+
"&rows[PRODUCT_ID]="+ИдТовара+
"&rows[PRICE]="+"100"+
"&rows[QUANTITY]=1";
Ошибки не выдает, но и товары не добавляет.
14. Андрей Андреев (user662672_explorer2000) 46 22.05.17 06:47 Сейчас в теме
Вам нужно переделать передачу параметров вот так:

СтрПараметров = "id="+ИДСделки+

"&rows[0][PRODUCT_ID]="+ИдТовара1+
"&rows[0][PRICE]="+"100"+
"&rows[0][QUANTITY]=1"+

"&rows[1][PRODUCT_ID]="+ИдТовара2+
"&rows[1][PRICE]="+"500"+
"&rows[1][QUANTITY]=5";

Рез = ОтправитьRESTЗапрос("crm.deal.productrows.set", СтрПараметров, "");
15. Дмитрий Деулин (dimasts) 22 02.06.17 19:22 Сейчас в теме
Если авторизоваться по токену а не по логину и паролю, получится [ASSIGNED_BY_ID] правильно передавать??? Кто нибудь пробовал?

Просто это то, ради чего мы затеваем всю интеграцию :)
16. Андрей Андреев (user662672_explorer2000) 46 05.06.17 08:39 Сейчас в теме
Первоначальная регистрация по логину\паролю. Вы получаете токен время жизни которого ограничено. По истечении этого времени Вы обновляете токен без использования логина\пароля. Нужен старый токен, client_id и client_secret. Посмотрите процедуру ПроверитьТокен(). ASSIGNED_BY_ID присваивается автоматом. По идее его и в параметрах можно передавать, но у меня всегда ответственный тот, под кем я залогинился. Возможно нужны администраторские права. Точно не знаю.
mila_nikolaeva; dimasts; +2 Ответить
17. Дмитрий Деулин (dimasts) 22 30.06.17 07:42 Сейчас в теме
ASSIGNED_BY_ID сделал равным 2
Контакт создался с ответственным с чужого портала!
Чё так правда можно?!
NewLifeMan; +1 Ответить
18. Дмитрий Деулин (dimasts) 22 09.07.17 09:27 Сейчас в теме
В названии надо использовать слово «Забираем», а не «Передаём», так как передать из Битрикс24 что либо в 1с ни фига не просто. Создать http-сервис и зарегистрировать обработчик события в Битрикс24 дело не хитрое. А вот как заставить эти события срабатывать и переходить по запросам, которые к ним привязаны? Причём этот запрос в браузере работает как часы. а тут ещё Заговор
19. Дмитрий Деулин (dimasts) 22 09.07.17 15:11 Сейчас в теме
(18)Причина была в том что в 1с метод был установлен GET. Лучше сначала устанавливать Любой, чтобы проверить, а потом уже определяться с каким работать.
20. Андрей Андреев (user662672_explorer2000) 46 10.07.17 07:47 Сейчас в теме
(18) Контакты все же мы передаем (экспортируем или назовите как хотите, сути не меняет) из 1С в Битрикс24. О чем Вы пишите не тема статьи. Хотите забирать информацию из Битрикс24? Делайте аналогично, забирайте контакты с фильтром по незаполненности ORIGIN_ID например. При записи контакта в 1С пишите его GUID в ORIGIN_ID
Оставьте свое сообщение