Если Вам нужен обмен между сайтом и 1С:Предприятие (далее 1С), используя штатную функцию обмена на основе CommerceML, то это то что Вы ищите.

Принцип обмена такой же как с сайтом Битрикс 24. Это довольно старый алгоритм работы с сайтом, но самый распространенный, потому как не требует дополнительных доработок на стороне 1С.

Основные возможности модуля:

  • Выгрузка товаров на сайт
  • Обмен заказами
  • Обмен оплатами и отгрузками

Возможности при обмене товарами:

  • Отключить обновление (картинок, категорий, свойств (атрибутов) и пр.)
  • Выгрузка товарных групп на сайт
  • Выгрузка свойств товарных категорий (в будущем их можно использовать в фильтре)
  • Выгрузка свойств товаров в атрибуты на сайт
  • Выгрузка размеров и веса в единицах измерения 1С
  • Типы цен выбираются из списка который загружается при первом обмене
  • Указать склады по которым будут считаться остатки
  • Отключить загрузку предложений, характеристик
  • Отключить загруженные товары без цен и/или без картинок

Возможности при обмене заказами:

  • Загрузка заказов из 1С которые ранее были созданы на сайте
  • Выгрузка заказов в 1С по статусу или после
  • Загрузка статусов, оплат, отгрузок
  • Выгрузка товаров в заказе с резервированием
  • Конвертация файла заказов (XML) в кодировку Windows-1251 для старых конфигураций.

Сервисные функции:

  • Ручная загрузка данных из административной части
  • Удалить товары, категории, атрибуты, опции которые были загружены из 1С
  • Возможно произвести загрузку данных без импорта, а импорт выполнить из административной части

Модуль версии 2.0 пришлось писать с нуля, потому-что нужно было использовать загрузку данных в несколько сессий. В сессиях сохраняется информация о файле и загруженных данных.

Модуль может теперь загружать данные порциями, если не укладывается по времени. Во время работы модуль постоянно контролирует время работы скрипта. Он остановит обмен и сообщит 1С о том, что импорт еще не завершен, тогда 1С отправляет повторно запрос на импорт файла, а модуль продолжит загружать данные с того месте где прервался. При этом повторная загрузка данных не производится.

Обращу Ваше внимание на то, что хоть модуль и обрабатывает большие файлы но все же есть слабое место — это большие архивы. Их распаковка может занять время, которое не хватит для выполнения PHP скрипта, в итоге ошибка 504. Ниже приведена ошибка при распаковке файла размером 16 Гб, где большую часть архива занимали картинки.

Чтобы исключить эту проблему, 1С внедрила порционную выгрузку, в которой формируются отдельные файлы XML по определенному количеству объектов и с картинками такой файл уже не будет весить много. Опция называется «Количество товаров в одной порции данных», рекомендую тут ставить не более 1000 товаров если размер картинок около 2 Мб, но в любом случае можете начать с 1000 и проанализировать время распаковки по логам, возможно ваш сервер справится и быстрее.

Также важным изменением стала загрузка данных, теперь данные не загружаются напрямую в CMS а сначала в специальные таблицы, а уж потом из этих таблиц в CMS. Эта схема была включена для дополнительных обработок, например для загрузки опций, одним запросом модуль видит сколько опций и удобно анализировать цены и остатки.

Выгрузка товарных категорий вместо групп в 1С

Данный функционал реализован в версии 2.0.34, проверен и протестирован.

Из 1С можно выгружать товарные категории, что это такое наверное уже знаю кто использует их в товаре. Товарная категория имеет свои свойства которые используются в товаре. Приведу пример товарной категории в товаре

В самой категории создаем свойства

И в самом товаре они выглядят так

Товарная категория выгружается не в древовидной структуре, по крайней мере так делает 1С УНФ 3.0, хотя в самой 1С структура есть. Таким образом после загрузки на сайт мы получим все категории в главном меню, но в административной части мы можем отнести категории к нужной группе, в том числе созданной только на самом сайте, и после следующего обмена структура не собьётся. Кроме того свойства товарных категорий выгружаются всегда в файле import.xml и в планах у меня использовать их для фильтра товаров.


О разработчике

Я живу в далеком сибирском городе Чита населением около 300 тысяч в Забайкальском крае, разница по времени с Москвой у нас +6 часов. Я занимался ремонтом электроники с детства и еще меня привлекало программирование, интернет, Linux. И как-то задумался над поиском запчастей в нашем городе, ходил по мастерам и сервисным центрам в надежде получить от них список запчастей чтобы выкладывать на какой-то сайте, но мастерам все некогда было этим заниматься, и тогда я решился создать свой каталог из своих запчастей.

Я быстро создал сайт, но встал вопрос как сделать обмен с моей программой 1С, тут еще вставал вопрос какая 1С лучше подходит под интернет торговлю, и попалась мне 1С:УНФ (Управление небольшой фирмой) сейчас она уже называется «Управление нашей фиирмой», но продукт был сырой и обновления выходили чуть ли не каждую неделю, но видно что бурно развивается, я решил использовать именно её.

В 2016 году мне потребовался для моего сайта такой модуль, я нашел его на просторах интернета, автор который его написал, не поддерживал и не отвечал на запросы, я его взял и доработал чтобы он работал со свежими платформами. Далее доработки все увеличивались и я решил с нуля переписать модуль и уже выложить как свое решение. Обсуждение и модуль до сих пор доступен на сайте OpenCatrtForum, и поддержка модуля OpenCartForum. Сейчас я не участвую в поддержке своего модуля по одной лишь причине что форум находится не в России и заблокирован доступ для Россиян, хотя я не собираюсь этого делать на своем хостинге. Хотя через VPN я туда заходил и аккаунт мой не заблокирован. По сей день ко мне обращаются со всей России и с Украины, я им не отказываю, но из-за отсутствия времени все же приходится иногда. Также модуль доступен на Гитхабе, но там мне неудобно было разрабатывать, проект я там забросил, и все разработки я производил на своем хостинге.

Про то как я создавал свой хостинг я тут не буду описывать, если кому интересно могут написать мне личные сообщения.

После блокировки OpenCartForum я решил создать свой первый сайт модуля, это было решение быстрое и ничего лучшего я на тот момент не придумал. Сейчас я купил отдельный домен для модуля и пока еще не определился с темой, она может еще поменяться несколько раз пока не найду удобное для себя решение.

В марте 2018 году вышла первая бета версия 1.6.4.1, но сразу скажу первый блин комом, и я не справлялся с исправлением ошибок, т.к. их еще сложно было находить, чем на своем, т.к. для быстрого поиска мне нужен был SSH, phpMyAdmin, FTP, доступ к сайту.

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

Но изучив работу Битрикс, я решил создать новую версию. Я думал что загрузка сначала в одни таблицы, а потом из них в другие будет отнимать много времени, но на самом деле не критично, причем загрузка в таблицы модуля происходила намного быстрее чем обработка их, но все же я предусмотрел загрузку порциями если по времени обработки php не успевает.

Тогда я решил создать свой сайт модуля, это было решение быстрое и ничего лучшего я на тот момент не придумал. Сейчас я купил отдельный домен для модуля и пока еще не определился с темой, она может еще поменяться несколько раз пока не найду удобное для себя решение.

Обратиться за помощьюscreen tag