masterunner Опубликовано: 17 июня 2021 Опубликовано: 17 июня 2021 В моем интернет-магазине у части товаров актуальное количество загружается из 1С, у части - указывается вручную и не участвует в обмене с 1С. В настройках обмена с 1С выставлен правильный отбор по нужным категориям. До недавнего времени я не использовал опции/характеристики в товарах и все работало отлично. С недавнего времени у товаров появились опции/характеристики (объем в мл). Теперь при выполнении обмена товарами с 1С те товары с опциями, которые не должны участвовать в обмене (в 1С эта категория исключена из обмена с сайтом), но у которых вручную выставлен остаток 0 хотя бы у одной опции, получают обнуление общего остатка в opencart. Самое главное, что это только товары с опциями/характеристиками, у которых хотя бы одна опция числится в количестве 0. Другие товары не трогаются. В итоге получается следующая картина: общее количество товара = 0, но количество некоторых опций товара не равно 0. Напоминаю, количества этого товара вообще не выгружаются из 1С, но обнуление происходит именно в момент обмена. Для более четкого понимания привожу пример: есть товары А, Б и С. Остатки по товару А я получаю из 1С путем обмена (в настройках обмена указан отбор по этому товару). Остатки по товару Б и С я вношу вручную, они не должны участвовать в обмене с 1С, потому что в 1С их остатки равны нулю. При этом товар Б обычный (без опций), а товар С имеет 2 опции: 100 мл и 500 мл. Я вношу вручную остатки: товар Б - 100 шт, товар С 100 мл - 0 штук, товар С 500 мл - 50 штук (общее число товара С = 50 штук). При обмене товаров 1С с сайтом получаем следующую картину: товар А подтягивает правильные данные из 1С товар Б не трогается при обмене, его остатки остаются = 100 шт у товара С общее количество обнуляется, у опции 100мл товара С остается 0 штук, у опции 500мл товара С остается 50 штук. Но общее количество в карточке товара стоит 0! В итоге товар С на сайте числится как "Не в наличии", при чем можно выбрать опцию 500мл, но купить товар нельзя, он числится без остатка, хотя должен был быть вообще не тронут. Я даже удалял связь с 1С в карточке товара в opencart, но при обмене товар все-равно сбивается! Скрины из админки после выполнения обмена с ошибкой: 1) вкладка "Опции" товара: 2) Вкладка "Данные" товара (количество обнуляется при обмене): Прошу помочь, спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
NeoSeo Help 2 Опубликовано: 17 июня 2021 Опубликовано: 17 июня 2021 1 час назад, masterunner сказал: В моем интернет-магазине у части товаров актуальное количество загружается из 1С, у части - указывается вручную и не участвует в обмене с 1С. В настройках обмена с 1С выставлен правильный отбор по нужным категориям. До недавнего времени я не использовал опции/характеристики в товарах и все работало отлично. С недавнего времени у товаров появились опции/характеристики (объем в мл). Теперь при выполнении обмена товарами с 1С те товары с опциями, которые не должны участвовать в обмене (в 1С эта категория исключена из обмена с сайтом), но у которых вручную выставлен остаток 0 хотя бы у одной опции, получают обнуление общего остатка в opencart. Самое главное, что это только товары с опциями/характеристиками, у которых хотя бы одна опция числится в количестве 0. Другие товары не трогаются. В итоге получается следующая картина: общее количество товара = 0, но количество некоторых опций товара не равно 0. Напоминаю, количества этого товара вообще не выгружаются из 1С, но обнуление происходит именно в момент обмена. Для более четкого понимания привожу пример: есть товары А, Б и С. Остатки по товару А я получаю из 1С путем обмена (в настройках обмена указан отбор по этому товару). Остатки по товару Б и С я вношу вручную, они не должны участвовать в обмене с 1С, потому что в 1С их остатки равны нулю. При этом товар Б обычный (без опций), а товар С имеет 2 опции: 100 мл и 500 мл. Я вношу вручную остатки: товар Б - 100 шт, товар С 100 мл - 0 штук, товар С 500 мл - 50 штук (общее число товара С = 50 штук). При обмене товаров 1С с сайтом получаем следующую картину: товар А подтягивает правильные данные из 1С товар Б не трогается при обмене, его остатки остаются = 100 шт у товара С общее количество обнуляется, у опции 100мл товара С остается 0 штук, у опции 500мл товара С остается 50 штук. Но общее количество в карточке товара стоит 0! В итоге товар С на сайте числится как "Не в наличии", при чем можно выбрать опцию 500мл, но купить товар нельзя, он числится без остатка, хотя должен был быть вообще не тронут. Я даже удалял связь с 1С в карточке товара в opencart, но при обмене товар все-равно сбивается! Скрины из админки после выполнения обмена с ошибкой: 1) вкладка "Опции" товара: 2) Вкладка "Данные" товара (количество обнуляется при обмене): Прошу помочь, спасибо. Добрый день. Все верно, сейчас функционал работает так. Если включена настройка "Опции" -> "Удаление нулевых опций" то у любого товара у которого есть опция с количеством 0, будет обнулено общее количество. А в логах модуля будет запись "Обнуляем остаток по товарам, у которых есть опции с нулевым остатком". Можете выключить эту настройку что бы не изменялись продукты которые не относятся к 1С. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
masterunner Опубликовано: 18 июня 2021 Опубликовано: 18 июня 2021 Спасибо! У этого решения есть какие-то подводные камни? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
NeoSeo Help Опубликовано: 18 июня 2021 Опубликовано: 18 июня 2021 1 час назад, masterunner сказал: Спасибо! У этого решения есть какие-то подводные камни? Добрый день. Нет, проблем быть не должно. Но рекомендуем Вам выключить опцию и перед обменом сделать бекап. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.