Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Модуль Модуль обмена для opencart v2.3 по стандарту CommerceML [Поддержка]


Recommended Posts

57 минут назад, sxt сказал:

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

Если у Вас есть готовое ТЗ или просто список вопросов , которые нужно решить, напишите в личку. 

Змінено користувачем searchingman
Надіслати
Поділитися на інших сайтах


@sxt Да, делал это не один раз, но вот насчет допилов - не советую сразу пускаться во все тяжкие, дорабатывать этот модуль можно бесконечно, а вот ваш бюджет наверняка не бесконечен. Я бы советовал по возможности использовать то что в нем есть, и только в самом-самом крайнем случае дорабатывать. Модуль не так прост, как иногда думают те кто берутся его дорабатывать (иногда приходилось разгребать чужие "чудеса на виражах"). Потому будьте аккуратны с выбором исполнителя (я не имею ввиду себя и тем более не рекламирую себя) - лучше конечно если исполнитель будет или автор модуля, или кто-то из этой темы (но тоже проверяйте), или проверенный программист который потом не сольется когда начнутся проблемы. Потому что "доработки с фриланса" (видимо речь про известный сайт), которые я видел, были очень печальные.

Надіслати
Поділитися на інших сайтах


16 минут назад, artmoney сказал:

Добрый вечер, тестирую 2 версию, падают разного рода ошибки в логах 1с) понимаю бета версия, но может есть расшифровка ошибок на руках М182 например

Из файла \admin\model\extension\exchange1c.php

Выполняется запрос в таблицу 1c_unit в итоге ошибка "М182" (Получено более одной единицы по коду)

Смотрите таблицу 1c_unit на предмет "дублей". По какому коду смотрите в своем логе ошибок.

Надіслати
Поділитися на інших сайтах


В 26.08.2021 в 14:57, Kirillove сказал:

Хорошо, разверну сегодня эту версию и протестирую на ней, установку и работу.

Поддерживаю, думаю сейчас актуальнее делать под OC 3.0.3.7

 

Как раз сейчас мне нужно сделать сайт на Opencart 3 и синхронизировать с 1С 8.2 "Управление торговлей для Украины 2.3"

С этой же базою связан старый сайт на Opencart 2.1+Exchange 1c 8.x v.1.6.3.11, и стабильно работает уже много лет выгрузка товаров, изменений, заказов. Дорабатывали выгрузку на двух языках, соответственно и в 1с добавляли доп поля; отдельные поля для категорий. Также при выгрузке обновляются фильтры OcFilter (они же атрибуты в опенкарт и свойства в 1с).

 

Выложу свой фид с 1с, возможно понадобится для теста, ну и если нужно будет тестировать под OC3 то без проблем..

import.xml offers.xml

Надіслати
Поділитися на інших сайтах


В 20.09.2021 в 21:58, searchingman сказал:

Из файла \admin\model\extension\exchange1c.php

Выполняется запрос в таблицу 1c_unit в итоге ошибка "М182" (Получено более одной единицы по коду)

Смотрите таблицу 1c_unit на предмет "дублей". По какому коду смотрите в своем логе ошибок.

Спасибо, сделал полную выгрузку, все норм

Надіслати
Поділитися на інших сайтах


В 20.09.2021 в 20:32, Gmp сказал:

@sxt Да, делал это не один раз, но вот насчет допилов - не советую сразу пускаться во все тяжкие, дорабатывать этот модуль можно бесконечно, а вот ваш бюджет наверняка не бесконечен. Я бы советовал по возможности использовать то что в нем есть, и только в самом-самом крайнем случае дорабатывать. Модуль не так прост, как иногда думают те кто берутся его дорабатывать (иногда приходилось разгребать чужие "чудеса на виражах"). Потому будьте аккуратны с выбором исполнителя (я не имею ввиду себя и тем более не рекламирую себя) - лучше конечно если исполнитель будет или автор модуля, или кто-то из этой темы (но тоже проверяйте), или проверенный программист который потом не сольется когда начнутся проблемы. Потому что "доработки с фриланса" (видимо речь про известный сайт), которые я видел, были очень печальные.

Спасибо, все учту

Надіслати
Поділитися на інших сайтах


