Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Модуль Синхронизация OpenCart 2.0 c 1C [Поддержка]


Serdes
 Поделиться

Рекомендованные сообщения

Для тех у кого не получается. Решил потратить время на написание инструкции по минимальной настройке, с которой у меня заработало.

 

Последовательность действий (базовые настройки без всяких фишек):

 

1) Качаю дистрибутив ocStore 2.1.0.1 с последними исправлениями с официального репозитория - github.com/myopencart/ocStore/archive/ocStore2.zip

 

2) Устанавливаю

 

3) Через "Установка дополнений" ставлю QuickFix - opencart.com/index.php?route=extension/extension/info&extension_id=18892

 

4) Через "Установка дополнений" ставлю данный модуль обмена с 1С, уже выкладывали исправленную версию пару страниц назад, на всякий случай прикрепляю к сообщению.

 

5) Иду в "Дополнения - Модули - Обмен данными с 1C v8.x". В первый раз по моему нужно "Установить", затем "Редактировать".

 

6) Выставляю настройки (пример):

Логин: 1C_user (это не логин от админки, просто произвольное слово или код)

Пароль: 1C_password (это не пароль от админки, просто произвольное слово или код)

Статус: Включено

 

Тип выгружаемой цены: Розничная (в то пустое поле которое видите, естественно данный тип цены именно так должен называться у вас в ценах номенклатуры 1С)

 

[Да = галка стоит]

Сбрасывать товары: Да (все имеющиеся товары будут перед выгрузкой каждый раз удаляться, лучше устанавливать только при первой выгрузке)

Сбрасывать категории: Да (все имеющиеся категории будут перед выгрузкой каждый раз удаляться, лучше устанавливать только при первой выгрузке)

Сбрасывать производителей: Да (все имеющиеся производители будут перед выгрузкой каждый раз удаляться, лучше устанавливать только при первой выгрузке)

Сбрасывать атрибуты: Да (все имеющиеся атрибуты будут перед выгрузкой каждый раз удаляться, лучше устанавливать только при первой выгрузке)

Сбрасывать количество товаров: Да

Заполнять родительские категории: Да (показывать товар не только в своей категории, но и в категории выше, если такая есть)

Загружать характеристики как связанные опции (требуется модуль Связанные опции): Нет

Не искать товары по артикулам: Да (у меня артикулы пока не заполнены)

Не искать товары по наименованиям: Нет

Генерировать SEO URL: Отключено

Включить подробный лог загрузки: Да (полезно только во время настройки и отладки)

Накладывать водяные знаки при загрузке: Нет

 

Жмем "Сохранить".

 

ОБМЕН ЗАКАЗАМИ ПОКА НЕ РАССМАТРИВАЮ.

Синхронизация OpenCart 2.0 c 1C 1.0.1 (Serdes) fixed.zip

Ссылка на комментарий
Поделиться на других сайтах


7) Иду в 1С.

У меня типовая конфигурация, но не самая распространенная - "1С:Предприятие 8.2 Комплексная автоматизация, редакция 1.1". В "Управлении торговлей" меню немного другое но суть примерно одна.

 

Открываю настройки обмена с Web-сайтом.

 

Вкладка "Основные"

Выставляю:

Выгрузка товаров: Да

Обмен заказами: Нет (т.к. в данном посте не рассматриваю)

 

Тип обмена данными: Выгрузка на сайт


Пользователь: 1C_user (как настраивали выше)

Пароль: 1C_password (как настраивали выше)

Режим обмена: Полная выгрузка

Жмакаем "Проверить" должно вылезти "Соединение установлено успешно". Если нет - искать причину. Виновато может быть ЧПУ, сторонние модули (например выгрузка в Яндекс Маркет и его .htaccess который он запихивает в эту же папку), и другие варианты.

 

Перехожу на вкладку "Выгрузка товаров", подвкладка "Основные настройки"

Ставлю только "Выгружать картинки", если картинок в базе нет либо объем номенклатуры очень велик, то для значительного ускорения выгрузки выгрузку картинок можно отключить.

