понедельник, 18 декабря 2017 г.

Интеграция Битрикс и 1С: обмен статусами заказа между 1С УТ 10.3 и 1С-Битрикс 17.0 на базе модуля обмена 7.0 - кейс

В предыдущем посте я писала о том, как не удобен моим клиентам тот факт, что в 1С УТ 10.3 нет статусов заказа и, соответственно, нет возможности полноценно обмениваться информацией о статусах заказа с 1С-Битрикс.

В этом посте я приведу один из вариантов решения данной проблемы:

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

В дальнейшем этот реквизит доступен нам для того, чтобы вывести его в карточке заказа в 1С:

А так же для использования в коде модуля обмена 7.0 для обмена с 1С-Битрикс. Например, мы можем написать так в теле функции Функция ВыгрузитьЗаказXDTO перед тем, как идет выгрузка статуса заказа (а она там идет, несмотря на то, что в самой 1С УТ 10.3 нет изначально статусов для заказа):

Если Документ.Проведен и не Документ.Отменен и не Документ.Отгружен и не Документ.Оплачен Тогда
лСтатусЗаказа="C";
КонецЕсли;
Если Документ.Проведен и не Документ.Отменен и Документ.Отгружен и Документ.Оплачен и Строка(Документ.Заказ.Статус)="Закрыт" Тогда
лСтатусЗаказа="F";
КонецЕсли;

Или мы можем запрограммировать любую другую логику проверки флагов и статуса заказа и передачи соответствующего статуса на сайт на уровне кода. Данный вариант никаким образом не ломает стандартный обмен заказами и передачу флагов отгрузки и оплаты и при этом позволяет давать на сайт обратную связь о состоянии заказа гораздо более полно.

Подобным образом можно организовать и обмен статусами отгрузок - реализаций.

4 комментария:

sin комментирует...

Спасибо, очень помогли. Я — ваш фанат)

sin комментирует...

А что это за статус такой, "C"?

sin комментирует...

Сonfirmed?

Unknown комментирует...

Добрый, реализовала такую логику. 1С-Битрикс 17.8 в связке с модулем обмена 7.0.1.5. На сайт попадает xml со значением реквизита "Сатуса заказа ИД". Но на сайте заказ не меняется. Галочка менять статусы в настройках сайта проставлена. С УТ 11 xml отличается версией, там 2.08, а в УТ 10.3 версия 3.0. И стукрутра xml включает в себя элемент Контейнер между "Коммерческая информация" и "Документ". Не сможете подсказать причина в этом, или что другое. Получается что сайт меняет статусы у заказов если к нему приходит структура xml 2.08, а 3.0 игнорирует