I think this is overly complex..  why would you need to specify userid and runid if you have an orderid?