5 часов назад, Ivanzo сказал:

Доброго времени суток. Поделитесь кто как решает,  если надо наоборот из ИМ выгрузить товары в 1С.

Можно попробовать импортировать через добавление товаров в заказы с последующим импортом в 1с ( Обсуждалось в данной теме )

Многое зависит от того, что (какие поля) и в какую конфигурацию хотите загружать. 

Есть разные платные решения, н-р такое 

Можно свой импорт сделать, если что-то нестандартное. В общем зависит от детально описанной задачи.

Змінено користувачем searchingman
Надіслати
Поділитися на інших сайтах


2 часа назад, marcus201832 сказал:

Кто-нибудь пробовал с Розницы 2.3 выгружать? У меня ничего не происходит, и логи (ни опенкарта ни модуля) ничего не пишут...

Попробовал типовым модулем Розницы 2.3.4.33 в ocStore 2.3.0.4 (модуль обмена 1.6.4.8) выгрузить товары (цены, остатки) - работает (файлы импорта загрузились на сервер, в логе на сайте отражается загрузка).

Из Розницы типовым модулем обмена выгружаете?

Логирование в модуле обмена на сайте включили? Где Вы лог смотрите? Если в рознице нажать кнопку "Проверить соединение", то тоже отразиться в логе на сайте.

Надіслати
Поділитися на інших сайтах


20 часов назад, searchingman сказал:

Попробовал типовым модулем Розницы 2.3.4.33 в ocStore 2.3.0.4 (модуль обмена 1.6.4.8) выгрузить товары (цены, остатки) - работает (файлы импорта загрузились на сервер, в логе на сайте отражается загрузка).

Из Розницы типовым модулем обмена выгружаете?

Логирование в модуле обмена на сайте включили? Где Вы лог смотрите? Если в рознице нажать кнопку "Проверить соединение", то тоже отразиться в логе на сайте.

Логи смотрю опенкарта, модуля и самого сервера...там ничего нет связанного с работой модуля

"модуль обмена 1.6.4.8" - я использовал модуль v2

Надіслати
Поділитися на інших сайтах


34 минуты назад, marcus201832 сказал:

Логи смотрю опенкарта, модуля и самого сервера...там ничего нет связанного с работой модуля

"модуль обмена 1.6.4.8" - я использовал модуль v2

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

Надіслати
Поділитися на інших сайтах


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

image.png.5e6dc9f78ef22149f7dd73e33d8b883d.png

Надіслати
Поділитися на інших сайтах


7 часов назад, Ivanzo сказал:

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

image.png.5e6dc9f78ef22149f7dd73e33d8b883d.png

В алгоритме обмена в версии 1.6.4.8 (последняя в ветке 1.6.x) производители синхронизируются по наименованию, т.е. уникальный код из 1с GUID не используется. Сначала из БД запрашиваются все производители с учетом принадлежности к магазину (Ид магазина = 0), затем они сравниваются по наименованию из файла импорта (import.xml). Если Вы отключаете производителя от магазина, то он в запрос не попадает, при сравнении не находится и в итоге создается заново с привязкой к магазину. В настройках модуля обмена можно отключить обновление всех производителей, но не конкретного.

Для ваших условий нужно править модуль. Если нужно, обращайтесь в личку. 

Змінено користувачем searchingman
Надіслати
Поділитися на інших сайтах


10 часов назад, searchingman сказал:

В алгоритме обмена в версии 1.6.4.8 (последняя в ветке 1.6.x) производители синхронизируются по наименованию, т.е. уникальный код из 1с GUID не используется. Сначала из БД запрашиваются все производители с учетом принадлежности к магазину (Ид магазина = 0), затем они сравниваются по наименованию из файла импорта (import.xml). Если Вы отключаете производителя от магазина, то он в запрос не попадает, при сравнении не находится и в итоге создается заново с привязкой к магазину. В настройках модуля обмена можно отключить обновление всех производителей, но не конкретного.

Для ваших условий нужно править модуль. Если нужно, обращайтесь в личку. 

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

Змінено користувачем Ivanzo
Надіслати
Поділитися на інших сайтах


3 часа назад, Ivanzo сказал:

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

ИдМагазина = 0 (прописано в коде)

Правильнее сделать список исключений (наименований) производителей при обмене. Тогда если производитель (имя из файла обмена) выгружен на сайт и уже связан с нужными товарами, то его можно исключить из дальнейшего обмена. Требуется доработка модуля.

ИМХО. Синхронизация по имени производителя не есть правильно, но т.к. производитель при обмене может быть в разных тегах в файле обмена ("Производитель", "Изготовитель" и какой-то другой), то автор отказался от GUID-а производителя из 1с. 

3 часа назад, Ivanzo сказал:

Хм интересный вопрос, а как тогда с мультимагазинами, есть здесь кто выгружается категории не только в основной магазин.

В данном модуле никак. Но, конечно, можно доработать и привязываться к ИД классификатора в файлах обмена (в настройках обмена в 1с понятие множественности каталогов). При этом придется дорабатывать модуль обмена на сайте. 

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

Змінено користувачем searchingman
Надіслати
Поділитися на інших сайтах


2 часа назад, searchingman сказал:

.

ИМХО. Синхронизация по имени производителя не есть правильно, но т.к. производитель при обмене может быть в разных тегах в файле обмена ("Производитель", "Изготовитель" и какой-то другой), то автор отказался от GUID-а производителя из 1с. 

