Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
minLevel1
maxLevel7

...

Поле полного остатка - код поля или SQL-запрос, с помощью которого на сайт передается числовой остаток товара.

Пример 1 запроса:

Code Block
(case p.is_exists when 2 then 0 else 100 end)

Передается 0, если товара нет в наличии или 100, при другом статусе. 100 можно поменять на любое число. Этот остаток записывается сюда:

...

Пример 2 запроса:

Выгрузка числового остатка, а если его нет, то по типу наличия:

...

Каждое значение указывается с новой строки в виде:

PFLD|Название поля|SQL поля|Тип значения|Тип поля|Доп. параметр

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

PFLD - постоянное значение, признак того, что это поле должно выгружаться при обновлении цен и остатков

Название поля - уникальное название поля, может быть любое, содержащее латинские буквы и цифры, например: field1, field2, prc123 и т.п. Главное чтобы оно во всех строках было разное.

SQL поля - здесь указывается код поля (вкладка Продукция) или SQL-запрос, с помощью которого отбирается информация, выгружаемая в это поле на сайт.

Тип значения - тип значения поля (N - число, S - строка или другое)

Тип поля - тип поля на сайте, в которое выгружается значение, возможные варианты:

...

ELM - поле из таблицы b_iblock_element

Доп. параметр - здесь указывается дополнительный параметр, в зависимости от Тип поля

Если тип поля PRM или ENM, то указывается ИД свойства на сайте

...

Code Block
PFLD|avl1|(case p.is_exists when 2 then 'N' else 'Y' end)|S|PRD|AVAILABLE

Остатки из поля на склад

Code Block
PFLD|whs3|p.f_42n7ksgt9|N|WHS|3 

Выгружается число из поля p.f_42n7ksgt9 в склад на сайте с ИД = 3

запрос, которым можно скопировать остатки из какого прайса (загруженные в виде числового остатка) в поле в Продукции

Code Block
update product set f_42n7kssrg = (select sum(coalesce(stock, 0)) from
price_detail pd where pd.product_id = product.id
and pd.price_id = 596 and pd.is_exists <> 2);     
update product set f_42n7kssrg = 0 where f_42n7kssrg is null;  

f_42n7kssrg - код поля, тип Число, в который копируется остаток

596 - ИД прайса, из которого копируется