Если у вас тут есть галка "Выгружать остатки по складам" то вероятно у вас новая версия CommerceML схемы и обмен не заработает (без допиливания), для чистоты эксперимента советую отключить. Это теория, на практике не приходилось сталкиваться. Если будет интересно расскажу как проверить версию.

 

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

 

Подвкладка "Отбор и сортировка"

Поле "Укажите отбор для выгрузки товаров на сайт"

Для себя выставил две галки (у вас всё может выглядеть по другому):

Тип цен - Равно - Розничная (тот самый тип, где установлены цены, и который мы установили в настройках движка)

Остатки по складам - В списке - Основной склад; Оптовый склад (если складов более одного то значения будут суммироваться и записываться в интернет магазин, например на одном складе 10шт, на другом 150шт, запишется 160; если на одном в минусах а на другом в плюсе, то соответственно минуса будут отниматься; что будет если итог будет отрицательный - не знаю).

Вообще тут можно много чего настроить, например не выгружать с нулевыми остатками, не выгружать определенные каталоги или позиции, и тд и тп.

 

Вот собственно и все, пробуем выполнить обмен и довольствуемся (или нет) результатом. В дальнейшем тонко настраиваем правила выгрузки под себя.

Ссылка на комментарий
Поделиться на других сайтах


Здравствуйте!


Не выгружаются заказы из Opencart 2.0.3.1 в 1C "Управление небольшой фирмой", ошибка: "Поле объекта не обнаружено (БазоваяЕдиница)"


Вот настройки exchange 1C:


1.png


 


Подскажите, что не так настроил?


Ссылка на комментарий
Поделиться на других сайтах


 

Здравствуйте!

Не выгружаются заказы из Opencart 2.0.3.1 в 1C "Управление небольшой фирмой", ошибка: "Поле объекта не обнаружено (БазоваяЕдиница)"

Вот настройки exchange 1C:

1.png

 

Подскажите, что не так настроил?

 

 Аналогичная ошибка, в УТ 10.3 все работает нормально. Но все же хотелось работать с УНФ т.к. проще кофигурация....Буду очень благодарен тем кто подскажет как решил данную неполадку.

Ссылка на комментарий
Поделиться на других сайтах


Заметил, что цена и кол-во товара тоже не выгружается

Скорее всего настройки в 1С не полная. Нужно настроить "внешние пользователи" и соглашение.

Ссылка на комментарий
Поделиться на других сайтах

Скорее всего настройки в 1С не полная. Нужно настроить "внешние пользователи" и соглашение.

Понял, спасибо, гляну что можно сделать

А что с заказами? 

Ссылка на комментарий
Поделиться на других сайтах


Понял, спасибо, гляну что можно сделать

А что с заказами? 

В параллельной теме отписался. Коротко: скорее всего займусь и пройдусь по всему коду только после Нового года. А так попробуйте модуль от Kirillove, сам не пробовал, но могу заверить, что он толковый специалист.

Ссылка на комментарий
Поделиться на других сайтах

В параллельной теме отписался. Коротко: скорее всего займусь и пройдусь по всему коду только после Нового года. А так попробуйте модуль от Kirillove, сам не пробовал, но могу заверить, что он толковый специалист.

Цены и кол-во как-то сами появились, так и не понял в чем прикол

Такой вопрос: если изменять в opencart товар (допустим, поменял цену или картинку), будет это как-то отправляться в 1c? Если нет, то как сделать, чтобы при автоматическом обмене данных товар не перезаписывался?

Изменено пользователем Viniculo
Ссылка на комментарий
Поделиться на других сайтах


Цены и кол-во как-то сами появились, так и не понял в чем прикол

Такой вопрос: если изменять в opencart товар (допустим, поменял цену или картинку), будет это как-то отправляться в 1c? Если нет, то как сделать, чтобы при обмене данных товар не перезаписывался?

