Как дописать обмен с Битрикс не меняя конфигурацию

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

Самая частая задача в доработке обмена с сайтом на Битрикс — дописать логику загрузки Заказов клиентов. Давайте рассмотрим один из наших реальных кейсов.

Постановка задачи

Наш клиент переходил с УТ 10.3 на УТ 11.4. Задача от клиента звучала так:

Обмен с сайтом. Синхронизация по коду клиента
В обмене с сайтом на УТ 10 была синхронизация по коду клиента. Менеджеры переносили руками код справочника Контрагенты при заведении клиента на сайте.
В модуле обмена битрикс в УТ 10 я правил, чтобы если этот код передавали — то искалось по нему.

Надо сделать так же, поскольку иначе начинает создавать новых клиентов, а не подвязывать старых. 
При этом посмотрите, пожалуйста, вполне возможно, что это можно реализовать настройками, без изменения кода обмена как со стороны сайта, так и со стороны 1С. Программисты, которые были до вас, не смогли найти такие настройки, если они есть ))
Здесь может быть нюанс, что при переносе справочника Контрагенты -> Партнеры — мог удлиниться код.

Т.е. с сайта в Заказе клиента приходило поле «Код контрагента», в котором был код партнера из 1С. Но данный код мог содержать «лишние» нули. Более того, мы не знали, сколько лишних нулей в каждом конкретном коде.
Пример:
Код из УТ 10.3: 00002714
Код из УТ 11.4: 00000002714
Код из УТ 10.3: 0002715
Код из УТ 11.4: 00000002715

Что было сделано

Мы внесли изменения в алгоритм поиска Партнера: научили 1С брать код клиента из заказа, удалять из него лидирующие нули. Далее искать по оставшемуся коду партнеров в 1С, затем обходить найденных, и сравнивать код из заказа без лидирующих нулей с кодом партнера без лидирующих нулей. Если совпадают — подставлять Партнера в заказ. Если не совпадают или код партнера пустой — партнер не заполняется. 
Все изменения внесены в режиме «1С:Предприятие», без изменения кода 1С или сайта.

Как дописать обмен с Битрикс не меняя конфигурацию

1. Зйти в настройки обмена документами:

Как дописать обмен с Битрикс не меняя конфигурацию. Открываем настройки

2. Нажать «Настроить реквизиты загружаемых в 1С документов»:

Как дописать обмен с Битрикс не меняя конфигурацию. Настроить реквизиты загружаемых в 1С документов

3. Выделить мышкой заказ клиента и нажать «Настроить соответствия реквизитов»:

Настроить соответствия реквизитов

4. Найти партнера и поставить тип данных «Свой алгоритм»:

Как дописать обмен с Битрикс не меняя конфигурацию. Тип данных - <Свой алгоритм>

5. «Провалиться» в выбор значения:

Выбор значения

6. Написать нужный код. Синтаксис почти не отличается от стандартного кода 1С и описан прямо в выборе значения:

Пример нашего кода

Заключение

Подобным образом можно писать почти любые алгоритмы. Единственный минус тут — нельзя отладчиком остановиться и проверить, что происходит внутри вашего кода. Но это малая плата за то, чтобы оставить модуль Битрикс типовым.
Надеемся, данная статья была полезна и сэкономит вам кучу времени при обновлении конфигурации и модуля обмена «Битрикс».

Также вы можете заказать у нас настройку и доработку обмена с Битрикс

Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии