Thursday, December 13, 2007 7:12 AM
Does anyone know what tables are used to define Picklist number BEFORE they are published.
Problem I'm trying to resolve is that a one of our customizers deleted the "Inactive" picklist value of the statuscode field for a custom entity. It doesn't appear that you can just re-add it back and have the standard "Inactive <entity>" view work. When I add it back in it's integer value is 3. If I set any records to "Inactive" and then try to use that view nothing appears. And of course the criteria for the Active and Inactive Views are not editable. :-(
So, I'm shooting for what surely is a non-supported (and I don't care) solution. Whereby I identify where these values are in the underlying databases and fix it there.
So I see the StringMap table and have tested a change there without success so there must be some other tables involved perhaps in the metadata. And I read where when you make a change to picklists using the supported interface that when you publish it re-creates guids. Presumeably it deletes the data from StringMap and re-populates. So if I can find where it is BEFORE it's published maybe I can renumber there.
In summary, I want my Picklist value with integer value 3 to be changed to integer value 2 so that the regular Inactive View works. I'd also settle for ways to delete, hide, disable the Inactive View. In the worst case scenario I'll change that views name to "DO NOT USE" but that just seems so bad.
Thursday, December 13, 2007 9:11 AMModerator
The 'master' copy of these values is within the xml form definition that is stored in the OrganizationUIBase table. Rather than editing it there, the easiest route is to:
Backup your MSCRM and METABASE databases just in case
Export the entity via Export Customizations. This includes the form definition
In the exported file, find the picklist values - it's fairly obvious when you see them - and modify them
Reimport and publish the customisations; this step rebuilds the stringmap data