Нет, из OpenCart в 1С не передается. Чтобы не перезаписывался нужно немного видоизменить код.

Ссылка на комментарий
Поделиться на других сайтах

Нет, из OpenCart в 1С не передается. Чтобы не перезаписывался нужно немного видоизменить код.

Что и где изменить? Попробую покопаться 

Ссылка на комментарий
Поделиться на других сайтах


Что и где изменить? Попробую покопаться 

В функции initProduct.

Ссылка на комментарий
Поделиться на других сайтах

Serdes, где то косяк в Fixe файле admin\model\tool\exchange1c, перестали подгружаться цены, при этом ошибок в логе не наблюдается взял оригинал файла исправил сам в ручную по руководству из комментариев выше, теперь цены подгружаются но не работает DeadcowSEO выдает ошибку

2015-12-17 14:45:19 - Очистка таблиц товаров: 
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_attribute`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_description`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_discount`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_image`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_option`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_option_value`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_related`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_reward`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_special`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_to_1c`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_to_category`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_to_download`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_to_layout`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_product_to_store`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_option_value_description`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_option_description`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_option_value`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_order_option`
2015-12-17 14:45:19 - TRUNCATE TABLE `oc_option`
2015-12-17 14:45:19 - DELETE FROM oc_url_alias WHERE query LIKE "%product_id=%"
2015-12-17 14:45:19 - Очистка таблиц категорий:
2015-12-17 14:45:19 - TRUNCATE TABLE oc_category
2015-12-17 14:45:19 - TRUNCATE TABLE oc_category_description
2015-12-17 14:45:19 - TRUNCATE TABLE oc_category_to_store
2015-12-17 14:45:19 - TRUNCATE TABLE oc_category_path
2015-12-17 14:45:19 - TRUNCATE TABLE oc_category_to_layout
2015-12-17 14:45:19 - TRUNCATE TABLE oc_category_to_1c
2015-12-17 14:45:19 - DELETE FROM oc_url_alias WHERE query LIKE "%category_id=%"
2015-12-17 14:45:19 - Очистка таблиц производителей:
2015-12-17 14:45:19 - TRUNCATE TABLE oc_manufacturer
2015-12-17 14:45:19 - Очистка таблиц описания производителей:
2015-12-17 14:45:19 - TRUNCATE TABLE oc_manufacturer_description
2015-12-17 14:45:19 - TRUNCATE TABLE oc_manufacturer_to_store
2015-12-17 14:45:19 - DELETE FROM oc_url_alias WHERE query LIKE "%manufacturer_id=%"
2015-12-17 14:45:19 - Очистка таблиц атрибутов:
2015-12-17 14:45:19 - TRUNCATE TABLE oc_attribute
2015-12-17 14:45:19 - TRUNCATE TABLE oc_attribute_description
2015-12-17 14:45:19 - TRUNCATE TABLE oc_attribute_to_1c
2015-12-17 14:45:19 - TRUNCATE TABLE oc_attribute_group
2015-12-17 14:45:19 - TRUNCATE TABLE oc_attribute_group_description
2015-12-17 14:45:19 - Найден товар:Кондиционер "Самсунг" арт: 1231C UUID: 213d87b7-33d5-11de-b58f-00055d80a2b9
2015-12-17 14:45:19 -    загружаются свойства... 
2015-12-17 14:45:19 -    > Samsung
2015-12-17 14:45:19 -    свойства загружены... 
2015-12-17 14:45:19 - Найден товар:Кондиционер Ветерок арт: 3451C UUID: 213d87bd-33d5-11de-b58f-00055d80a2b9
2015-12-17 14:45:19 -    загружаются свойства... 
2015-12-17 14:45:19 -    свойства загружены... 
2015-12-17 14:45:19 - Найден товар:Основной блок Ветерок арт: 5671C UUID: 6ebf3c04-3565-11de-b591-00055d80a2b9
2015-12-17 14:45:19 -    загружаются свойства... 
2015-12-17 14:45:19 -    свойства загружены... 
2015-12-17 14:45:19 - Окончен разбор файла: import.xml
2015-12-17 14:45:19 - PHP Warning:  Missing argument 3 for ModelModuleDeadcowSEO::generateCategories(), called in Y:\home\open1.ru\www\admin\controller\module\exchange1c.php on line 579 and defined in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 4
2015-12-17 14:45:19 - PHP Warning:  Missing argument 4 for ModelModuleDeadcowSEO::generateCategories(), called in Y:\home\open1.ru\www\admin\controller\module\exchange1c.php on line 579 and defined in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 4
2015-12-17 14:45:19 - PHP Warning:  Missing argument 5 for ModelModuleDeadcowSEO::generateCategories(), called in Y:\home\open1.ru\www\admin\controller\module\exchange1c.php on line 579 and defined in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 4
2015-12-17 14:45:19 - PHP Notice:  Undefined variable: overwrite in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 6
2015-12-17 14:45:19 - PHP Warning:  Missing argument 3 for ModelModuleDeadcowSEO::generateProducts(), called in Y:\home\open1.ru\www\admin\controller\module\exchange1c.php on line 580 and defined in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 22
2015-12-17 14:45:19 - PHP Warning:  Missing argument 4 for ModelModuleDeadcowSEO::generateProducts(), called in Y:\home\open1.ru\www\admin\controller\module\exchange1c.php on line 580 and defined in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 22
2015-12-17 14:45:19 - PHP Warning:  Missing argument 5 for ModelModuleDeadcowSEO::generateProducts(), called in Y:\home\open1.ru\www\admin\controller\module\exchange1c.php on line 580 and defined in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 22
2015-12-17 14:45:19 - PHP Notice:  Undefined variable: overwrite in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 24
2015-12-17 14:45:19 - PHP Warning:  Missing argument 3 for ModelModuleDeadcowSEO::generateManufacturers(), called in Y:\home\open1.ru\www\admin\controller\module\exchange1c.php on line 581 and defined in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 43
2015-12-17 14:45:19 - PHP Warning:  Missing argument 4 for ModelModuleDeadcowSEO::generateManufacturers(), called in Y:\home\open1.ru\www\admin\controller\module\exchange1c.php on line 581 and defined in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 43
2015-12-17 14:45:19 - PHP Warning:  Missing argument 5 for ModelModuleDeadcowSEO::generateManufacturers(), called in Y:\home\open1.ru\www\admin\controller\module\exchange1c.php on line 581 and defined in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 43
2015-12-17 14:45:19 - PHP Notice:  Undefined variable: overwrite in Y:\home\open1.ru\www\admin\model\module\deadcow_seo.php on line 45
Ссылка на комментарий
Поделиться на других сайтах


