camo-mania
Программные разработки для CMS Simpla, расширяющие и изменяющие стандартный функционал системы.

Каталог товаров

Каталог статей

Импорт: ошибки и нерациональности

Обнаружено довольно много ошибок, связанных с импортом.

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

Например, пользователь сделал экспорт. Вполученном файле удалил все строки товаров, кроме одной. И эту одну строку товара сдублировал. Если теперь сделает импорт этих двух строк, что должно произойдет? Ответ напрашивается сам собой: дважды перезапишется один и тот же товар, то есть реально изменений не будет.

А если в дублированном товаре изменить название? Ответ неоднозначен. Могут возникнуть разные ситуации в зависимости от конкретных данных. Одна из ситуаций такова - появится сдублированный товар, но у двух товаров будут одинаковые URL, что на практике приведет к тому, что страница одного товара из двух будет недоступна даже теоретически

Второй момент. Очень нерационально работает импорт со свойствами товара. Простой пример: если на сайте всего задано 100 свойств, а реально у товара заполнены значениями в среднем 10 свойств, то импорт, кроме записи этих 10 реальных свойств, будет обрабатывать также дополнительно 90 пустых значений каждое в отдельности, вместо того, чтобы удалить пустые одним запросом. А если постараться и запрограммировать это место поаккуратнее, можно вообще обойтись парой запросов вместо сотни... Если в файле импорта 1000 строк, то имеем в процессе импорта минимум 90 000 лишних запросов. Кроме того, также тупо многократно повторяется запрос на связь категории и свойства. Если оптимизировать импорт хотя бы в одном этом месте, можно получить солидную экономию

Третий момент. Весьма странно работает импорт с адресами товара. Допустим, в файле импорта одна строка с пустым полем адреса и такого товара в базе магазина нет. Пример содержимого файла импорта:
Категория;Товар;Цена;Адрес;Видим;Бренд;Вариант;Артикул;Склад
Диваны;Маленький;163.00;;1;Corm;v1;10011;5
В результате импорта появится новый товар, адрес которого сформирован транслитом из названия. Это верно.
А теперь повторим импорт из того же файла. Естественно ожидать, что товар перезапишется без изменений. Но не тут-то было - в реальности у товара адрес станет пустым.

Четвертый момент. Импорт обрабатывает поля не так, как они обрабатываются при обычном редактировании товара в админке. Если в админке создавать вручную товар с артикулом " xyz" (с пробелом в начале), он создается именно так, то есть с пробелом " xyz". Если же сделать то же самое через импорт, то артикул запишется как "xyz", то есть без пробела. Оттого могут происходить дубли товаров и подобные недостатки.


  • Отзывы (2)
  • Добавить отзыв

Отзывы:

shemetok@gmail.com 17.12.2015

Есть посерьёзнее недоделка, недодумка :-) решение которой сейчас ищу.
Короче, товар вношу в несколько категорий, это можно делать как известно в csv файле через запятую пишутся категории, например - детские, складские, бордюры, в результате товар вносится в несколько категорий которые если нужно создаются, всё вроде хорошо, но… тут мне нужно чтоб товар принадлежал только одной категории – детские. Я думаю наверное это не проблема, и в csv файле удаляю часть складские, бордюры и переливаю. И что я вижу да них.. не поменялось, остались категории, пробовал заливать вообще пустое поле может думаю сотрётся тоже самое.

Пс. Товары удалять не вариант!

admin 17.12.2015

Да, хорошую ошибку Вы подметили...

http://simpla-tuning.com/import-and-product-categories

© 2018 simpla-tuning.com