proc stock many to many table inheritance generate custom types (sp return) UI for sp selection