Keyword Search behavior for multi-value keywords

I have some users that are using a keyword that can be set to multiple
values. They are trying to do a search where the keyword is NOT set to some
particular value.

They’re getting some hits that they “shouldn’t” get, i.e., tickets that DO
have that value set in the keyword. It seems the thing that’s throwing a
wrench in the works is that there is also some other value set for the same
keyword.

Pedantically speaking, I guess “keyword != A” would be satisfied by a ticket
where the keyword is set to A+B.
(Because A+B != A alone.)

But in this case, these users don’t care if B is set or not. They just want
to see all the tickets that don’t have A set in that keyword. Is there a
tweak I can do somewhere to make this happen?

Kendric Beachey

Yesterday Beachey, Kendric wrote:

Pedantically speaking, I guess “keyword != A” would be satisfied by a
ticket where the keyword is set to A+B. (Because A+B != A alone.)

Sounds plausible. My guess is that “keyword is not A” is being
interpreted as “there exists a keyword with a value that is not B”.

I was looking at this kind of thing a few week’s ago when wanting to do
“keyword has a value which is either A or B” for a single-select
keyword, but my ‘I don’t understand this code, but let’s plunge right
in, change a few things and see if I get lucky’ approach didn’t work.

At some point I’ll put some effort into going through
DBIx::SearchBuilder properly to work out how this should be done.

Smylers
GBdirect