SQL запросы для движка OpenCart

В данном разделе оставляются заявки для создания SQL запросов для обновления тех или иных полей при импорте и экспорте.
вася
Сообщения: 59
Зарегистрирован: 20 мар 2013 16:50

27 мар 2013 14:58

Еще один запрос есть

при экспорте товара
не заполняется основная категория

Изображение




так как движок немного отличается от оригинального Openacart

в техподдержке (по ICQ) сообщили что можно наверно решить этот вопрос SQL запросом
поэтому пишу здесь

Движок Ocstore 1.5.3.1(руссский Opencart)

Заранее спасибо
Аватара пользователя
TechAdmin
Администратор
Сообщения: 4286
Зарегистрирован: 27 авг 2008 14:30

28 мар 2013 11:23

для заполнения тегов товара - H1

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

UPDATE product_description, etrade_products SET product_description.seo_h1=CONCAT('Купить ', etrade_products.manufac_name, ' ', etrade_products.model, ' в калининградском интернет магазине ххххх.RU тел. (4012) хххххх') WHERE product_description.product_id=etrade_products.tov_id;;;

для заполнения тегов товара - title

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

UPDATE product_description, etrade_products SET product_description.seo_title=CONCAT('Купить ', etrade_products.manufac_name, ' ', etrade_products.model, ' в калининградском интернет магазине ххххх.RU тел. (4012) хххххх') WHERE product_description.product_id=etrade_products.tov_id;;;

Как заполнить Теги товара: - это тоже под вопросом (типа такого - лучше, дешево, цена, купить, KVR1333D3S9/2G, Kingston)

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

DELETE FROM product_tag WHERE product_id IN (SELECT tov_id FROM etrade_products);;;
INSERT INTO product_tag (product_id, language_id, tag) SELECT tov_id, 1 as language_id, 'лучше' as tag FROM etrade_products;;;
INSERT INTO product_tag (product_id, language_id, tag) SELECT tov_id, 1 as language_id, 'дешево' as tag FROM etrade_products;;;
INSERT INTO product_tag (product_id, language_id, tag) SELECT tov_id, 1 as language_id, 'цена' as tag FROM etrade_products;;;
INSERT INTO product_tag (product_id, language_id, tag) SELECT tov_id, 1 as language_id, 'купить' as tag FROM etrade_products;;;
INSERT INTO product_tag (product_id, language_id, tag) SELECT tov_id, 1 as language_id, etrade_products.model as tag FROM etrade_products WHERE etrade_products.model<>'';;;
INSERT INTO product_tag (product_id, language_id, tag) SELECT tov_id, 1 as language_id, etrade_products.manufac_name as tag FROM etrade_products WHERE etrade_products.manufac_name<>'';;;

при экспорте товара не заполняется основная категория

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

UPDATE product_to_category, etrade_products SET main_category=0;;;
UPDATE product_to_category, etrade_products SET main_category=1 WHERE etrade_products.tov_id=product_to_category.product_id AND etrade_products.tov_cat_id=product_to_category.category_id;;;


В SQL запросах использован язык сайта по умолчанию с ИД равным 1, если у вас другой ИД языка сайта, необходимо 1 заменить на нужный ИД

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

1 as language_id


В SQL запросах использовано поле Модель из учётной системы ПЛИ, проверьте чтобы оно было заполнено в ПЛИ. В противном случае используйте наименование товара (поле etrade_products.tov_name).

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

etrade_products.model

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

Данные SQL запросы необходимо добавить вот сюда:
setup_addon_sql_queries.png
setup_addon_sql_queries.png (103.81 КБ) 12431 просмотр
С уважением, поддержка ElbuzGroup.
вася
Сообщения: 59
Зарегистрирован: 20 мар 2013 16:50

28 мар 2013 13:14

супер огромное спасибо
буду пробовать
по факту отпишусь
вася
Сообщения: 59
Зарегистрирован: 20 мар 2013 16:50

09 апр 2013 02:14

UPDATE product_to_category, etrade_products SET main_category=0;;;
UPDATE product_to_category, etrade_products SET main_category=1 WHERE etrade_products.tov_id=product_to_category.product_id AND etrade_products.tov_cat_id=product_to_category.category_id;;;


данная команда обнуляет главную категорию у всех товаров
что есть на сайте

(у нас есть товары которые забиваются вручную и не находятся в системе вашей программы)

как этого избежать?
Аватара пользователя
support
Сообщения: 10553
Зарегистрирован: 09 ноя 2008 21:37

09 апр 2013 08:43

Добавлять товары в одном месте - только в программе.
Предварительно сделав импорт данных из магазина в программу.
БД сайта и БД программы должны быть синхронизированы между собой.
C уважением, поддержка ElbuzGroup.
Документация E-Trade Jumper
Аватара пользователя
TechAdmin
Администратор
Сообщения: 4286
Зарегистрирован: 27 авг 2008 14:30

09 апр 2013 10:22

Для обнуления категории только для товаров, которые есть в списке экспорта ПЛИ используйте эти SQL запросы:

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

UPDATE product_to_category SET main_category=0 WHERE product_id IN (SELECT tov_id FROM etrade_products);;;
UPDATE product_to_category, etrade_products SET main_category=1 WHERE etrade_products.tov_id=product_to_category.product_id AND etrade_products.tov_cat_id=product_to_category.category_id;;;

Крайне не желательно иметь разные списки товаров в БД сайта и в БД ПЛИ, это приведёт к не предсказуемым результатам.
С уважением, поддержка ElbuzGroup.
вася
Сообщения: 59
Зарегистрирован: 20 мар 2013 16:50

09 апр 2013 15:03

ограничение моей версии программы не позволяют вести полный список товаров

вопрос к сожалению пока остался открытым
ztekem
Сообщения: 174
Зарегистрирован: 20 фев 2013 19:09

16 апр 2013 12:37

День добрый столкнулся с проблемой что в товаре не прописывается главная категория.
Использую сборку 1.5.4.1

пробовал все варианты sql запросов приведенных в этой теме.
выдает ошибку.

http://trirozetki.ru/download/%D0%9E%D1%88%D0%B8%D0%B1%D0%BA%D0%B0.GIF

Подскажите как поправить данный запрос.

UPDATE product_to_category, etrade_products SET main_category=0;;;
UPDATE product_to_category, etrade_products SET main_category=1 WHERE etrade_products.tov_id=product_to_category.product_id AND etrade_products.tov_cat_id=product_to_category.category_id;;;

Спасибо!
Аватара пользователя
TechAdmin
Администратор
Сообщения: 4286
Зарегистрирован: 27 авг 2008 14:30

16 апр 2013 14:09

Между каждым SQL запросом укажите разделитель - ;;;
С уважением, поддержка ElbuzGroup.
ztekem
Сообщения: 174
Зарегистрирован: 20 фев 2013 19:09

16 апр 2013 15:57

а можно по точней?

UPDATE product_to_category, etrade_products SET main_category=0;;;
UPDATE product_to_category, etrade_products SET main_category=1;;;
WHERE etrade_products.tov_id=product_to_category.product_id AND etrade_products.tov_cat_id=product_to_category.category_id;;;

так тоже ошибку выдает.
Ответить

Вернуться в «SQL запросы для E-Trade PriceList Importer»