Функция в статье неплохая. Довольно корректно конвертирует фильтр, заданный в Навижн на приемлемый в SQL.
Только мне пока не удалось использовать данную конвертированную строку в проседуре SQL в условии WHERE.
Т. е. напр-р:
SELECT dbo.Fn_Filter_Convert('No_','*4*|000006..0101-004')
возвращает:
[No_] LIKE '%4%' OR [No_] BETWEEN '000006' AND '0101-004'
Казалось бы всё хорошо, но когда подставляю данную функцию уже в select
select *
from [CompanyName$Item]
where dbo.Fn_Filter_Convert('No_','*4*|000006..0101-004')
получаю ошибку
Msg 4145, Level 15, State 1, Line 3
An expression of non-boolean type specified in a context where a condition is expected, near ')'.
Может кто использует данную функцию. Поделитесь опытом.
Спасибо за помощь.
|