Hmm, I tried the code that Andrew Piskoski posted just for kicks ... using "exists" on the acs_object_party_privilege_map. Our version just did a "select decode( count(*),0,'f','t') from acs_object_party_privilate_map". Adding "exits" didn't help. Apperarently in Oracle the "exists" functionality doesn't get distributed into the view through unions and selects (recursively at least). I'm sure it would have worked otherwise.
And yea, decode doesn't buy you much when you are alreadly using a procedural language.