SQL запросы для движка VirtueMart (Joomla)

В данном разделе оставляются заявки для создания SQL запросов для обновления тех или иных полей при импорте и экспорте.
Аватара пользователя
support
Сообщения: 10553
Зарегистрирован: 09 ноя 2008 21:37

19 янв 2012 14:30

Здесь будет список SQL запросов с описанием для чего они используются для движка VirtueMart (Joomla).

Импорт:


Экспорт:

Заменить артикул производителя на ID товара:
Вкладка До обновления.

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

UPDATE etrade_products SET tov_art=tov_id
C уважением, поддержка ElbuzGroup.
Документация E-Trade Jumper
kubik14
Сообщения: 6
Зарегистрирован: 28 сен 2012 09:53

24 дек 2012 12:13

Товары с одинаковым ном номером могут отличаться размерами (размер стоит в столбце Габарит) Как создать доп SQL запрос
для обновления даных на сайте из этого поля в БД программы.
Аватара пользователя
TechAdmin
Администратор
Сообщения: 4286
Зарегистрирован: 27 авг 2008 14:30

24 дек 2012 12:57

В админ части VirtueMart v2, в разделе "Настраиваемые поля" посмотрите нужный заголовок поля, которое нужно обновлять, например "Размер", это название вставьте в SQL запрос.

Пример SQL запросов для обновления настраиваемых полей в VirtueMart v2, пример обновления поля "Размер" на основании данных из базы ПЛИ из поля "Габарит" (tov_size):

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

UPDATE jos_virtuemart_customs, jos_virtuemart_product_customfields, etrade_products SET jos_virtuemart_product_customfields.custom_value=etrade_products.tov_size WHERE jos_virtuemart_customs.custom_title='Размер' AND jos_virtuemart_product_customfields.virtuemart_custom_id=jos_virtuemart_customs.virtuemart_custom_id AND etrade_products.tov_id=jos_virtuemart_product_customfields.virtuemart_product_id;;;
INSERT INTO jos_virtuemart_product_customfields (virtuemart_product_id, virtuemart_custom_id, custom_value) SELECT etrade_products.tov_id, (SELECT virtuemart_custom_id FROM jos_virtuemart_customs WHERE custom_title='Размер' GROUP BY virtuemart_custom_id) as virtuemart_custom_id, etrade_products.tov_size FROM etrade_products WHERE etrade_products.tov_id NOT IN (SELECT virtuemart_product_id FROM jos_virtuemart_product_customfields WHERE virtuemart_custom_id=(SELECT virtuemart_custom_id FROM jos_virtuemart_customs WHERE custom_title='Размер' GROUP BY virtuemart_custom_id));;;

В представленных SQL запросах используется префикс таблиц по умолчанию "jos_", если у вас другой префикс таблиц, тогда замените везде "jos_" на ваш префикс.
С уважением, поддержка ElbuzGroup.
kubik14
Сообщения: 6
Зарегистрирован: 28 сен 2012 09:53

24 дек 2012 13:31

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

24 дек 2012 14:06

После осн. обновления.
С уважением, поддержка ElbuzGroup.
kubik14
Сообщения: 6
Зарегистрирован: 28 сен 2012 09:53

25 дек 2012 11:12

Ок, все экспортируется, единственное что не так - товар, имеющий разные размеры, имеет одинаковый артикул . При выгрузке на сайте создается несколько карточек товара с одинаковым артикулом и разными размерами.
alecsey
Сообщения: 150
Зарегистрирован: 15 янв 2013 05:40

15 янв 2013 06:07

добрый час. не отображается вес товара в админке и на сайте магазина. помогите правильно составить запрос SQL.

вот что я пробовал : 1 поставил свой префикс таблиц gjp8v_
2: поставил заголовок поля Вес
3:в настройках таблицы поставил флажок вес
4:несколько раз делал экспорт и импорт . не чего не помогает.
Вложения
03.jpg
03.jpg (107.22 КБ) 10750 просмотров
02.jpg
02.jpg (195.28 КБ) 10750 просмотров
01.jpg
01.jpg (192.03 КБ) 10750 просмотров
alecsey
Сообщения: 150
Зарегистрирован: 15 янв 2013 05:40

15 янв 2013 06:18

Trade PriceList вносит в базу данных цены только для группы 2 - default (записывает в базу данных значение 2 вместо NULL - см картинку. ) может это ошибка программы ? из за этого цены видят только зарегестрированные пользователи магазина вообщем нужно сделать что бы цена отображалась для двух групп.
Вложения
6.jpg
6.jpg (39.71 КБ) 10750 просмотров
5.jpg
5.jpg (128.12 КБ) 10750 просмотров
4.jpg
4.jpg (33.07 КБ) 10750 просмотров
3.jpg
3.jpg (138.12 КБ) 10750 просмотров
цена.jpg
цена.jpg (857.73 КБ) 10750 просмотров
Аватара пользователя
support
Сообщения: 10553
Зарегистрирован: 09 ноя 2008 21:37

15 янв 2013 10:03

Нет такого поля в названиях таблиц как Вес, это оно так отображается в программе.
Согласно инструкции:
Вес товара = weight varchar(16)
C уважением, поддержка ElbuzGroup.
Документация E-Trade Jumper
alecsey
Сообщения: 150
Зарегистрирован: 15 янв 2013 05:40

15 янв 2013 10:46

UPDATE gjp8v_virtuemart_customs, gjp8v_virtuemart_product_customfields, etrade_products SET gjp8v_virtuemart_product_customfields.custom_value=etrade_products.tov_size WHERE gjp8v_virtuemart_customs.custom_title='weight varchar(16)' AND gjp8v_virtuemart_product_customfields.virtuemart_custom_id=gjp8v_virtuemart_customs.virtuemart_custom_id AND etrade_products.tov_id=gjp8v_virtuemart_product_customfields.virtuemart_product_id;;;
INSERT INTO gjp8v_virtuemart_product_customfields (virtuemart_product_id, virtuemart_custom_id, custom_value) SELECT etrade_products.tov_id, (SELECT virtuemart_custom_id FROM gjp8v_virtuemart_customs WHERE custom_title='weight varchar(16)' GROUP BY virtuemart_custom_id) as virtuemart_custom_id, etrade_products.tov_size FROM etrade_products WHERE etrade_products.tov_id NOT IN (SELECT virtuemart_product_id FROM gjp8v_virtuemart_product_customfields WHERE virtuemart_custom_id=(SELECT virtuemart_custom_id FROM gjp8v_virtuemart_customs WHERE custom_title='weight varchar(16)' GROUP BY virtuemart_custom_id));;;

прописал вот такой запрос вес товара все равно не появился. несколько раз делал экспорт и импорт категорий с товарами. результат ноль.

скажите что делать.
Ответить

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