Фильтрация по колонке с текстом SQL

Появилась задача реализовать поиск по любому из средств связи. Делаем следующее:
В запрос sq_Contact добавляем колонку с текстом "tbl_Contact"."Communication1"||','||"tbl_Contact"."Communication2"||','||"tbl_Contact"."Communication3"||','||"tbl_Contact"."Communication4"
Вытаскиваем эту колонку в ds_Contact и добавляем в грид на wnd_ContactGridArea

Колонка в гриде отлично отображается и содержит то, что ожидается, но
1. Быстрый фильтр по этой колонке не работает - просто не накладывается никаких условий на выборку.
2. При попытке установить фильтр в разделе (в левом нижнем окошечке) грид оказывается вообще пустым. Анализ показал, что в запрос добавляется условие вида (NULL LIKE '%' || :Param || '%'), которое естественно не работает.

Вопрос - можно ли заставить все это заработать?

Нравится

5 комментариев

Сделайте, для этой цели, фильтр на деталь [Средства связи] соответствующего раздела.

Для конкретной задачи решение с деталью использовать можно, но неужели фильтры на вычисляемые колонки в принципе нельзя заставить работать?
Есть куча других мест, когда возникает желание задавать "сложные" условия поиска.

Здравствуйте, Андрей!

К сожалению, проблема с использованием быстрого фильтра для колонок такого типа действительно существует.
Мы передали Ваш запрос в отдел разработок для анализа и исправления.

Инна Безверхняя,
II линия службы поддержки Terrasoft.

Здравствуйте, Андрей!

Наши разработчики исправили данную проблему в версии 3.3.2.186, так что, если данный вопрос для Вас все еще актуален, напишите пожалуйста письмо на support@tscrm.com (желательно со ссылкой на этот пост), и мы вышлем Вам последние бинарные файлы для обновления.

Инна Безверхняя,
II линия службы поддержки Terrasoft.

Инна, большое спасибо за исправление. Будем переходить на 3.3.2

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