Quad.Wiki

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

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

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

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

Настройка задания

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

Настройка 3 - SQL фильтр товаров, которые будут выгружаться. Остается пустым, если выгружаются все товары.

Настройка 2 - здесь указываются настройки выгружаемых полей, а так же путь к bat-файлу, который отправляет информацию на хостинг и ссылка на скрипт, которой информация загружается в базу.

Настройки указываются следующего вида:

g:\PropertyToFTPgg.bat
https://site.ru/quad/update_propery123.php  
P|code|price|null|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

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

 Пример BAT-файла
@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\

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

третья и остальные строки - выгружаемые поля, которые задаются по следующему шаблону (теги, разделенные вертикальной чертой):

тип|поле сравнения|поле 1|поле 2|поле 3|фикс. 1|фикс. 2|..|фикс. N

тип - тип выгружаемого значения, P - цена, Q - остаток, N - число, S - строка, QS - остаток в виде текстового свойства, QN - остаток в виде числового свойства, M - свойство типа справочник/список

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

поле сравнения - поле для синхронизации товара с сайтом, это должен быть какой-то идентификатор или код товара на сайте, по которому будет идти обновление

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

Если нужно выгрузить название бренда, то поле нужно указывать manuf

code - код, article - модель, price - основная цена, код пользовательского поля можно посмотреть здесь:

В поле 1 можно выгрузить значение характеристики товара, а не просто поле, для этого туда нужно записать код prop123, где 123 - ид характеристики товара, указанное после тега prop.

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

в колонке piid

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

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

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

P|code|price|null|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 косые черты “//” и после них в строке можно написать любой текст (обычно указывают информацию о свойстве, которое заполняется в этой строке)

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

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

Поле цены

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

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

второе значение - ИД инфоблока товаров (в примере 15), посмотреть можно в админке в разделе Контент/Инфоблоки/Типы инфоблоков, если нужно для всех инфоблоков, то 0

третье значение - код валюты, в моем примере это RUB, посмотреть можно здесь: Настройки/Валюты/Список валют

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

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

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

ИД так же можно посмотреть в админке в карточке товара, кликнув на названии свойства правой кнопкой мыши и в меню выбрав “Просмотреть код”

Второе значение - ИД инфоблока для которого будет заполняться свойство, если нужно для всех инфоблоков, то 0

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

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

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

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

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

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

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

в примере:

8 - код площадки

is_exists - название поля наличия товара, это может быть is_exists (основное наличие) или же код поля наличия дополнительной цены, например exf_3v2vh5rth

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

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

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

Если вы хотите использовать значения наличия не в качестве количества товара, а в качестве значений каких-то свойств, то тип поля нужно указывать 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.

  • No labels