В системе IPS Search до 7 версии всегда была проблема с поиском объектов, когда поисковый запрос содержал 2 символа.
При подобных поисках система выдавала ошибку, что искомые слова не должны содержать меньше 3 символов.
Пользователи мучались, обращались в ТП, где им не давали решения.
В IPS 8 конечно исправили это недоразумение. Настройка этого исправления происходит через параметры IPS.
Однако и в 7 версии системы есть определенная возможность обойти этот запрет. И это SQL запросы в строке поиска.
Такие SQL-запросы могут иметь сложную синтаксическую формулу, а также определенные операнды типа WHERE и т.д.
Система понимает такие SQL запросы, если вначале поискового запроса поставить знак ? . Далее уже описываете вашу синтаксическую формулу.
Пример моего поиска по двум символам будет выглядеть следующим образом:
?[Обозначение] LIKE 'АМ%' . Фактически описание данного запроса следующее: Обозначение начинается со строки АМ.
Пример более сложного запроса с использованием двух условий:
?[Обозначение] LIKE 'АМ%' AND [Обозначение] LIKE '%55%'. Фактические описание: Обозначение начинается со слова АМ и содержит строку 55.
Подобный запрос также отработался корректно.
У SQL запросов в IPS есть определенные ограничения:
При составлении запросов нужно учитывать следующие особенности и ограничения:
- В запросах нельзя ссылаться на многозначные атрибуты.
- В атрибутах комплексных типов (ссылки на объекты, вещественные числа в единицах измерения и пр.) поиск идет по строковой составляющей атрибута.
- IPS хранит даты со временем в UTC (всемирное координированное время), что нужно учитывать при поиске по атрибутам типа Дата.
- В текстовых полях для поиска доступны только первые 450 символов.
- Имена атрибутов в запросе не зависят от регистра.
- При составлении подзапросов к другим таблицам используйте макроподстановку {0}, чтобы сослаться на таблицу объектов, из которой будет выбирать данные построитель запросов IPS.
Если статья была полезной- не забываем ставить лайки)
Для связи используйте контакты,
Газизулин Александр
Telegram-канал для пользователей IPS
8-800-3333-205
gam@amcad.ru