Синхронизация с 1С — различия между версиями
Строка 234: | Строка 234: | ||
префиксы для брендов, либо привязать к существующим. | префиксы для брендов, либо привязать к существующим. | ||
+ | </pre> | ||
+ | |||
+ | === Товары (прайс)(price.xml) === | ||
+ | |||
+ | <pre> | ||
+ | <КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> | ||
+ | <Товары> | ||
+ | <ОчиститьПоставщиков Ид="123, 111"/> // Строка в которой через запятую указаны идентификаторы поставщиков на сайте, товары которых нужно очистить перед выгрузкой | ||
+ | <Товар | ||
+ | Название="Важіль підвіски" // Название товара | ||
+ | КодПоставщика="1312" // Ид поставщика на сайте | ||
+ | Артикул="SA4791L" // Артикул товара | ||
+ | Описание="" // Описание товара | ||
+ | Производитель="555" // Название производителя | ||
+ | Количество=">9" // Количество товара | ||
+ | Цена="9.78" // Цена товара | ||
+ | /> | ||
+ | </Товары> | ||
+ | </КоммерческаяИнформация> | ||
+ | </pre> | ||
+ | |||
+ | === Контрагенты(customers.xml) === | ||
+ | |||
+ | <pre> | ||
+ | <КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> | ||
+ | <Контрагенты> | ||
+ | <Контрагент | ||
+ | Идентификатор1С="111111111" // Ид контрагента в 1С | ||
+ | ФИО="Иванов Иван" // ФИО | ||
+ | Логин="0671234567" // Логин контрагента | ||
+ | Почта="begrex@pmarket.ru" // Почта контрагента | ||
+ | Телефон="0671234567" // Телефон контрагента | ||
+ | Город="Киев" // Город | ||
+ | Адрес="пр. Мира 20" // Адрес | ||
+ | Примечания="" // Примечания | ||
+ | ТипПользователя="частное лицо" // Тип контрагента (юр./ физ.) | ||
+ | /> | ||
+ | </Контрагенты> | ||
+ | </КоммерческаяИнформация> | ||
+ | </pre> | ||
+ | |||
+ | Поле логин рекомендовано заполнять номером телефона либо адресом электронной почты. По умолчанию задается пароль 123456. | ||
+ | |||
+ | === Заказы(orders.xml) === | ||
+ | |||
+ | <pre> | ||
+ | <КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> | ||
+ | <Заказы> | ||
+ | <Заказ | ||
+ | НомерЗаказа="" // Ид заказа на сайте (указывается для обновления данных по заказу) | ||
+ | НомерЗаказа1C="1234567" // Ид заказа в 1c | ||
+ | ДатаЗаказа="2020-07-22" // Дата заказа | ||
+ | ВремяЗаказа="08:42:21" // Время заказа | ||
+ | СуммаЗаказа="41.00" // Сумма заказа | ||
+ | СпособОплаты="Наличными при получении товара" // Способ оплаты на сайте | ||
+ | Доставка="Самовывоз" // Способ доставки на сайте | ||
+ | СтатусЗаказа="work" // Статус заказа | ||
+ | > | ||
+ | <Контрагент | ||
+ | Номер="1322" // Ид контрагента на сайте | ||
+ | ФИО="" // ФИО | ||
+ | Идентификатор1С="" // Ид контрагента в 1С | ||
+ | Логин="" // Логин контрагента | ||
+ | Почта="" // Почта контрагента | ||
+ | Телефон="" // Телефон контрагента | ||
+ | Город="" // Город | ||
+ | Адрес="" // Адрес | ||
+ | /> | ||
+ | <Товары> | ||
+ | <Товар | ||
+ | Код="WL7129" // Артикул товара | ||
+ | Цена="40.82" // Цена продажи товара | ||
+ | ЗакупочнаяЦена="1.42" // Закупочная цена | ||
+ | Количество="1" // Количество товара | ||
+ | Сумма="40.82" // Сумма продажи товара | ||
+ | СтатусТовара="end" // Статус позиции в заказе на сайте | ||
+ | КодПоставщика="1315" // Ид поставщика товара | ||
+ | Постaвщик="vladislav" // Название поставщика | ||
+ | ПрефиксКод="AWP_WL7129" // Внутренний код производителя + артикул товара | ||
+ | Префикс="AWP" // Внутренний код производителя | ||
+ | Производитель="wixfilters" // Название производителя | ||
+ | Название="WIX WL7129 = FN OP570" // Название товара | ||
+ | /> | ||
+ | </Товары> | ||
+ | </Заказ> | ||
+ | </Заказы> | ||
+ | </КоммерческаяИнформация> | ||
+ | </pre> | ||
+ | |||
+ | '''Cтатусы заказа:'''<br> | ||
+ | "Приостановлен"="pending"<br> | ||
+ | "В работе"="work"<br> | ||
+ | "Выдано"="end"<br> | ||
+ | "Отказано"="refused"<br> | ||
+ | |||
+ | '''Статусы товаров в заказе:'''<br> | ||
+ | "В работе"="work"<br> | ||
+ | "Подтвержден"="confirmed"<br> | ||
+ | "В пути"="road"<br> | ||
+ | "На складе"="store"<br> | ||
+ | "Выдано"="end"<br> | ||
+ | "Отказано"="refused"<br> | ||
+ | |||
+ | === Кроссы(cross.xml) === | ||
+ | |||
+ | <pre> | ||
+ | <КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> | ||
+ | <Кроссы> | ||
+ | <Кросс | ||
+ | Производитель="wix filters" // Название производителя | ||
+ | Артикул="WL7129" // Артикул товара | ||
+ | КроссПроизводитель="CHAMPION" // Название кросс производителя | ||
+ | КроссАртикул="COF101102S" // Артикул кросс товара | ||
+ | /> | ||
+ | </Кроссы> | ||
+ | </КоммерческаяИнформация> | ||
</pre> | </pre> | ||
Версия 15:06, 11 января 2021
Модуль предназначен для синхронизации данных между сайтом и вашей конфигурацией 1С версии 8.
Протокол синхронизации описан по ссылке
Модуль разрабатывается индивидуально для каждого заказчика и при тесном сотрудничестве с вашим программистом 1С.
Синхронизация сайта с 1С можно проводить посредством двух форматов либо через XML либо через JSON
При обмене данными инициатором обмена выступает 1С. Рассмотрим основные моменты при синхронизации посредством обоих форматов:
Содержание
Синхронизация в формате XML
Инициализация
В начале сеанса 1С отправляет запрос на адрес http://example.mstarproject.com/?action=exchange&type=sale&mode=checkauth и передает
значение логина и пароля менеджера 1С. Этот менеджер создается в Мпанели и используется только для авторизации 1С.
Уточнение параметров сеанса http://example.mstarproject.com/?action=exchange&type=sale&mode=init
example.mstarproject.com -заменить на адрес проекта.
Весь обмен происходит в кодировке UTF8. (Но по просьбе заказчика можно рассмотреть изменение кодировки на другую).
В конце любой операции выдается или success - успешное выболнение, или failure - ошибка.
Передача из сайта в 1С (экспорт)
Бренды
1С отправляет запрос на адрес http://example.mstarproject.com/?action=exchange&type=sale&mode=brands
В ответ передается файл с данными о брендах (производителях), следующей структуры:
<КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> <Бренды> <Бренд Номер="1" // Ид производителя на сайте Название="1afirstautomotive" // Название производителя Префикс="AAB" // Внутренний код производителя /> <Бренд Номер="..." Название="...." Префикс="...." /> </Бренды> </КоммерческаяИнформация>
Товары (прайс)
1С отправляет запрос на адрес http://example.mstarproject.com/?action=exchange&type=sale&mode=price
В ответ передается файл с данными о товарах (прайсах), следующей структуры:
<КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> <Товары> <Товар Код="1" // Ид товара на сайте Название="Важіль підвіски" // Название товара КодПоставщика="1312" // Ид поставщика на сайте Артикул="SA4791L" // Артикул товара Описание="" // Описание товара ПрефиксКод="CMW_SA4791L" // Внутренний код производителя + артикул товара Производитель="555" // Название производителя Количество="2" // Количество товара Цена="936.78" // Цена товара /> </Товары> </КоммерческаяИнформация>
* стоит ограничение в 5 записей, так как данный метод нужно корректировать ввиду большого количества записей.
Поставщики
1С отправляет запрос на адрес http://example.mstarproject.com/?action=exchange&type=sale&mode=providers
В ответ передается файл с данными о поставщиках , следующей структуры:
<КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> <Поставщики> <Поставщик Номер="1312" // Ид поставщика на сайте Название="elit" // Название поставщика Описание="elit" // Описание КодовоеНазвание="elit" // Кодовое название поставщика Страна="" // Страна Город="" // Город Адрес="" // Адрес Телефон="" // Телефон поставщика Логин="elit" // Логин поставщика Почта="elit@mail.ua" // Почта поставщика СрокПоставки="0" // Срок поставки товара поставщиком Наценка="Наценка 0" // Наценка поставщика Примечания="" // Примечания Идентификатор1С="" // Ид поставщика в 1С /> <Поставщики> </КоммерческаяИнформация>
Контрагенты
1С отправляет запрос на адрес http://example.mstarproject.com/?action=exchange&type=sale&mode=customers
В ответ передается файл с данными о контрагентах , следующей структуры:
<КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> <Контрагенты> <Контрагент Номер="6" // Ид контрагента на сайте Идентификатор1С="" // Ид контрагента в 1С ФИО="RosarioFep" // ФИО Логин="RosarioFep" // Логин контрагента Почта="era@market.ru" // Почта контрагента Телефон="87191848937" // Телефон контрагента Город="Sembawang" // Город Адрес="Sembawang" // Адрес ДатаРегистрации="2018-01-21 01:41:36" // Дата регистрации ДатаПоследнегоВизита="2018-01-21 01:41:37"// Дата последнего визита Примечания="" // Примечания ТипПользователя="частное лицо" // Тип контрагента (юр./ физ.) /> <Контрагенты> </КоммерческаяИнформация>
Заказы
1С отправляет запрос на адрес http://example.mstarproject.com/?action=exchange&type=sale&mode=orders
В ответ передается файл с данными о заказах , следующей структуры:
<КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> <Заказы> <Заказ НомерЗаказа="174" // Ид заказа на сайте НомерЗаказа1C="" // Ид заказа в 1С ДатаЗаказа="2020-07-22" // Дата заказа ВремяЗаказа="08:42:21" // Время заказа СуммаЗаказа="41.00" // Сумма заказа СпособОплаты="Наличными" // Способ оплаты Доставка="Самовывоз" // Способ доставки ИдМенеджера="1" // Ид менеджера на сайте СтатусЗаказа="new" // Статус заказа > <Контрагент // Данные о заказчике Номер="1322" // Ид контрагентa на сайте ФИО="" // ФИО Идентификатор1С="" // Ид контрагентa в 1С Логин="0326552353" // Логин контрагентa Почта="" // Почта контрагентa Телефон="(032)6552353" // Телефон контрагентa Город="" // Город Адрес="" // Адрес /> <Товары> // Данные о товарах в заказе <Товар Ид="755" // Ид позиции в заказе на сайте Код="WL7129" // Артикул товара Цена="40.82" // Цена продажи товара ЗакупочнаяЦена="1.42" // Закупочная цена Количество="1" // Количество товара Сумма="40.82" // Сумма продажи товара КомментарийМереджера="" // Комментарий менеджера СрокПоставки="0" // Срок поставки товара СтатусТовара="pending" // Статус позиции в заказе на сайте КодПоставщика="1315" // Ид поставщика товара Постaвщик="vladislav" // Название поставщика ПрефиксКод="AWP_WL7129" // Внутренний код производителя + артикул товара Префикс="AWP" // Внутренний код производителя Производитель="wixfilters" // Название производителя Название="WIX WL7129 = FN OP570"// Название товара /> </Товары> </Заказ> </Заказы> </КоммерческаяИнформация>
В данный момент передаются все заказы со статусом «Новый».
Cтатусы заказа:
"Новый"="new"
"Приостановлен"="pending"
"В работе"="work"
"Выдано"="end"
"Отказано"="refused"
Статусы товаров в заказе:
"В работе"="work"
"Подтвержден"="confirmed"
"В пути"="road"
"На складе"="store"
"Выдано"="end"
"Отказано"="refused"
Передача из сайта в 1С (импорт)
1) Начало сеанса http://example.mstarproject.com/?action=exchange&type=catalog&mode=checkauth
2) Уточнение параметров сеанса http://example.mstarproject.com/?action=exchange&type=catalog&mode=init
3) Выполнить запрос http://example.mstarproject.com/?action=exchange&type=catalog&mode=file&filename=имя_файла
4) Передать файл
5) Выполнить запрос с указанием имени файла, который необходимо обработать http://example.mstarproject.com/?action=exchange&type=catalog&mode=import&filename=имя_файла.
В случае успеха в ответ будет получено success. Для имен фалов рекомендовано использовать значение mode из параметров экспорта. Примеры файлов выгрузки на сайт:
Бренды (brand.xml)
<КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> <Бренды> <Бренд Название="test"/> </Бренды> </КоммерческаяИнформация>
* После выгрузки брендов на сайте в разделе прайсы воспользоваться пунктом "проверьте префиксы" в котором нужно сгенирировать новые префиксы для брендов, либо привязать к существующим.
Товары (прайс)(price.xml)
<КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> <Товары> <ОчиститьПоставщиков Ид="123, 111"/> // Строка в которой через запятую указаны идентификаторы поставщиков на сайте, товары которых нужно очистить перед выгрузкой <Товар Название="Важіль підвіски" // Название товара КодПоставщика="1312" // Ид поставщика на сайте Артикул="SA4791L" // Артикул товара Описание="" // Описание товара Производитель="555" // Название производителя Количество=">9" // Количество товара Цена="9.78" // Цена товара /> </Товары> </КоммерческаяИнформация>
Контрагенты(customers.xml)
<КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> <Контрагенты> <Контрагент Идентификатор1С="111111111" // Ид контрагента в 1С ФИО="Иванов Иван" // ФИО Логин="0671234567" // Логин контрагента Почта="begrex@pmarket.ru" // Почта контрагента Телефон="0671234567" // Телефон контрагента Город="Киев" // Город Адрес="пр. Мира 20" // Адрес Примечания="" // Примечания ТипПользователя="частное лицо" // Тип контрагента (юр./ физ.) /> </Контрагенты> </КоммерческаяИнформация>
Поле логин рекомендовано заполнять номером телефона либо адресом электронной почты. По умолчанию задается пароль 123456.
Заказы(orders.xml)
<КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> <Заказы> <Заказ НомерЗаказа="" // Ид заказа на сайте (указывается для обновления данных по заказу) НомерЗаказа1C="1234567" // Ид заказа в 1c ДатаЗаказа="2020-07-22" // Дата заказа ВремяЗаказа="08:42:21" // Время заказа СуммаЗаказа="41.00" // Сумма заказа СпособОплаты="Наличными при получении товара" // Способ оплаты на сайте Доставка="Самовывоз" // Способ доставки на сайте СтатусЗаказа="work" // Статус заказа > <Контрагент Номер="1322" // Ид контрагента на сайте ФИО="" // ФИО Идентификатор1С="" // Ид контрагента в 1С Логин="" // Логин контрагента Почта="" // Почта контрагента Телефон="" // Телефон контрагента Город="" // Город Адрес="" // Адрес /> <Товары> <Товар Код="WL7129" // Артикул товара Цена="40.82" // Цена продажи товара ЗакупочнаяЦена="1.42" // Закупочная цена Количество="1" // Количество товара Сумма="40.82" // Сумма продажи товара СтатусТовара="end" // Статус позиции в заказе на сайте КодПоставщика="1315" // Ид поставщика товара Постaвщик="vladislav" // Название поставщика ПрефиксКод="AWP_WL7129" // Внутренний код производителя + артикул товара Префикс="AWP" // Внутренний код производителя Производитель="wixfilters" // Название производителя Название="WIX WL7129 = FN OP570" // Название товара /> </Товары> </Заказ> </Заказы> </КоммерческаяИнформация>
Cтатусы заказа:
"Приостановлен"="pending"
"В работе"="work"
"Выдано"="end"
"Отказано"="refused"
Статусы товаров в заказе:
"В работе"="work"
"Подтвержден"="confirmed"
"В пути"="road"
"На складе"="store"
"Выдано"="end"
"Отказано"="refused"
Кроссы(cross.xml)
<КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00"> <Кроссы> <Кросс Производитель="wix filters" // Название производителя Артикул="WL7129" // Артикул товара КроссПроизводитель="CHAMPION" // Название кросс производителя КроссАртикул="COF101102S" // Артикул кросс товара /> </Кроссы> </КоммерческаяИнформация>
Доработки
Из-за того что есть разные конфигурации 1С, создать шаблон модуля довольно сложно, описанные обмены данными это основные моменты работы модуля, которые можно расширять и дополнять, в зависимости от требований заказчика, например: передача из 1С статусов заказов (при условии что менеджеры обрабатывают заказы в 1С), передача в 1С платежей через онлайн-системы (liqpay) и так далее.
Естимейт базовой версии задания - 20ч
Вернуться к списку модулей: Модули_пакет_Експерт_-_Документация