Множественные значения (Шаблоны)
Вкладка Множественные значения (Шаблоны) (ранее называлась "Сравнение значений") содержит настройки для работы с атрибутами, которые содержат несколько значений, разделенных специальным символом.
![]() |
|---|
| Настройки обработки множественных значений и сравнения |
Разделитель (Splitter)
Разделитель — это символ или последовательность символов, используемая для разделения одного длинного текста (Шаблона) на отдельные независимые Значения.
Разделитель позволяет модулю понимать, что запись v1.5.x/2.0.1/2.1.x — это не одно длинное значение, а три разных версии, которые фильтр должен обрабатывать по отдельности.
Настройка разделителя
- Поле ввода: Символ разделителя (например,
/,,,;,|). - Ограничения: Запрещено использовать буквы, цифры, кавычки и квадратные скобки.
- Совместимость: Рекомендуется устанавливать такой же разделитель, какой используется в вашем фильтре (Mega Filter Pro, OCFilter и др.).
Пример работы разделителя:
| Исходная строка | Разделитель | Полученные значения |
|---|---|---|
Красный, Синий, Зеленый | , | Красный, Синий, Зеленый |
16Гб/32Гб/64Гб | / | 16Гб, 32Гб, 64Гб |
Wi-Fi 6; Bluetooth 5.0 | ; | Wi-Fi 6, Bluetooth 5.0 |
Исключения для разделения
Иногда в значении атрибута встречается символ, совпадающий с разделителем, но это значение не должно разделяться.
Как работают исключения
Модуль использует комбинированный список исключений:
- Пользовательский список: Вы можете вручную добавить значения в текстовое поле (одно значение на строку).
- Предустановленные (Hardcoded): В модуль уже встроены популярные исключения (Wi-Fi стандарты,
TCP/IP,S/PDIFи др.). - Автоматические (Единицы измерения): Все единицы измерения из вашей базы данных, содержащие слэш (например,
км/ч).
Пример с исключением:
Допустим, ваш разделитель — /.
| Тип значения | Текст атрибута | Без исключений (ошибка) | С исключениями (верно) |
|---|---|---|---|
| Обычное | Черный/Белый | Черный, Белый | Черный, Белый |
| Сложное | 802.11 a/b/g/n | 802.11 a, b, g, n | 802.11 a/b/g/n |
При обработке текста модуль сначала ищет все совпадения из списка исключений, "маскирует" их, выполняет разделение по остальным символам разделителя, а затем возвращает исключения в исходный вид.
Единицы измерения со слэшем
Работа с единицами измерения автоматизирована. Если вы используете модуль Единицы измерения и добавили туда единицу со слэшем (например, км/ч), она автоматически становится исключением.
Пример автоматической обработки:
Разделитель: /.
Значение в базе: 60 км/ч / 120 км/ч.
- Модуль видит, что
км/ч— это известная единица измерения. - Он понимает, что слэш внутри
км/ч— это часть единицы, а не разделитель значений. - Результат: Модуль корректно разделит строку на два значения:
60 км/чи120 км/ч.
Режимы сравнения значений
Эта настройка определяет, как модуль будет искать и обновлять значения при их редактировании или удалении.
1. По вхождению подстроки (Substr)
Поиск любого вхождения текста внутри строки.
Примеры (Substr):
- Успешная замена: Заменяем
MP4наMP3.- Было:
MP4/AVI,MP4-MPEG4/VOB - Стало:
MP3/AVI,MP3-MPEG4/VOB
- Было:
- Ошибка (Ложное срабатывание): Заменяем
50на50гр.- Было:
50,500,50-100 - Стало:
50гр,50гр0,50гр-100(Значение500испорчено!)
- Было:
2. По точному совпадению (Match)
Поиск только полного совпадения значения (с учетом разделителей).
Примеры (Match):
- Безопасная замена: Заменяем
50на50гр.- Было:
50,500,50-100 - Стало:
50гр,500,50-100(Значения500и50-100не затронуты)
- Было:
Выбранный режим влияет на:
- Обновление: Замена текста через быстрый редактор.
- Удаление: Очистка значений у товаров.
- Выборка: Какие товары отобразятся в дереве при клике на значение. В режиме Match при клике на
20вы не увидите товары со значениями120или200.
Сравнение и Единицы измерения
Все алгоритмы сравнения работают с учетом маскировки единиц измерения.
Пример:
Атрибут: Вес. Значение: 10 кг.
Если вы настроили объединение или поиск, модуль "отбросит" кг во время сравнения, найдет число 10, выполнит необходимые действия и затем вернет единицу измерения на место. Это предотвращает дублирование единиц или их потерю при массовых операциях.
