Отладка обмена с web-сайтом на Битрикс

04.04.16

Интеграция - Сайты и интернет-магазины

Часто возникает необходимость отладки обмена между 1С и web-сайтом на Битрикс. Разберемся, какие инструменты есть для этого...

Мне часто приходится заниматься интеграцией 1С с интернет-магазинами на Битрикс, и часто возникают непонятные ситуации при обмене на стороне сайта, и без пошаговой отладки много времени уходит на выяснение причин этих ошибок...

Расскажу, чем пользуюсь я в этих случаях.

Что нам понадобится:

1. Вирутальная машина битрикс, я пользуюсь версией под VirtualBox

2. Среда разработки PHP, я пользуюсь phpStorm

Теперь что делаем:

1. Устанавливаем VirtualBox и запускаем в нем скачанную виртуальную машину Битрикс, предварительно настроив сетевое подключение:

После запуска виртуальной машины мы увидим ip адрес виртуальной машины, с помощью этого адреса и зайдем на свеже развернутый сайт

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

Пока резервная копия разворачивается, нужно включить модуль xdebug в вирутальной машине, он там уже есть, просто отключен. Заходим в консоль BitrixVM под root (стандартный пароль bitrix).  И добавляем в файл  /etc/php.d/15-xdebug.ini следующий текст:

 

zend_extention=/usr/lib64/php/modules/xdebug.so
xdebug.remote_enable=on
xdebug.remote_host=192.168.99.150  // ip адрес вашего компьютера
xdebug.remote_port=9000
xdebug.idekey=phpstorm

затем? после восстановления резервной копии сайта, нужно перезагрузить виртуальную машину.

для проверки правильности работы xdebug можно посмотреть информацию в /phpinfo.php, должно быть так:


Теперь настроим PhpStorm. Создаем новый проект из существующих файлов: меню File - New project from existing files... и выбираем расположение файлов на удаленном сервере через SFTP:

Дальше указываем имя проекта и путь к нему, Далее указываем адреса sftp и http нашей виртуальной машины Битрикс, Далее будет предложено выбрать путь на sftp сервере загрузки файлов проекта:

 

выбираем путь /home/bitrix/www и жмем ProjectRoot.

Пока проект синхронизирует файлы, перейдем к 1С:

Нам понадобится добавить в план обмена Б_ОбменССайтом строковый реквизит - КлючОтладки, 10 символов достаточно, и вынести этот ревизит на форму узла. И в общем модуле Б_ОбщиеПроцедурыИФункцииОбменаССайтом в функции ПолучитьДанныеССервера изменить первые строки кода следующим образом:

     Если ПараметрыОбмена.Ссылка.КлючОтладки <> "" Тогда
		КодОтладки =  "&XDEBUG_SESSION_START=" + ПараметрыОбмена.Ссылка.КлючОтладки;
	Иначе
		КодОтладки = "";
	КонецЕсли;
	
	ИмяФайлаОтвета = ПолучитьИмяВременногоФайла();
	
	Попытка
		
		Соединение.Получить(СокрЛП(ПараметрыЗапроса) + КодОтладки, ИмяФайлаОтвета, СокрЛП(Заголовки));
		
	Исключение
		
		СообщитьПодробно("Не удалось получить данные с сервера. Проверьте правильность адреса сервера, порт, имя пользователя и пароль," + Символы.ПС + "а также настройки подключения к Интернет.", ПараметрыОбмена)
		
	КонецПопытки;

Теперь запускаем нашу конфигурацию на отладку, форме узла плана обмена указываем КлючОтладки "phpstorm". В PhpStorm включаем ожидание отладки кнопкой:

Теперь включаем точки останова на необходимом коде обмена с 1с, например:

и запускаем обмен из 1С, как только дойдет исполнение на сервере до этого участка, в PhpStorm перехватит выполнение и остановит на указанной строке...

Будут вопросы - задавайте!

Битрикс bitrix

См. также

