Доброе утро! подскажите как включить опцию not в Exists фильтре???
Пробовал так SelectQuery.Items(0).Filters.ItemsByCode('Risept').IsNot = true; почему то не работает????
Нравится
И еще как потом его включить?
WHERE(NOT EXISTS (SELECT [vw_OfferingOstatok].[OfferingID] AS [ID] FROM [dbo].[vw_OfferingOstatok] AS [vw_OfferingOstatok] WHERE([tbl_Offering].[ID] = [vw_OfferingOstatok].[OfferingID])))
вот условие фильтра???
Максим, как Вы проверяете что не работает? Включить - это противоположно выключить: ...IsNot = false.
Просто я не так сформировал вопрос. Задача заключается в том чтобы в одном случае включать опцию not и включать фильтр из скрипта а в другом выключать опцию not и также включать фильтр.
почему то вот так неработает
if <условие > { SelectQuery.Items(0).Filters.ItemsByCode('Risept').IsNot = true; SelectQuery.Items(0).Filters.ItemsByCode('Risept').IsEnabled = true; }else{ SelectQuery.Items(0).Filters.ItemsByCode('Risept').IsNot = false; SelectQuery.Items(0).Filters.ItemsByCode('Risept').IsEnabled = true;
Может из за того что в подзапросе используеться не таблица а View? но когда я выполняю тоже самое в админе все работает???
Максим, добрый день.
Если не ошибаюсь, у Вас версия 3.0.2.203? Возможно, поможет обновление до более новой версии. Я проверил на 3.0.2.231 - работает корректно.
Также проверьте, пожалуйста, Ваше <условие>. Одна из возможных причин, по которой фильтр не включается, может быть в том, что это условие не выполняется. Попробуйте выполнить эти строчки без условия, и если будет работать корректно - значит, проблема в условии.
Олег Лабьяк,
разработчик,
3-я линия Службы поддержки Terrasoft.
Максим Вы так и не ответили - Как Вы проверяете? Вы смотрите профайлер?
И почему бы не написать проще?
Вместо:
if <условие > { SelectQuery.Items(0).Filters.ItemsByCode('Risept').IsNot = true; SelectQuery.Items(0).Filters.ItemsByCode('Risept').IsEnabled = true; }else{ SelectQuery.Items(0).Filters.ItemsByCode('Risept').IsNot = false; SelectQuery.Items(0).Filters.ItemsByCode('Risept').IsEnabled = true;
Написать
... SelectQuery.Items(0).Filters.ItemsByCode('Risept').IsNot = <условие >; SelectQuery.Items(0).Filters.ItemsByCode('Risept').IsEnabled = true; ...
Спасибо за помощь все получилось! я думал при включении EXISTS все вложенные в запросе фильтры тоже включаются по умолчанию. Оказалось нет)