Often when working on CRM Projects we will want to present the user with a drop-down list of options for a field that we would then want to see repeated at different points within the user’s business process – for example we may want a ‘Business Type’ drop down field on all the Sales Entities to describe the type of business intended for the Opportunity, Quote, Order or Invoice within the business, and obviously we would want this drop down field mapped across for any Quotes or Orders resulting from the Opportunity or in turn any Invoices resulting from the Order.
When looking at this kind of requirement in MSCRM 3 or 4, our options were somewhat limited by the lack of an ability to create a shared set of drop-down options that could be re-used in the different screens throughout a solution.
To resolve this problem in CRM 2011, one of the great new features introduced is the ability to create a shared Picklist that allows us to define a group of drop-down selections that can then be re-used throughout the solution involved – to suit this Picklists are now known as Option Sets and can either be created as a single Option Set field on an entity in a similar fashion to CRM 4, or alternatively created as a shared Option Set within the Option Sets component of the CRM 2011 Customisation area:
We can add a new Shared Option Set to this list to define a set of Picklist Options that can then be re-used across different Option Set fields in our solution.
This allows us to add a new Option Set field into CRM 2011 and specify that this field uses the Shared Option Set as the field’s possible set of options.
Which allows us to amend the Picklist options separate from the actual field itself – like many aspects of CRM 2011 compared to CRM 4, this separates out the two concepts: the set of options themselves, and the fields which use these options.
Whilst relatively minor this is a great addition to MSCRM as various MSCRM Projects that I have worked upon have had the requirement for a Shared Picklist, that would allow common picklists to be re-used throughout the project. In CRM 3 and 4 this often led to either creating a new entity and lookup fields which could often seem overkill, or recreating the same set of Picklist values several times and having to ensure that the Data Values matched to allow for mappings between entities which itself could easily become a problem in having to manage and administer the data duplication involved in this approach.
CRM 2011 should remove these problems and give us the option between a shared Option Set or using a Lookup Entity depending on which is best for the solution as opposed to being limited by the system itself.
In addition CRM 2011 also provides a set of default Option Sets for standard uses across different CRM Solutions which should reduce the need for bespoke option sets in many instances, particularly Fiscal Years and Months:
|A Yes/No Boolean||Provides a simple boolean list||No|
|Activity Type||Provides a list of the defined Activity Types in the solution||Customisable by adding a new Activity Type|
|Category (Connection)||Provides a list of the defined type types of connections defined within the solution||Can be Customised|
|Component State||Provides a list of the possible component published or not published states||No|
|Component Type||Provides a list of the possible component types (Field, Form, Dashboard etc) within CRM 2011||No|
|Dependency Type||Provides a list of the type of Dependency in CRM 2011 – when an Solution Internal or a Published Component||No|
|Fiscal Period||Provides a list of possible Fiscal Periods that a Business tracks their Sales or Performance by, such as a particular Quarter, Month or other period.||No|
|Fiscal Year||Provides a list of possible Years between 1970 to 2038.||No|
|Goal Type||Provides a simple list of possible target types, i.e. Whole Number, Decimal or Money amount||No|
|Month of the Year||Provides a simple list of months of the year||No|
|Object Type||List of possible CRM 2011 Asynchronous object types – System Job or Workflow Session||No|
|Pricing Error||Provides a list of possible pricing errors that can occur within CRM 2011||No|
|Validation Status||Provides a list of possible validation statuses||No|
|Validation Status Reasons||Provides a simple list of possible validation status reasons||No|