Ok....tall order. (sorry for the delay).
First thing is to run ALL my "Library" scripts. You can then mash that up in Excel to get a handle on what you have.
SYSSCRREPORT also will show all the ITM's that are used in all your service templates.
I massage that into a batch file w/Excel and copy out all the ITM's I'm actually using.
From there, I'll manually parse through that new folder and see what's being used and copy over unused items in the same product line.
e.g. I might only be using 1/2 the available Viega ProPress parts but I won't split the Viaga library....I'll keep them all. So I'll copy the unused ones into the new location for the stuff I do use.
Anything left over is unused. I may need it again but as you've found....it's content is questionable. I move that "unused" stuff to a server somewhere in my ITM boneyard. If I get a new/weird material requirement again, I look there first and scrub it on the way back in if I need it.
But all those "used" ITM's, I'll then move them back to where they belong in the DB.
For all my scripts...it only exports ITM properties from ITM's in the libraries (or of a DWG/MAJ depending which group of scripts you run). It will NOT export entries in the database. You'd need to do that with the .Net API for the most part.
There's a couple exceptions...connectors being one of them. I just finished a new script for a side job I' doing that's designed to be run against an ITM. It sets the ITM's connector C1 to the first connector in the database and exports the group/name. It then sets the ITM's C1 to the second connector in the database and exports again, repeating the process until they're all done. Unfortunately, most database section of Fabrication don't support this but Connectors does. From here, you an mash of the 2 lists of connectors in Excel using Power Query and see what's used vs not used.
There's a whole ton of other hacks that can be used depending on what the issues are and what's needed. Hard to really document anything without seeing more details. I pretty much need to see the forest to know how to navigate it.
As for things like resetting ancillaries or labor/price tables....scripting can help some. Most of my "Library" scripts have the needed code infrastructure to "loop" through ITM's on disk. They currently export properties but are easily modified to "set/save" property changes if you know COD scripting well.
I'm esentially doing a similar job for another company now.