>> Sales orders and Customer Purchase Orders are related - you can't initiate a sales order without a customer purchase order. Sales Orders must have a unique Sales Order ID, and Customer POs don't, since different customers may have ID collisions - Otherwise, they're identical. <<
A "sales order" is like a draft purchase order, no? I see no reason to use inheritance there. A purchase order is not "a kind of" sales order.
But, anyhow, why are you allowing "ID collisions"? Why have ID's if they collide? Am I missing something here? Are they internal sales orders, or external? Normally, outsiders don't see internal sales orders, except for stuff they order.
And, why have unique sales order ID's, but not unique purchase order ID's?