Дублирование ID категорий артикулом №2

Помощь пользователям в работе с программой E-Trade PriceList Importer
Ответить
Topsto
Сообщения: 49
Зарегистрирован: 07 фев 2012 16:41

18 авг 2015 12:36

Наша структура категорий имеет диапазон ID от 100000 до 100500.
Так как основной артикул СТУС, вида 3UX12CKKS на сайте использовать очень неудобно, то как только Вы ввели Артикул №2, мы взяли его за основу. Он простой и имел изначально вид пятизначного числа (33333).
Несколько дней назад наступил момент, когда Артикул №2 в СТУС начал генерировать числа от 100000. Т.е. начал дублировать ID категорий.
Чтобы исправить данную проблему, правило формирования артикула №2 откорректировали - TS{PRODUCT_ID}

Вроде бы все работает. В 1С новые артикулы загружаются без проблем, но при выгрузке данных на сайт через etrade http tunnel, выгружает не TS100160, а только число (100160).
В таблицу etrade_products попадают такие данные:
tov_id.png
tov_id.png (56.07 КБ) 4157 просмотров

Перед основным обновлением исполняется sql запрос:

Код: Выделить всё

UPDATE etrade_products SET tov_art=tov_id;;;

В справке видел, что для таблицы etrade_products, для tov_id Код товара (только числовое значение)

Можно ли обойти как-то это ограничение и все-таки выгружать артикул №2 на сайт, как код товара, вида TS100160?

Магазин на cs-cart 3.0.6
Аватара пользователя
support
Сообщения: 10553
Зарегистрирован: 09 ноя 2008 21:37

18 авг 2015 19:09

А что плохого что артикул 2 дублирует ID? Это ведь два разных поля с разными названиями что мешает им быть одинаковыми?
C уважением, поддержка ElbuzGroup.
Документация E-Trade Jumper
Topsto
Сообщения: 49
Зарегистрирован: 07 фев 2012 16:41

18 авг 2015 20:42

Хотя бы то, что для 1С (во всяком случае, для нашей 1С), ID категорий и ID товара - это одно поле. И естественно, загрузку дублирующихся элементов она блокирует.

Сейчас интересует вопрос по выгрузке данных на сайт. Как оказалось, в cs-cart, поле product_id может содержать тоже только числовое значение.
Поэтому, правило формирования артикула №2 поменял на 3{PRODUCT_ID}.
Т.е. артикул №2 стал генерироваться ввиде 3100000. Так вот, при выгрузке данных на сайт, в product_id пишется только 100000.

Почему в БД сайта не попадает новый артикул 3100000? Откуда вообще может взяться число 100000, если его как бы нет в СТУС? Есть 3100000.

Интересно поведение PLI с новыми 7-ми значными артикулами. По артикулу, например, 3100350 поиском, ничего не находится. Ищешь по 100350 - товар находится.

Отправил Вам на почту видео по поиску товара в PLI по новому артикулу.
Аватара пользователя
support
Сообщения: 10553
Зарегистрирован: 09 ноя 2008 21:37

19 авг 2015 09:59

У Вас включен поиск по артикулу № 2?

артикул 2.png
артикул 2.png (30.35 КБ) 4142 просмотра



[url]> Перед основным обновлением исполняется sql запрос:
> UPDATE etrade_products SET tov_art=tov_id;;;[/url]

этот запрос меняет артикул товара на ИД товара из СТУС, наверное у Вас ИД 100000
как Вы обновляет сайт остаётся загадкой, может Вы используется индивидуальные sql запросы для своего движка и "заказной" тип движка

> Т.е. артикул №2 стал генерироваться ввиде 3100000. Так вот, при выгрузке данных на сайт, в product_id пишется только 100000.


следуя Вашей логике Вы обновляете артикулом №2 числовое поле product_id, но для этого должен быть доп. sql запрос
product_id это ИД товара в базе cs-cart, это поле обычно обновляется числовым полем из СТУС

так же возможно поле в базе сайта product_id имеет малую длину на 6 знаков, то есть это число 100000, а на 7 знаков уже не помещается (число 3100000)
C уважением, поддержка ElbuzGroup.
Документация E-Trade Jumper
Topsto
Сообщения: 49
Зарегистрирован: 07 фев 2012 16:41

19 авг 2015 11:30

У Вас включен поиск по артикулу № 2?

Поиск по артикулу №2, да, работает. Но по 5-ти значным артикулам ищет без проблем и по общему поиску. А по 7-ми значным нет.

как Вы обновляет сайт остаётся загадкой, может Вы используется индивидуальные sql запросы для своего движка и "заказной" тип движка

Для меня теперь уже тоже.
В настройках подключения выбран cs-cart (Используется версия CS-Cart 4 - 0). Используется три индивидуальных запроса, присваивающие статусы наличия товара (после основного обновления). И этот - UPDATE etrade_products SET tov_art=tov_id.
И да, задача последнего запроса была обновлять артикулом №2 поле product_id. Если этот запрос этой задачи не решает, то это загадка, как до сих пор артикул №2 попадал в product_id. И почему перестал, когда артикулы пошли 7-ми значные.

так же возможно поле в базе сайта product_id имеет малую длину на 6 знаков, то есть это число 100000, а на 7 знаков уже не помещается (число 3100000)

Данное поле имеет ограничение в 8 знаков.
Аватара пользователя
support
Сообщения: 10553
Зарегистрирован: 09 ноя 2008 21:37

19 авг 2015 15:52

Как видно со скриншота поиск работает по артикулу который Вы привели.
C уважением, поддержка ElbuzGroup.
Документация E-Trade Jumper
Topsto
Сообщения: 49
Зарегистрирован: 07 фев 2012 16:41

20 авг 2015 18:06

Да, работает. С артикулом №2 разобрался. Оставим его в покое.
Тему нужно было называть Дублирование ID категорий и ID СТУС
Подскажите пожалуйста, в нашей базе, последние ID СТУС идут со значениями 100500 и выше. Как писал ранее, ID категорий в базе идут сейчас в диапазоне 100000-100500. Соответственно ID СТУС пересекается с ID категорий.
Для 1С это неприемлемо.

Можно ли как-то повлиять на назначение чисел ID СТУС?
С целью зарезервировать для ID категорий какой-то запас значений. Т.е. идут сейчас значения в СТУС 100500, а перескакиваем на число 500000 и ведем отсчет от него.
Возможно ли такое? Если это будет платной доработкой, в виде корректировки нашей БД - не вопрос.
Аватара пользователя
TechAdmin
Администратор
Сообщения: 4286
Зарегистрирован: 27 авг 2008 14:30

20 авг 2015 19:14

В настройках программы есть параметр:

Код: Выделить всё

Минимальный уникальный код категории в учётной системе

как вариант попробовать использовать его и прописать значение 500000.
С уважением, поддержка ElbuzGroup.
Topsto
Сообщения: 49
Зарегистрирован: 07 фев 2012 16:41

21 авг 2015 00:02

Помогло. Спасибо.
Ответить

Вернуться в «Техническая поддержка программы E-Trade PriceList Importer»