В этом случае пришлось сделать следующее в фале public_html/admin/controller/module/exchange1c.php

 

             //   $this->model_module_deadcow_seo->generateCategories($this->config->get('deadcow_seo_categories_template'), 'Russian');

            //    $this->model_module_deadcow_seo->generateProducts($this->config->get('deadcow_seo_products_template'), 'Russian');

            //    $this->model_module_deadcow_seo->generateManufacturers($this->config->get('deadcow_seo_manufacturers_template'), 'Russian');

                $this->model_module_deadcow_seo->generateCategories($this->config->get('deadcow_seo_categories_template'), '', 'Russian', true, true);

                $this->model_module_deadcow_seo->generateProducts($this->config->get('deadcow_seo_products_template'), '.html', 'Russian', true, true);

                $this->model_module_deadcow_seo->generateManufacturers($this->config->get('deadcow_seo_manufacturers_template'), '', 'Russian', true, true);

 

Разобрался, работает deadcowSEO спасибо коментарию от serginios

Ссылка на комментарий
Поделиться на других сайтах


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

Подвкладка "Отбор и сортировка"

Поле "Укажите отбор для выгрузки товаров на сайт"
Для себя выставил две галки (у вас всё может выглядеть по другому):
Тип цен - Равно - Розничная (тот самый тип, где установлены цены, и который мы установили в настройках движка)
Остатки по складам - В списке - Основной склад; Оптовый склад (если складов более одного то значения будут суммироваться и записываться в интернет магазин, например на одном складе 10шт, на другом 150шт, запишется 160; если на одном в минусах а на другом в плюсе, то соответственно минуса будут отниматься; что будет если итог будет отрицательный - не знаю).
Вообще тут можно много чего настроить, например не выгружать с нулевыми остатками, не выгружать определенные каталоги или позиции, и тд и тп.
 
