Hmmm, well I've had a quick scout, and none of my big queries are using OR's.
I've also looked again, and the query I've got above isn't actually slow at all when you load it in datasheet view.
But its within a subform with conditional formatting setup to see whether shelf stock > allocated...