Для публикации информации о товарах на сайте, приема и обработки заказов и каталогов товаров из системы "1С:Предприятие 8" существует открытый протокол взаимодействия WEB-сайта и прикладной торговой системы.
В данной статье речь пойдет о выгрузке каталогов продукции на сайт
Для публикации информации о товарах на сайте, приема и обработки заказов и каталогов товаров из системы "1С:Предприятие 8" существует открытый протокол взаимодействия WEB-сайта и прикладной торговой системы.
Обмен можно разделить на два процесса:
1. Выгрузка каталогов продукции на сайт.
2. Прием информации о заказах.
Первый процесс обеспечивает публикацию на сайте каталога продукции, второй - получение в информационную систему данных о заказах с сайта и синхронизацию статусов заказов.
Выгрузка каталогов продукции
Каталоги продукции для публикации на сайте выгружаются одним пакетом.
Начало сеанса
Выгрузка каталога начинается с отправки системой "1С:Предприятие 8" http-запроса следующего вида:
http://<сайт>/<путь>/1c_exchange.php?type=catalog&mode=checkauth.
В ответ система управления сайтом передает системе "1С:Предприятие 8" три строки (используется разделитель строк "\n"):
слово "success", имя Cookie, значение Cookie.
Все последующие запросы к системе управления сайтом со стороны "1С:Предприятия 8" содержат в заголовке запроса имя и значение Cookie.
Запрос параметров от сайта
Затем следует запрос:
http://<сайт>/<путь>/1c_exchange.php?type=catalog&mode=init
В ответ система управления сайтом передает две строки:
1. zip=yes, если сервер поддерживает обмен в zip-формате - в этом случае на следующем шаге файлы должны быть упакованы в zip-формате, или zip=no - в этом случае на следующем шаге файлы не упаковываются и передаются по отдельности.
2. file_limit=<число>, где <число> - максимально допустимый размер файла в байтах на один запрос. Если потребуется передать файл большего размера, его следует разделить на фрагменты.
Выгрузка на сайт
"1С:Предприятие 8" формирует запросы вида:
для выгрузки на сайт файлов в формате CommerceML. Обмен происходит в виде POST.
В случае успешной записи файла система управления сайтом выдает строку "success".
Пошаговая загрузка каталога
Из "1С:Предприятия 8" производится пошаговая загрузка каталога по запросу с параметрами вида:
http://<сайт>/<путь>/1c_exchange.php? type=catalog&mode=import&filename=<имя файла>
При загрузке система управления сайтом направляет ответ в одном из следующих вариантов.
1. Если в первой строке содержится слово "progress", это означает необходимость послать тот же запрос еще раз. В этом случае во второй строке будет возвращен текущий статус обработки, объем загруженных данных, статус импорта и т. д.
2. Если в ответ передается строка со словом "success", то это будет означать сообщение об успешном окончании обработки файла.
3. Если в ходе запроса произошла ошибка, то в первой строке ответа будет содержаться слово "failure", а в следующих - описание ошибки.
4. Если произошла необрабатываемая ошибка уровня ядра продукта или sql-запроса, то будет возвращен html-код.
В следующей статье мы опишем механизм работы приема информации о заказах.