Преобразования в загружаемых полях

В настройках любого импортируемого поля есть возможность задавать преобразования значений.
Настройки полей

Пример преобразования значения выглядит таким образом.
Пример преобразования

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

Любое преобразования состоит из условия и действия.
Условие и действие

При необходимости значения из других колонок можно использовать в условии преобразования.
Условие со значением из другой колонки

"Текущее значение" - это значение поля из файла импорта с учётом всех предыдущих преобразований.
Текущее значение

Если необходимо проверить исходное значение из файла, не учитывая все предыдущие преобразования, то в условии нужно выбрать "Значение в колонке" с необходимым номером.
Значение из колонки

Если в списке возможных действий в преобразованиях нет нужного Вам действия, то можно применить php-преобразование.
php-преобразование

По php-преобразованиям возможны 2 варианта написания.

1) Любой однострочный код, который сразу возвращает результат (без return).
Примеры:
1.1) round($val,2)
1.2) round(max($val*2, $val+10),2)+25
1.3) $val.' дополнительный текст'

2) Любой код, содержащий присвоение переменной $val. Т.е., в переменной $val содержится как входящее значение, так в неё может быть передано и исходящее значение.
Здесь достаточно одного примера.
$val = $val*2; $val = round($val,2);

И ещё важный момент по php-преобразованиям. Если в них использовать вставки вида #IP_PROP12#, то они сначала заменятся на значения этих полей, а потом уже выполнится php-код. Это может вызывать ошибки.
Например.
$val = #IP_PROP12#*2;

Данный код будет выполнен правильно только если #IP_PROP12# имеет числовое значение. Иначе мы получим ошибку php.
Чтобы избежать таких ошибок, в php-преобразованиях лучше использовать переменные такого вида ${'#IP_PROP12#'}. С ними никаких проблем не должно быть.



 Настройка загружаемых полей | Описание курса | Демо-режим 
   

 

Пользовательские комментарии

Дмитрий Кривочуров
Цитата
n00b
как вставить перенос строки в преобразовании детального текста?
Здравствуйте.
Если детальный текст имеет тип html, то в качестве переноса строки нужно использовать тег <br>.

Если же описание имеет тип текст, но на данный момент перенос строки можно вставить только с помощью php-преобразования, используя символы \n
ИмяЦитировать0
n00b
как вставить перенос строки в преобразовании детального текста?
ИмяЦитировать0
Комментировать