Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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

Warning

Обязательно сделайте бекап базы данных сайта или целиком сайта, перед тем как запускать задание с измененными настройками!

Для выгрузки добавьте задание Quad.Magic “Экспорт полей/характеристик”

...

Настройка 1 - укажите файл, в который будет выгружаться информация. Файл с расширением CSV. Файл желательно выгружать в отдельную папку, например Quad Soultions\files\4_ out\params, чтобы при вызове скрипта отправки на хостинг загружался только 1 этот файл из папки.

...

Code Block
g:\PropertyToFTPgg.bat
https://site.ru/quad/update_propery123.php  
P|code|price|null2|null|1|15|RUB
N|code|f_407kvcl3c|null|null|71|15|null
S|code|f_4083ul6fk|null|null|248|15|null
Q|code|8|is_exists|null|null|15|null
DS|code|minmax|0|45|260|15|null

первая строка - путь к BAT файлу, который отправляет файл выгрузки на FTP (синхронизирует папку с обновлением, например Quad Soultions\files\4_ out\params )

Expand
titleПример BAT-файла
Code Block
@echo off
set LOG_PATH=g:\2\

"C:\Program Files (x86)\WinSCP\WinSCP.com" ^
/log="%LOG_PATH%WinSCP.log" /ini=nul ^
/command ^
     "open ftp://user:password@server" ^
    "synchronize remote ""g:\Quad Soultions\files\4_ out\params"" ""/www/site.ru/quad/""" ^
	"close" ^
	"exit"


set WINSCP_RESULT=%ERRORLEVEL%
if %WINSCP_RESULT% equ 0 (
  echo Success
) else (
  echo Error
)

exit /b %WINSCP_RESULT%
5

BAT-файл должен быть в папке Quad Solutions\files\winscp\

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

...

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

P - цена

...

Q - остаток

...

(выгружается на сайт как количество товара), QS - остаток в виде текстового свойства, QN - остаток в виде числового свойства

...

N - число

S - строка

M - свойство типа справочник/список

DS - сроки доставки в виде текстового свойства, DN - сроки доставки в виде числового свойства.

при использовании типа Q в это значение должно выгружаться 0, если товара нет в наличии или любое число (остаток), если товар в наличии

...

ИД характеристики товара можно посмотреть здесь:

...

в колонке piid

...

Если тип поля “Q”, “QS” или “QN”, а в Поле1 указано просто число, а тип поля Q, QS или QN, то программа считает, что нужно выгрузить текст наличия под соответствующим номером из этой таблицы в конфигурации.

...

При этом в Поле2 должно быть указано поле наличия товара, is_exists для основной цены, либо поле с кодом, который начинается с exf_ для полей дополнительных цен.

Если тип поля “P”, то в Поле 2 нужно указать число - количество знаков после запятой в выгружаемой цене. Округляется цена математически.

Note

поле 3 обычно не используется, в него можно выгружать поле id - чтобы в файле можно было определить, к какому товару относится значение в строке по QID, т.е. например так:

P|code|price|

...

2|id|1|15|RUB

фикс. значение 1 - N - в конце можно указать любое количество фиксированных значений. Фиксированное, это значит, что в файл выгрузится тот текст, который вы здесь напишете. Здесь может быть, например, код свойства товара на сайте, ид поля цены на сайте, валюта, код инфоблока и любые другие значения, которые понадобятся для обновления сайта. Важно! чтобы во всех строках было одинаковое количество фиксированных значений. Если, например, для поля цены вы выгружаете 3 фикс., а для простого свойства 2, то остальные заполняйте словом “null”

Фиксированные значения можно передавать и в качестве параметра ссылки, для этого перед значением нужно добавить слово URL (большими буквами), например

N|code|f_407kvcl3c|null|null|URL 71|URL 15|URL new

в этом случае скрипт обновления будет вызван в виде:

https://site.ru/quad/update_propery.php?field4=71&field5=15&field6=new

т.е. будут добавлены параметры начиная с field4

В конце каждой строки можно добавлять комментарий, для этого добавьте 2 косые черты “//” и после них в строке можно написать любой текст (обычно указывают информацию о свойстве, которое заполняется в этой строке)

...

Сроки доставки

Если тип поля “DN” или “DS”, то строка настроек заполняется следующим образом:

В Поле1 указывается одно из следующих значений:

min - выгружается минимальный срок доставки (Срок ОТ)

max - выгружается максимальный срок доставки (Срок ДО)

minmax - выгружается значение вида “min-max”, т.е. минимальный и максимальный срок через тире или только минимальный срок, если максимальный не задан (например 3-5).

date - выгружается дата минимального срока доставки

В Поле2 указывается ИД поля цены (0 для основной цены или же ИД дополнительного поля цены)

...

В Поле3 указывается ИД региона (посмотреть можно в списке Регионов)

...

Пример строки:

DS|code|minmax|0|45|248|15|null

так выгрузится в виде текстового свойства минимальный и максимальный срок доставки для основной цены и региона с ид = 45

Вариант заполнения фиксированных значений для Bitrix

поле сравнения - должно выгружаться поле, в котором храниться XML_ID (Внешний код) товара.

Поле цены

P|code|price|null2|null|1|15|RUB

первое значение - ИД поля цены с сайта (в примере оно равно 1), посмотреть его можно на сайте в разделе Магазин/Настройки/Цены/Типы цен

...

Поле свойства с типом Число или Строка

N|code|f_407kvcl3c|null|null|71|15|null

Первое значение - ИД свойства на сайте (в примере 71)

...

Третье значение - null, чтобы количество значений совпадало с полем цены

Внимание! Если у вас свойства хранятся в отдельной таблице для каждого инфоблока

...

то фиксированные значения нужно передавать через параметры, т.е. добавлять к ним URL

N|code|f_407kvcl3c|null|null|URL 71|URL 15|null

Поле количества

Q|code|8|is_exists|null|null|15|null

Это количество, которое выгружается в торговый каталог в поле “Доступное количество”

...

Если наличие нужно выгружать из какого-то поля, а не фиксированные значения, в этом случае вместо кода площадки (8) нужно указать код поля, например:

Q|code|stock|null|null|null|15|null

15 - ид инфоблока, если нужно для всех инфоблоков, то 0

Note

Если вы хотите использовать значения наличия не в качестве количества товара, а в качестве значений каких-то свойств, то тип поля нужно указывать QS или QN, вместо Q

Поле типа Список

M|code|f_asd123d|null|null|94|15|null

в примере:

f_asd123d - поле, которое заполнено числовыми айдишниками значений из списка

...

94 - ИД свойства

...

Внимание! Если у вас свойства хранятся в отдельной таблице для каждого инфоблока

...

то фиксированные значения нужно передавать через параметры, т.е. добавлять к ним URL

M|code|f_asd123d|null|null|URL 94|URL 15|null

Пример заполненной информации:

...

Для свойств с типом “Простой чекбокс (число)” выгружается числовая характеристика (N) со значениями 0 или 1.

...