Сайты и интернет-магазины Платформа 1С v8.3 1С:Розница 3.0 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Готовое интеграционное решение для оплаты покупок Долями в 1C:Розница 3.0. Реализовано в виде расширения. Интеграция сервиса dolyame.ru для приема платежей в рассрочку. Поддерживает работу от разных юридических лиц. Работа: в составе РИБ, отдельно от РИБ, тонкий, толстый клиент, web-клиент (через интернет-браузер). Интегрировано в Чек ККМ, Рабочее место кассира (РМК)

24000 руб.

02.11.2024    1293    10    0    

8

Сайты и интернет-магазины Платформа 1С v8.3 1С:Розница 2 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Интеграция сервиса dolyame.ru с 1С:Розница 2.3 для приема платежей в рассрочку. Готовое интеграционное решение для оплаты покупок Долями в 1C:Розница 2.3. Реализовано в виде расширения. Интеграция сервиса dolyame.ru для приема платежей в рассрочку. Поддерживает работу от разных юридических лиц.Работа: в составе РИБ, отдельно от РИБ, тонкий, толстый клиент, web-клиент (через интернет-браузер).

22440 руб.

19.12.2023    7363    46    12    

42

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

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

36000 руб.

03.08.2020    19368    24    22    

20

Прайсы Оптовая торговля Сайты и интернет-магазины Программист Пользователь Платформа 1С v8.3 Оперативный учет Управляемые формы 1С:Управление торговлей 11 Транспорт, автопарки, такси Управленческий учет Платные (руб)

Внешняя обработка адаптирована для 1C: УТ 11, предназначена для наполнения вашей базы данных товарами и сопутствующей информацией, предоставляемой b2b.4tochki.ru, обновления остатков и цен.

8160 руб.

31.01.2020    32467    17    7    

16

Сайты и интернет-магазины Программист Пользователь Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Платные (руб)

Данный модуль предоставляет возможность выгружать заказы из 1С: Управление торговлей 11 версии в "MEASOFT" (ранее "Курьерская служба 2008").

9600 руб.

27.04.2022    11880    21    3    

12

Оптовая торговля Розничная торговля Сайты и интернет-магазины Системный администратор Программист Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Внешняя обработка для обмена данными с интернет-магазином OpenCart. Позволяет быстро наполнить магазин товарами, затем обновлять цены и добавлять новые товары. Далее можно средствами OpenCart настраивать и дополнять карточки товаров как надо для магазина, при этом связь товаров с 1С не теряется.

3840 руб.

30.03.2018    46399    88    139    

90
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. script 128 05.04.16 00:21 Сейчас в теме
Будьте добры. Пожалуйста, продолжайте статьи по этой теме с примерами. Это очень актуально.
2. capitan 2618 05.04.16 21:45 Сейчас в теме
4. Артано 798 24.06.16 10:14 Сейчас в теме
(2) Неужели это бессовестный плагиат?!
5. vital1c 98 24.06.16 15:06 Сейчас в теме
(4) Артано, конечно плагиат, плагиат мануалов phpstorm и xdebug
3. invertercant 22 06.04.16 17:37 Сейчас в теме
Хотел написать похожую статью по отладке на php в eclipse из 1с, но что то откладывал все.
6. FreeArcher 163 23.03.18 09:53 Сейчас в теме
Получилось!!
Автору спасибо, как я давно хотел разобраться с удалённой отладкой.

Я бы ещё в статью добавил скрин настройки отладки из phpstorm


И у меня вопросы к автору или тем, кто в теме.
Можете показать файлы в которых происходит обработка обмена с 1С. Не сам старт а именно внутренняя логика, в которую и хочется залезть попробовать разобраться? Я сам пока запутался.
Прикрепленные файлы:
7. пользователь 12.01.21 11:34
Сообщение было скрыто модератором.
...
8. Светлый ум 454 12.07.24 06:58 Сейчас в теме
+1
Отладка битрикс (в копилку)
Оставьте свое сообщение