Так может правильнее сделать сначала ищет по имени (это надо когда категории уже есть в магазине, а потом ищет по GUID как раз на случай если включаешь производителя от основного магазина. Такая реализация разве не лучше?

Мне кажется по GUID мне как раз и надо. Ведь я правильно понял что когда поиск идёт по GUID то не важно к какому магазину или вообще отключён производитель от магазина, он его найдёт и не задублирует. 

Змінено користувачем Ivanzo
Надіслати
Поділитися на інших сайтах


1 час назад, Ivanzo сказал:

Так может правильнее сделать сначала ищет по имени (это надо когда категории уже есть в магазине, а потом ищет по GUID как раз на случай если включаешь производителя от основного магазина. Такая реализация разве не лучше?

Мне кажется по GUID мне как раз и надо. Ведь я правильно понял что когда поиск идёт по GUID то не важно к какому магазину или вообще отключён производитель от магазина, он его найдёт и не задублирует. 

С какой целью отвязываете принадлежность магазина у производителя?

Надіслати
Поділитися на інших сайтах


  • 2 weeks later...
В 21.09.2021 в 03:37, artmoney сказал:

Добрый вечер, тестирую 2 версию, падают разного рода ошибки в логах 1с) понимаю бета версия, но может есть расшифровка ошибок на руках М182 например

Спойлер

Ошибки и описания
checkauth()
С010 - Модуль отключен, обмен невозможен
С011 - Доступ запрещен с IP адреса
С012 - Неверный пароль
modeCheckauth()
modeInit()
sessionGet()
С020 - Сессия не найдена в куке
С021 - Сессия не найдена в базе
C022 - Более одной активной сессии
modeCatalogImport()
C050 - Импортируемый файл не существует
UploadFile()
C030 - Невозможно создать директорию
C031 - Ошибка записи файл в директорию
С032 - Размеры входящего файла и сохраненного отличаются
extractZipV3()
C040 - файл отсутствует
C041 - Ошибка чтения архива

ImportCatalog() Model
M010 - Ошибка чтения XML, неверный формат, кодировка, либо файл обрезан, либо слеплены два файла
M020 - Данная версия CommerceML не поддерживается модулем, обратитесь к разработчику
parseProperty() Model
M030 - Значения нельзя записать так как property_id = 0, то есть не сохранено само свойство
getProperty() Model
M040 - Не найден атрибут который привязан к свойству в 1С
parseProductProperty() Model
M050 - Невозможно установить свойство в товаре так как по Ид его не удалось найти.
M051 - Не найдено значение свойства по Ид
M052 - 
addProductAttribute() Model
parseProductCategories() Model
M060 - Найдена категория по Ид с нулевым category_id!
M061 - При разборе товара не удалось найти категорию по Ид
getManufacturer() Model
M070 - По Ид найдено более одного производителя
parseProductTaxes()
M080
M081
M082
parseProduct() Model
M090 - Наименование товара отсутствует в файле! Это обязательный тег!
M091 - Найдено более одного товара по Ид
getProduct() Model
moveProductImage() Model
M100 - Изображение не удалось переместить
getProductIdByGuid() Model
M110 - пустой Ид передан
M111 - несколько товаров соответствуют одному Ид
addOffer() Model
M120 - Пустой product_id
addFeature() Model
M130 - Не указано наименование характеристики
M131 - Не указан product_id
getOffer() Model
M140 - Пустое значение product_id
M141 - Найдено более одного предложения по параметрам условию запроса
getFeature() Model
M150 - Пустые feature_id либо feature_guid были переданы
M151 - Найдено более одной характеристики по параметрам
getPriceType() Model
M160 - Пустое значение Ид передано
getCurrency()
M170 - Не сопоставлена валюта по коду
getUnit() model
M180 - Пустое значение КодЕдиницы
M181 - Не найдено ни одной единицы по коду
M182 - Получено более одной единицы по коду
M182 - Получено более одной единицы по коду
getPriceTypeAll() Model
M190 - Не указана валюта для типа цены
setQuantity()
M200 - Не найдено загруженных в базу складов (мест хранений)
setPrice() Model
M210 - Дублирование основной цены
parseOffers_v3() Model
M220 - Не найден товар по Ид при загрузке предложения
parsePCategory() Model
M230 - Не найдено свойство по Ид
updateCategory() Model
M240 - Неверные данные для записи в таблицу category_description
syncProduct() Model
M250 - Пустое поле АРТИКУЛ (SKU)
M251 - Пустое поле МОДЕЛЬ (MODEL)
M252 - Пустое поле НАИМЕНОВАНИЕ (NAME)
M253 - Пустое поле ШТРИХКОД (EAN)
M251 - Пустое поле КОД (CODE)
addProduct() Model
M260 - При добавлении товара в таблицу product произошла ошибка product_id не получен!
getProductByGUID() Model
M270 - Найдено более одной связи товара загруженного из 1с по Ид
createDirectories() Model
M280 - Каталог не существует
M281 - Ошибка создания каталога
getPropertyInfoByGuid() Model
M290 - По Ид получено более одного свойства
M291 - Получено названия атрибутов не равное количеству языков в системе
M292 - Есть расхождения наименования значения свойства и производителя на основном языке
M293 - Не найден производитель в базе
addCategory()
M300 - 
getCategory()
M310 - 
compareArraysData()
M320
UpdateCatalog()
M330 - более одной базовой цены

querySetFields() Model
M500 - В таблице нет полей, пустая таблица
M501 - Значение поля является массив вместо строки!
parseDocumentProducts() Model
M510 - 
M511 -
M512 - 
M513 - 

 

Надіслати
Поділитися на інших сайтах

 

В 01.10.2021 в 15:30, searchingman сказал:

Синхронизация по имени производителя не есть правильно, но т.к. производитель при обмене может быть в разных тегах в файле обмена ("Производитель", "Изготовитель" и какой-то другой), то автор отказался от GUID-а производителя из 1с.

Доброго дня. В моей учетной системе тег "Производитель" был создан для нескольких товарных категорий, в итоге у меня тег "Производитель" но Ид у них разные, и атрибутов "Производитель" было очень много, решение в 1С найдено - использовать свойство из другой категории, но переделывать в 1С это очень накладно..

Надіслати
Поділитися на інших сайтах

8 минут назад, Kirillove сказал:

 

Доброго дня. В моей учетной системе тег "Производитель" был создан для нескольких товарных категорий, в итоге у меня тег "Производитель" но Ид у них разные, и атрибутов "Производитель" было очень много, решение в 1С найдено - использовать свойство из другой категории, но переделывать в 1С это очень накладно..

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

Надіслати
Поділитися на інших сайтах


Добрый день, не выгружаются заказы, в логах нашел только это - modeFileSale(): Загрузка заказов отключена. Файлов никаких в папке /public_html/system/storage/cache/exchange1c нет кроме пары старых архива, очень быстро там они плодились пришлось эту возможность убрать. Выгрузка товаров происходит.

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.