Синхронизация с 1С — различия между версиями

Материал из MstarProject Manual
Перейти к: навигация, поиск
Строка 78: Строка 78:
  
 
<pre>* стоит ограничение в 5 записей, так как данный метод нужно корректировать ввиду большого количества записей.</pre>  
 
<pre>* стоит ограничение в 5 записей, так как данный метод нужно корректировать ввиду большого количества записей.</pre>  
 +
 +
=== Поставщики ===
 +
 +
1С отправляет запрос на адрес http://example.mstarproject.com/?action=exchange&type=sale&mode=providers
 +
 +
В ответ передается  файл с данными о поставщиках , следующей структуры:
 +
 +
<pre>
 +
<КоммерческаяИнформация ВерсияСхемы="2.04" ДатаФормирования="0000-00-00">
 +
  <Поставщики>
 +
    <Поставщик
 +
      Номер="1312" // Ид поставщика на сайте
 +
      Название="elit" // Название поставщика
 +
      Описание="elit" // Описание
 +
      КодовоеНазвание="elit"  // Кодовое название поставщика
 +
      Страна="" // Страна
 +
      Город="" // Город
 +
      Адрес="" // Адрес
 +
      Телефон="" // Телефон поставщика
 +
      Логин="elit" // Логин поставщика
 +
      Почта="elit@mail.ua" // Почта поставщика
 +
      СрокПоставки="0" // Срок поставки товара поставщиком
 +
      Наценка="Наценка 0" // Наценка поставщика
 +
      Примечания="" // Примечания
 +
      Идентификатор1С="" // Ид поставщика в 1С
 +
    />
 +
  <Поставщики>
 +
</КоммерческаяИнформация>
 +
</pre>
 +
 +
=== Контрагенты ===
 +
 +
1С отправляет запрос на адрес http://example.mstarproject.com/?action=exchange&type=sale&mode=customers
 +
 +
В ответ передается  файл с данными о контрагентах , следующей структуры:
 +
 +
<pre>
 +
<КоммерческаяИнформация ВерсияСхемы="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"// Дата последнего визита 
 +
      Примечания="" // Примечания
 +
      ТипПользователя="частное лицо" // Тип контрагента (юр./ физ.)
 +
    />
 +
  <Контрагенты>
 +
</КоммерческаяИнформация>
 +
</pre>
 +
 +
=== Заказы ===
 +
 +
1С отправляет запрос на адрес http://example.mstarproject.com/?action=exchange&type=sale&mode=orders
 +
 +
В ответ передается  файл с данными о заказах , следующей структуры:
 +
 +
<pre>
 +
<КоммерческаяИнформация ВерсияСхемы="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"// Название товара 
 +
/>
 +
    </Товары>
 +
  </Заказ>
 +
</Заказы>
 +
</КоммерческаяИнформация>
 +
</pre>
 +
 +
В данный момент передаются все заказы со статусом «Новый».
 +
 +
Cтатусы заказа:
 +
"Новый"="new"
 +
"Приостановлен"="pending"
 +
"В работе"="work"
 +
"Выдано"="end"
 +
"Отказано"="refused"
 +
 +
Статусы товаров в заказе:
 +
"В работе"="work"
 +
"Подтвержден"="confirmed"
 +
"В пути"="road"
 +
"На складе"="store"
 +
"Выдано"="end"
 +
"Отказано"="refused"
 +
  
 
== Доработки ==
 
== Доработки ==

Версия 14:46, 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С статусов заказов (при условии что менеджеры обрабатывают заказы в 1С), передача в 1С платежей через онлайн-системы (liqpay) и так далее.

Естимейт базовой версии задания - 20ч

Вернуться к списку модулей: Модули_пакет_Експерт_-_Документация