Синхронизация Opencart и МойСклад Я не разрабатывал модуль! Авторство модуля за многоуважаемым: zenwalker (http://zenwalker.ru) Схема расписана для тех кто устанавливает CMS OC с нуля.
Приведен пример только выгрузки заказов из OC в МС, однако возможно остатки и цены из МС в ОС. 1. Скачиваем модуль: http://zenwalker.ru/lab/opencart-exchange1c/ Скачиваем vqmod 2.3.2: https://code.google.com/p/vqmod/downloads/list Переносим все на хостинг. Вводим: http://site.ru/vqmod/install/ Получаем: VQMOD HAS BEEN INSTALLED ON YOUR SYSTEM! 2. Заходим в админку/дополнения/модули: Обмен данными с 1C v8.x – нажимаем "устанавливить", нажимаем "изменить". Вкладка основные: вводим логин/пароль (оставляем поля пустые) Я оставил поля пустыми т.к. у меня по другому не работала синхронизация. Меняем статус – «включено». 3. Выбираем вкладку обмен заказами, статус выгружаемых заказов у нас это «в обработке» Нажимаем сохранить. 4. Заходим в МойСклад, регистрируемся, получаем тестовую учетную запись. https://online.moysklad.ru/registration Выбираем обмен данными/синхронизация: 4.1 Добавить магазин/umi-shop.ru Адрес магазина: http://site.ru/export/exchange1c.php Пароль и логин: если в настройках модуля у вас пусто, то вводим любые значения, пустыми оставлять нельзя. Нажимаем проверить. Остатки не выгружаем, все как на скрине. Нажимаем сохранить. 5. В моем складе переходим в: Администрирование / документы / заказы покупателя/ и добавляем следующие строки: Ф.И.О. покупателя – строка Телефон покупателя – строка E-mail покупателя – строка Адрес покупателя – текст Комментарий покупателя – текст Комментарий администратора – текст. 6. Загружаем товары в справочник товары и услуги, причем названия должны точно соответствовать названию в OC – именно это название и будет индификатором товара. И подгружаем наименование способов доставки, но как услуги и везде проставляем «Внешний код», который у нас является названием товара или услуги. Внешний код меняем на вкладки товара справа – «система». Меняем файл admin/model/tool/exchange1c.php Моим файлом. (см. ниже - прикрепленный файл). Далее выполняем SQL-запрос (тут без префиксов!!! если у вас ocstore, то первая стока будет иметь префик "oc_product_to_1c" "oc_category_to_1c" "oc_attribute_to_1c" ): Запрос удобно выполнить с помощью плагина: https://opencartforum.com/files/file/678-sql-executor/
CREATE TABLE
`product_to_1c` (
`product_id` int(11) NOT NULL,
`1c_id` varchar(255) NOT NULL,
KEY (`product_id`),
KEY `1c_id` (`1c_id`),
FOREIGN KEY (product_id) REFERENCES product(product_id) ON DELETE CASCADE
) ENGINE=MyISAM DEFAULT CHARSET=utf8
CREATE TABLE
`category_to_1c` (
`category_id` int(11) NOT NULL,
`1c_category_id` varchar(255) NOT NULL,
KEY (`category_id`),
KEY `1c_id` (`1c_category_id`),
FOREIGN KEY (category_id) REFERENCES category(category_id) ON DELETE CASCADE
) ENGINE=MyISAM DEFAULT CHARSET=utf8
CREATE TABLE
`attribute_to_1c` (
`attribute_id` int(11) NOT NULL,
`1c_attribute_id` varchar(255) NOT NULL,
KEY (`attribute_id`),
KEY `1c_id` (`1c_attribute_id`),
FOREIGN KEY (attribute_id) REFERENCES attribute(attribute_id) ON DELETE CASCADE
) ENGINE=MyISAM DEFAULT CHARSET=utf8
Итого должно получиться так: По вопросам пишите в личку.
exchange1c.php