Вот собственно и все, пробуем выполнить обмен и довольствуемся (или нет) результатом. В дальнейшем тонко настраиваем правила выгрузки под себя.

 

Ссылка на комментарий
Поделиться на других сайтах


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

 

Для теста делал так - завожу дополнительно к розничной еще два типа цен: Мелкооптовая, Оптовая, выставляю соответствующие цены.

 

На стороне движка в тип выгружаемой цены - добавляю их по очереди. В поле количество выставляю например для мелкооптовой 100, для оптовой 1000.

 

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

Т.е. если в корзине 10шт - цена будет розничная, если 110 - мелкооптовая, если 1500 - оптовая. Мы по такому принципу и работали раньше без цен в 1С, неудобство лишь в том, что на разные категории товаров это количество может быть разным, поэтому придется создавать несколько документов установки цен - например мелкооптовая (провода) - от 100м, и мелкооптовая (розетки) - от 30шт.

 

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

Ссылка на комментарий
Поделиться на других сайтах


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

Ссылка на комментарий
Поделиться на других сайтах


Установил на новый магазин себе этот модуль, при заходе в админке на настройки модуля по обмену с 1с выдает следующую ошибку

Notice: Error: Could not load model /var/www/мойсайт/data/www/мойсайт.ru/admin/model/sale/customer_group.php! in /var/www/мойсайт/data/www/мойсайт.ru/system/engine/loader.php on line 63 

 

в чем может быть причина ?

Ссылка на комментарий
Поделиться на других сайтах


  • 2 недели спустя...

admin\controller\module\exchange1c.php

 

if (VERSION !== '2.1.0.1') {
$this->load->model('sale/customer_group');
$data['customer_groups'] = $this->model_sale_customer_group->getCustomerGroups();
} else {
$this->load->model('customer/customer_group');
$data['customer_groups'] = $this->model_customer_customer_group->getCustomerGroups();
}
Проверь версию своего opencart, если не совпадает измени. Я изменил 2.1.0.1 на 2.1.0.1.1 все работает
Ссылка на комментарий
Поделиться на других сайтах


Добрый день.

А будет ли обновление? Количество выгружает, а цены нет.

Применил все исправления, которые были описаны выше, не помогло.

 

1С:Предприятие 8.3 (8.3.7.1845)

Управление торговлей, редакция 11.1 (11.1.10.173)

ocStore 2.1.0.1.1

 

Ссылка на комментарий
Поделиться на других сайтах


Добрый день.

А будет ли обновление? Количество выгружает, а цены нет.

Применил все исправления, которые были описаны выше, не помогло.

 

1С:Предприятие 8.3 (8.3.7.1845)

Управление торговлей, редакция 11.1 (11.1.10.173)

ocStore 2.1.0.1.1

У тебя внешние пользователи скорее всего не настроены. Это в 1С.

Ссылка на комментарий
Поделиться на других сайтах

У тебя внешние пользователи скорее всего не настроены. Это в 1С.

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

 

thumb.png

thumb.png

thumb.png

Ссылка на комментарий
Поделиться на других сайтах


Сайт хотя бы укажи, посмотрю, что выгружается. Не телепат.

Ссылка на комментарий
Поделиться на других сайтах

Прошу прощения.

http://groznymobile.ru/

Ну да, цены выгружаются. Есть пару ошибок в модуле, но они не должны влиять вроде как на цену.

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

Ссылка на комментарий
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.