As part of an upgrade to Sharepoint 2010 from 2007, I've been removing old FAB40 templates by using the following process for each FAB40 solution;
- Delete any sites which use the solution, and ensure the site is also deleted from the Recycle Bin.
- Examine the Mainfest.xml file to find out what features the solution uses.
- Deactivate and then uninstall all the referenced features.
- Retract and then remove the solution.
While most solutions appear to have cleanly removed, some have left workflow definitions behind, which both the pre upgrade check and upgrade logs trigger a warning for. For example, the asset tracking module (physicalassettracking.wsp) leaves the following files behind according to the pre upgrade checker;
Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\_tsafix_Approve.xoml.wfconfig.xml], Reference = [1], Status = [Missing]
Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\_tsafix_Reject.xoml.wfconfig.xml], Reference = [1], Status = [Missing]
Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\Approve.aspx_fixtsa_.xml], Reference = [1], Status = [Missing]
Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\Approve.xoml_fixtsa_.xml], Reference = [1], Status = [Missing]
Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\Reject.aspx_fixtsa_.xml], Reference = [1], Status = [Missing]
Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\Reject.xoml_fixtsa_.xml], Reference = [1], Status = [Missing]
Adding and then deploying the solution eradicates these errors from the pre upgrade check, but isn't ideal for the 2010 upgrade.
If I perform a search on the database for the file reference using the query detailed in this Technet thread, i'm told that it is referenced in the DirName "Workflows/Approve", which isn't accessible via the standard SharePoint web interface.
How can I remove the references to these files from my SharePoint database? I could manually remove the records from the database but this is dangerous and unsupported by Microsoft.