Фильтр, пустая строка, больше меньше и т.д.
Добрый день.
Хотелось бы узнать как можно отфильтровать Dataset по пустой строке. (т.е. строка не указана)
Напр. в таблице есть поле 'Number', тип - строка.
Казалось бы ApplyDatasetFilter(Dataset, 'Number', '', true) должно решить проблему, но нет. (false, null тоже не работают).
Также хотелось бы узнать как можно фильтровать по полю >, , >= и т.д. (по числовому полю)
Благодарю за помощь.
Нравится
Ваши вопросы решаются добавлением новых фильтров в сервис Select Query.
В первом случае нужно сделать отдельный фильтр типа "Is Null" для этой строки. Если она кроме Null может быть и "", то надо сделать ещё и фильтр сравнения со строкой (равной пустой строке) и оба фильтра связать условием "или".
Для больше и меньше аналогично, создаются фильтры сравнения и в них вместо равенства выбирается больше или меньше.
"Зверев Александр" написал:Ваши вопросы решаются добавлением новых фильтров в сервис Select Query.
В первом случае нужно сделать отдельный фильтр типа "Is Null" для этой строки. Если она кроме Null может быть и "", то надо сделать ещё и фильтр сравнения со строкой (равной пустой строке) и оба фильтра связать условием "или".
Для больше и меньше аналогично, создаются фильтры сравнения и в них вместо равенства выбирается больше или меньше.
Понятно, а как мне их применить, когда необходимо? Они будут нужны в зависимость от определенных условий.
Если параметры заданы прямо в фильтре, то функцией EnableDatasetFilters.
"Зверев Александр" написал:Если параметры заданы прямо в фильтре, то функцией EnableDatasetFilters.
А если их необходимо задать в коде?
Тогда SetParameterValue.
Или ApplyDatasetFilter для одновременного включения фильтра и передачи значения. Нужно смотреть, подойдёт ли это для самодельного сложного фильтра.
"Зверев Александр" написал:Тогда SetParameterValue.
Или ApplyDatasetFilter для одновременного включения фильтра и передачи значения. Нужно смотреть, подойдёт ли это для самодельного сложного фильтра.
Спасибо за быстрый отклик, буду пробовать.