Программа iNETsHOP - обработка, сравнение, анализ прайс листов поставщиков, создание каталога товаров интернет магазина Форум - Программа iNETsHOP - Работа с программой - Помогите отредактировать запрос обмена данными


http://inetshop.in.ua/index.php?p=showtopic&toid=336&pp=15&page=1&area=1&print_post=2022
17.08.2016 08:06

deniska312


Пользователь iNETsHOP

Количество сообщений   17
Зарегистрирован:   17-05-2016, 23:32:49
Иммем Виртуемарт 3, и настроена система обмена данными напрямую в базу. прайсы обновляются ежедневно, и количества наличия у меня нет, поставщик не предоставляет. Поэтому система есть товар или нету настроена так:
Если товар есть у поставщика, то в программе ставится галочка наличия, и с помощью наличия этой галочки запрос определяет, публиковать ли товар или снять с публикации. Если он товар публикует то ставит ему кол-во наличия 100 шт.

Мне нужно сделать так, чтобы публиковались все товары, но в зависимости от того стоит ли галочка или нет менялось кол-во наличия. То есть, если галочка стоит то товар публикуется и его количество пишем 100, если товара нет в наличии, то товар публикуем и количество ставим 0.

product_in_stock - количество наличия товаров
published - 1 активный 0 неактивный



Вот сам код на это дело
Код


UPDATE jos_virtuemart_products p, TBL_GOODS g
SET
# 1, /*virtuemart_vendor_id*/
p.product_parent_id = IFNULL(G_G_ID, 0),
# G_ID, /*product_sku*/
# '', /*product_gtin*/
# NULL, /*product_mpn*/
# 0, /*product_weight*/
# 'KG', /*product_weight_uom*/
# 0, /*product_length*/
# 0, /*product_width*/
# 0, /*product_height*/
# 'M', /*product_lwh_uom*/
# '', /*product_url*/
p.product_in_stock = CASE WHEN G_PRESENT> 0 THEN 100 ELSE 0 END,
# 1, /*product_ordered*/
# 0, /*low_stock_notification*/
# '0000-00-00 00:00:00', /*product_available_date*/
# '', /*product_availability*/
# 0, /*product_special*/
# 0, /*product_sales*/
# 'KG', /*product_unit*/
# 0, /*product_packaging*/
# 'min_order_level="0"|max_order_level="0"|step_order_level=null|product_box="0"|', /*product_params*/
# 0, /*hits*/
# '', /*intnotes*/
# '', /*metarobot*/
# '', /*metaauthor*/
# 0, /*layout*/
p.published = CASE WHEN g.g_ID IN (SELECT G_G_ID FROM TBL_GOODS WHERE G_G_ID > 0) OR G_PRESENT > 0 THEN 1 ELSE 0 END,
# 0, /*pordering*/
# now(), /*created_on*/
# 0, /*created_by*/
p.modified_on = now(),
p.modified_by = 0
WHERE p.virtuemart_product_id = g.G_ID