В запросе к таблице tbl_Candidates есть колонка Age с текстом SQL "DATEDIFF(yy, tbl_Candidates.DOB, GETDATE())"
В соответствующем датасете у этой колонки стоит птичка "Поле фильтрации" и колонка выводится в списке колонок для построения фильтра.
При попытке фильтрации по Age MSSQL Server выдаёт ошибку Invalid column name 'Age'.
Вопрос: как правильно фильтровать по колонкам с текстом SQL?
Нравится
После пяти минут раздумий обернул в subquery. Работает.
Но может быть есть канонический способ?
Здравствуйте, Роман!
По колонке с SQL-текстом в принципе нельзя фильтровать. Там ведь может быть выборка целой таблицы, например.
Ого! Вижу, все приходят к одному и тому же результату http://www.community.terrasoft.ru/blogs/4397
"Андрей Каспаревич" написал:Здравствуйте, Роман!
По колонке с SQL-текстом в принципе нельзя фильтровать. Там ведь может быть выборка целой таблицы, например.С уважением,
Каспаревич Андрей
Эксперт 3-й линии поддержки
Андрей, запрос колонки с SQL-текстом, возвращающим больше одной колонки или больше одной записи, не пройдёт синтаксическую проверку, будет отклонён сервером бд и вернёт ошибку.
"Рыжий Роман Леонидович" написал:Но может быть есть канонический способ?
Роман, такого способа нет.
Роман, извините, затупил.
Но, в любом случае, фильтровать по такой колонке нельзя.