2015-02-17 2 views
0

Я хочу, чтобы у пользователя была возможность фильтровать результаты запроса для INClude или EXclude строки на основе значения в флажке. Флажок для правильной ссылки и при проверке действительно фильтр только на Хакни, однако, когда отключили «не» часть дает (ошибочно) нулевые записинравится и не нравится в запросе доступа

IIf([Forms]![Navigation]![TEST]=True,"Hackney",Not In ("Hackney")) 

Любые предложения приветствуются, были различные опции все утро.

+0

Не могли бы вы обновить свое сообщение до полного SQL? – PaulFrancis

ответ

1

Вы не можете делать то, что вы пытаетесь сделать. Вы пытаетесь построить свой SQL-запрос через этот оператор IIf.

Основываясь на том, что я верю, что вы хотите, что бы работать в вашем случае имеет следующий вид:

select ... /* your select fields */ 
from .... /* your table(s) */ 
where .... /* the rest of your conditions */ 
and (
    ([FieldName] = "Hackney" And [Forms]![Navigation]![TEST] = True) 
    or 
    ([FieldName] Not In ("Hackney") And [Forms]![Navigation]![TEST] = False) 
) 
0

Отличные вещи благодаря так много, что работает удовольствие. На самом деле, на самом деле работает отлично, когда вы смотрите на него через Query Builder (что подходит по целому ряду причин).

Для всех, кто с этим борется, я взял это немного дальше после этого наконечника и связал подобное/не похожее на значение в комбо, а не с жестко закодированным «Хакни», упомянутым выше. Также работает в Query Builder, это дает моим пользователям большую гибкость в правильном выполнении собственных запросов.

Еще раз спасибо. SQL для этого:

SELECT Clients.CLIENTSID, Clients.FirstName, Clients.LastName,  
     LondonBoroughs.LondonBorough, Clients.LondonBoroughID 
FROM LondonBoroughs INNER JOIN Clients 
    ON LondonBoroughs.LONDONBOROUGHSID = Clients.LondonBoroughID 
WHERE (((Clients.LondonBoroughID) Like ([Forms]![Navigation]![ReportsLondonBoroughCOMBO])) 
    AND (([Forms]![Navigation]![TEST])=True)) 
OR (((Clients.LondonBoroughID) Not Like ([Forms]![Navigation]![ReportsLondonBoroughCOMBO])) 
    AND (([Forms]![Navigation]![TEST])=False)); 
Смежные вопросы