you usually need to give a dimension to make something like this to work.
You were saying, the expression worked in a straight table, right?
So just take the dimension of that straight table and use as a list box field expression:
If(Sum(If([Color] >'Green', 1, 0)) > 0,
'Has one or more green details',
'Does not have any green details')
Hope this helps,
If I select the category I don't want (e.g., green), and then choose "Select excluded," what I get is all orders which contain one or more details which are not green. This is close, but it includes orders which have both green and non-green details.
If you "Select excluded", you did this from the category list box? This will of course select all other colors and then you get all orders linked which contain one or more details which are not green as possible values.
But try to "Select excluded" from the Orders list box, after selecting the category, so inverting the possible selection state of Orders.
Yes, I agree using the standard functions provided in the context menu is much more convenient and should be intuitive once we understood how QV works (everything linked / the 3 colors thing...).
The user actually see the result of the select excluded operation before he performs the action, just needs to look for the grey values (unlike using the list box with an expression).
Thus I believe he will get more and more into understanding QV rather than just consuming predefined list boxes (which might still be preferable in some cases, for e.g. defined enterprise measures). For those cases, you could also consider creating a flag in the script to indicate if an order belongs to one or the other group.