Allow Checkout Based on Group Membership or a Variable?

I know you can set a condition for a transition that is based on a variable, but is there any way to stipulate that a file can be checked out when it's in a particular state only if a user is a member of a group, or if the file has a certain variable value?

I'm looking for a way to allow members of group A to check out only some files in a state, but not others.  I don't see any way through normal configurations... Dispatch maybe?

SolidworksSolidworks Pdm enterprise Pdm