× Здесь вы можете свободно общаться на русском языке. Просим отнестись с пониманием к тому, что мы не разговариваем на этом языке и не можем осуществлять поддержку на нем.

Импорт-Экспорт CSV

  • Posts: 376
  • Thank you received: 75
1 week 4 days ago #328161

На самом деле здесь много нюансов.
Набор полей зависит от вашей задачи.

Если вы сделали экспорт ваших товаров, поменяли какую-то информацию в csv-файле и грузите обратно в базу через импорт, то идентификатор товара задавать надо (по нему как раз будет найден тот уникальный товар, который надо модифицировать). Можно также задавать поля с префиксом product - product_name, product_description, ...
Идентификаторы с префиксом price, file не надо задавать. Точно можно задать price_value, file_name, file_description.
При этом при импорте надо снять/поставить галочки, так, чтобы если есть товар с заданным идентификатором, то по нему информация в базе данных менялась, а не новый товар добавлялся.

Если вы добавляете новые товары, то идентификаторы не надо указывать вообще. Иначе будут конфликты.

Лучший путь - экспериментировать. Возьмите пару товаров для начала. И те поля, которые вам нужно добавить/изменить.

Для полного переноса всех товаров сами разработчики рекомендуют использовать PHPMyAdmin или аналогичные средства для работы с таблицами MySQL - PHPMyAdmin или аналогичные.

Удачи!

The following user(s) said Thank You: Igor_UA

Please Log in or Create an account to join the conversation.

  • Posts: 38
  • Thank you received: 0
1 week 3 days ago #328211

Добрый вечер!
С самой проблемой экспериментальным путём разобрался. Но вот её причины мне остались непонятны.
В ходе решения проблемы было обнаружено, что Хика информацию о товарах и категориях разбрасывает по своим таблицам и очень объёмно ругается, когда при импорте товара ему присваиваются категории с помощью значений их ID, отказываясь их учитывать в процессе.
Проблема подвязки товара к категории решается путём переименования в csv-файле колонки "category_name" в "categories" ("category_id" при этом не используется). В этом случае Хика молча и спокойно связывает товар и категории. Но почему ей нужно это переименование, если колонки с таким именем нет в экспортируемом файле?

Please Log in or Create an account to join the conversation.

  • Posts: 376
  • Thank you received: 75
1 week 3 days ago #328217

На самом деле при экспорте товаров есть колонка "categories" - туда записываются категории товара (если вы поставили галочку для category_name), а их может быть несколько.
Вы правильно заметили, что Hikashop использует несколько таблиц для хранения товара. Например, есть таблица категорий и товаров, а есть таблица связей между ними, в ней хранятся связки идентификаторов товаров и категорий.
Логика при импорте у системы примерно такая:
- ищется товар с указанным идентификатором в таблице товаров _hikashop_product, если найден, то в этой таблице производятся изменения
- если указаны "categories", то в таблице категорий _hikashop_category ищутся все указанные категории, а потом пары идентификатора товара и найденных категорий ищутся в таблице _hikashop_product_category. Ненужные связки удаляются, а новые добавляются (если вы
поменяли категории для товара, какие-то убрали, какие-то добавили).
Также происходит и с другими таблицами, которые логически связаны с товарами - цены, файлы.

The following user(s) said Thank You: Igor_UA

Please Log in or Create an account to join the conversation.

Moderators: progreccor
Time to create page: 0.071 seconds
Powered by Kunena Forum