If a admin creates an artifact, and a user creates a filter associated with that artifact, then the artifact cannot be deleted even though it isn't being used anywhere.
Steps to Reproduce:
Prerequisites: have a artifact type created in the system; a user creates a filter based on the aforementioned artifact type;
1) Login as an organzational admin
2) Navigate to the Tools -> Administration -> Artifact Types page
3) Click the 'Delete' link for the artifact mentioned in the prerequisites
4) Click OK to confirm the deletion
Actual Result: the user is presented with a popup that states the artifact couldn't be deleted
Expected Result: the admin should be able to delete the artifact type, and the user's filter should be invalidated
I know it would probably be a bit disconcerting for users to simply have their filters disappear, but if it could simply be "grayed-out" in some fashion and only allows te user the option to delete it.
You are correct in that the artifactType cannot be removed while there is any kind of referential integrity associated with it such as filters, drop downs etc. At this point the filter would have to be removed first then the artifactType would be removed. We'll be working towards an admin piece that allows us to not only completely delete items (Our idea is that we'd present to the user with some options such as "delete all associated items" showing a list of those items or even allowing them to choose some kind of replacement in the case of drop downs).
We are also evaluating the idea that there are two kinds of delete. One would be more a "deactivate", so in your case the artifactType would still exist but just be inactive allowing logic such as grayed out filters etc. Then when the system administrator truly wants the item(s) removed there could be a more formal delete that cleans out any references.
If you go the route of removing the filters (you'll also need to make sure all the drop downs are removed as well) and still have some issues let me know.
Cool. Sounds like you and your team have some good ideas in this area. I remember Eric mentioning something about the deactivate/gray-out stuff during our recent training session. Thanks for the info ![]()
