There are several places in Aha! where we disallow a user action because an object is in use. For example, users can't delete a custom type while records are using it.
We already have an elegant solution in place for this when changing from one workflow to another. We should have a pop-up window in these instances that informs the user their about to delete something that is in use and allow them to select a replacement value.