Why all developers should be friends with a cardboard developer

I read an article  about a development team who used a cardboard developer.  The team had acquired a life-size cardboard person who they welcomed into the development team.

If anyone in the team had some code which wasn’t working, before asking another developer to sit with them to look at the problem the person had to first get the cardboard developer, stand him next to them, explain the problem to the cardboard developer, run through the code with him to see if he could help see the problem.
I have also learnt this process is known as Rubber duck debugging from the excellent book
The funny thing about this story is quite often the cardboard developer would help resolve the problem.
How exactly does a cardboard cut out help solve development problems and why aren’t companies deploying armies of them.

Stop! walk through the process step by step

The truth is people can often solve their own problems, once they understand the problem and walk through it.
This is what I would term as
can’t see the wood for the trees
This is a saying which regularly gets said, but I’m not sure everyone understands what it really means
Here is an explanation

Meaning: If you can’t see the wood for the trees, you can’t see the whole situation clearly because you’re looking too closely at small details, or because you’re too closely involved.

In terms of CRM development you can get  absorbed in a problem, the methods you have already tried to resolve it, you can get to a point where the CRM developer stops thinking logically about the problem.  For coding problems in particular you can get too close to the problem you forget to use a systematic process of trying to resolve the problem.

A classic example of the cardboard developer – Grumpy IT person

I’m sure many people have called the IT person in their organisation only to find they have given him the role of cardboard cut out.  You calmly explain the problem to the IT person (who is usually grumpy grumpily) to come and try and solve your problem.

When the IT person comes to your desk you go through the steps and it works perfectly and the IT person grunts and goes back to his warm nest away from troublesome users.

Many times I have asked someone to look at a problem and then as I was explaining it to them I instantly knew the answer.  It’s a similar sensation to not hearing someone, saying pardon and then your brain belated tells you what they said.

Why does the Cardboard developer work?

The reason the cardboard developer or any inanimate object works (it helps if it resembles a person or you feel stupid explaining your problem to an apple) is when you explain the problem to someone/something you

  • You have stepped back from the problem, you have stopped to think
  • Go through step by step
  • Explain what you want to happen
  • Explain what is happening
Developers often have to do the same/similar tasks many times they often
  • Engage autopilot
  • Stop thinking and just do
  • Miss steps/Take shortcuts
  • rush

Why should you use the Cardboard developer?

The main reason you should try using the cardboard developer is so you stop wasting other developers time when you could resolve the problem yourself.

Developers need to concentrate for a prolonged uninterrupted section of time (hours) to create a coding solution, this process involves concentrating on a problem with lots of trial and error.  Breaking this concentration for a developer to come and stand by you whilst you resolve the problem yourself can be frustrating for the developer who you have walked round the office and embarrassing for yourself for wasting the developers time.

To avoid wasting developers time I would advise getting up from your desk, going for a walk at lunch, making a cup of tea.  The act of stepping away from your computer will allow you to look at the problem with fresh eyes.

Make sure you use the Cardboard developer to go through a problem first before asking someone else.  I’m not advocating you sit and suffer with a problem but you should make sure you can’t resolve the problem yourself first.

This blog describes why Developers should not be disturbed

Why programmers work at night

or this graphic shows the process which I got from here

Today I used the Cardboard developer

Everyone has to use the cardboard developer and today I should have used the cardboard developer but instead I brought over Sir Les (senior CRM Developer) over to my desk.

I was creating a new development organisation.  I had imported a number of managed and unmanaged solutions.

The next stage was to import some data, I selected the file, press next a few times but then was puzzled why the entities weren’t in the drop down list?

I couldn’t think of any reason why entities don’t appear in drop down lists for importing?

So I got senior developer over.

The act of having someone looking over your shoulder suddenly gets your brain working with more focus.

Have you guessed the problem yet?????

Yes, suddenly it came to me,  I had imported some unmanaged solutions.  Unmanaged solutions need to be published (managed solutions are published automatically).  To understand the intricacies of solutions read my blog post – Understanding how CRM solutions work

Sir Les of CRM Shire was thanked and sent back to his desk, he helped me resolve the problem without doing anything.

Next time I will try explaining it to the cardboard developer before wasting a real developers time.

Check out the Dando the box man adventures

Here and here

CRM 2013 Customization and Configuration Exam notes – Entities and fields

Here are my study notes regarding entities and fields in CRM.  I hope you appreciate the picture of a field (entities and fields, get it?)

Entities and fields are probably an error where most people will have a good starting knowledge of and some experience with.  Don’t get fooled into not studying the topic because there is a difference of using fields and entities and having enough knowledge to answer certification question on entities and fields.

It’s important to understand how entities and fields work and the limitations of them, e.g.

  • What entities values cannot be disabled once you have enabled them?
  • How does the new functionality like Image work?
  • How do entities which are activities work?
  • Can you delete fields referenced in a workflow?


Whilst studying these two areas I did improve my understanding of the core functionality of CRM and wrote these two blog posts

CRM 2013 – When should you create a custom activity entity?

CRM Entity ownership – How do you decide?

These notes will be added to the other study information I have created, which you can find here – MB2-703 – CRM 2013 Customization and Configuration Certification

Even if you are not studying for the MB2-703 certification, it’s interesting to have a quick read of the notes and I bet you find a fact you didn’t know


  • Microsoft Dynamics CRM default instance starts with more than 260 systems entities but which many are hidden from the UI
  • There are two types of entities – Custom entities and system entities
  • More than 90 system entities can be customized
  • Some system entities cannot be customized e.g. system job
  • Entities can be created by the UI, importing records or via code using the SDK
  • Entities which can be customized (system and custom) are known as customizable entities
  • Not all components of a customizable entity can be customized e.g. system fields like created on cannot be deleted
  • Ownership can be either user/team or organisation
  • Organization ownerships does not create an owner field, there is no owner or business units
  • User/team ownership adds lookup fields for business unit, user lookup, team lookup
  • Entities can be owned by users or teams
  • You can create custom activity entities
  • Activity entities have common fields – planned started date, actual start date, actual end date, description, subject and duration
  • All activity entities have a link to the ActivityPointer and can be used in the ActivityParty class
  • The activityPointer allows different activities to be viewed in one view.
  • Custom Entities when created by default are not viewable/usable to any users apart from System Administrator and System customizer roles. Other security roles will have to add the entity.
  • Display name is the name used for the custom entity which the users will see
  • Plural name is the name seen in views etc
  • Name (schema name) is the customizer name, not seen by end users
  • Primary image selected will add a field called image and will allow one image to be added to a each record of the custom entity.
  • Primary image, once ticked cannot be unticked
  • IF an entity is selected as an activity this cannot be undone
  • The primary field is always a single line of text
  • Entities in a lookup field will display the primary field value
  • Areas that display this entity are areas where the entity will be visible. Changes will be written to the sitemap not part of the entity.
  • Additional entity options
  • Business process flows – this will create extra fields and cannot be turned off
  • Notes, activities, Business process flows, connections, Queues, sending email cannot be disabled if selected
  • Allow Quick Create – allows quick create forms which are minimized forms with important fields
  • Some default entities have Allow quick create disabled and cannot be enabled.
  • CRM For Phones, CRM for tablets, if selected the entities will be available on phones and tablets.
  • Renaming entities is not straight forward, labels, reports and views will also need to adjusted
  • Custom entities can be deleted if all dependencies have been removed
  • System entities cannot be deleted


  • CRM 2013 has a maximum of 1023 fields
  • For some fields Microsoft adds other fields e.g. currency adds extra fields for Base Currency, exchange rate, currency value and base currency value.
  • IN CRM 2011 and earlier the SQL structure was held in two tables. The base table holds the system fields and the extended tables holds the custom fields.  A filtered view was created to show both tables in one view.
  • CRM 2013 the two tables are merged but the filtered view is the same.
  • The filtered view has been persisted to support reports written using it.
  • The filtered view takes into account a user security roles and permissions
  • Be careful adding lots of fields to an entity, there are constraints on the SQL database table and views.
  • Single line of text can have the format of Email, Text, Text area, Url, Ticker Symbol, Phone
  • Single line of text can be between 100 characters to 4000
  • IME mode is for Chinese, Korean and Japanese characters
  • IME Mode has four modes – Auto, Active, Inactive, Disabled
  • Option set – Use Existing option Set if set to yes uses a global option set values
  • Two options are always stored as 0 = no – 1 = yes
  • Two options will always have a value and cannot be null
  • Two options can be formed on the form to be Two radio buttons, Check box or list
  • Whole numbers are the SQL server equivalent of an integer (no decimal)
  • Whole number format = none, Duration, Time Zone, Language
  • Whole number duration is held in minutes
  • Floating points can contain a decimal
  • Floating numbers are rounded, which means they can be rounded up/down and liable for small rounding errors.
  • Floating number precision refers to the number of digits after the decimal, max = 5
  • Decimal number is not rounded
  • Decimal number precision max = 10
  • When a currency field is added to a form, if it’s the first currency field then additional fields of exchange rate, currency, price and base price are also added.
  • Currency precision is between 0 and 4.
  • Multiple line of text field max length is 1048576 characters
  • Date and time field can have the format of Date only or date and time.
  • 24 system entities can have the new image field
  • Account, Contact, Lead, Product, Competitor, resource, publisher and user have image enabled by default.
  • You can add a maximum of one image field to a custom entity
  • It is not possible to add an image field to a system entity.
  • The entity image will always have the default schema name of entityimage (with no publisher prefix)
  • The fixed schema name – entityimage stops more than one image field being added to a custom entity.
  • Image field max size is 5 Megabytes
  • Image file extensions supported are jpg, jpeg, gif, tif, tiff, bmp, png
  • Uploaded images are resized to 144 x 144 pixals
  • Field requirement levels are – optional, Business recommended, Business required.
  • Requirement levels are form validation only. Importing and plugins do not have to supply data to business required fields
  • Fields have a searchable property, if this is set to know the fields will not be displayed in advanced finds
  • Auditing for fields can be turned on or off at any time.
  • You can bulk edit fields to set Field requirement, Searchable and auditing properties
  • Local option set is only available on one form
  • Global option sets can be used in multiple forms.
  • Custom and system entities have Status and Status Reason fields
  • Status is active/inactive
  • Status reason (schema name statuscode) has the reason for the status
  • Status reason is an optionset of values for each status
  • Fields dependencies will not show references in Javascript or web resources.
  • You cannot delete a field without removing all the dependencies first.
  • System fields cannot be deleted.
  • Fields which are referenced in workflows or dialogs cannot be deleted.

CRM 2011/2013 – Progress of solution import

I recently had a bit of trouble getting a solution to import which you can read more about here, it was timing out when trying to import a solution.

One frustrating aspect of importing a solution is the CRM GUI basically freezes or doesn’t tell you any useful information whilst the solution is importing, you have a progress bar which doesn’t really tell you anything

So I was wondering what was happening inside CRM whilst the solution imports and found there is an ImportJob view (made up of ImportJob base and extended tables) and this holds a bunch of interesting information about the solutions you have previously imported and solutions which are currently importing and their current progress in percent.

if you run this query on on the your org database e..g (orgname_MSCRM)

select CreatedByname, OrganizationIdName, progress, Solutionname, data
from importjob (NOLOCK)

this will give you a list of all the solutions you have imported

I then found this great blog post SQL Query to get the progress of importing Customization in MS CRM 2011

This contains a query to run which will give you details on the progress of the current solution being imported


Below query will help you to find out the progress of import.


Use <<OrgName_MSCRM>>




progress                                 [Progress%],

Solutionname                             [SolutionName],

DATEADD(hh, 5.5, startedon)              [StartedOnPST],

DATEADD(hh, 5.5, completedon)            [CompletedOnPST],

DATEDIFF(second,startedon,completedon)   [TimeTakenInSec],

DATEDIFF(minute,startedon,completedon)   [TimeTakenInMin],

createdbyname                            [ImportedBy],

OrganizationIdName                       [OrgName],

Data                                     [ImportOutput]


importjob IJ (NOLOCK)


IJ.startedon DESC


This was really useful because we could see the progress of the import.  Also if it didn’t import correctly you can look at the XML in the data and see the error

I haven’t tried this on CRM 2013 but I’m guessing it has the same table with the same information in.

CRM 2013 – MB2-703 – Quick Fire Security Test Questions


I have been working on creating some questions for all the security section for the MB2-703 -CRM 2013 Customization and Configuration certification.

I have created some quick fire – True or False questions to test your knowledge on the security section of the certification.

I have already created some questions for Solutions which you can find on the link below

Blog – Solution Test Questions

Video – Solution Test Questions


I have uploaded a power point file into slide share because this is a really easy and quick way to do the question. The security section was so large there are 27 questions and doing these should take you more than a few minutes.  So test your knowledge



I go through the questions with some explanation in the video below


Don’t forget all the MB2-703 studying information can be found here


CRM 2013 – MB2-703 – Security Exam Cram Notes

This blog contains the study notes for the MB2-703 – CRM 2013 Customization and configuration exam and for the area of Security.

Security covers a lot of topics and is worth 10-15 percent of the final exam marks, so you definitely need to know the functionality and limitations of security.

I have gone through the separate parts of security in the blogs below and there are videos going through these which you can find on the youtube playlist

All the study notes for the MB2-703 exam can be found on the page link above or clicking the link below


These notes are the to revise the key concepts of security for the MB2-703 – Microsoft Dynamics CRM 2013 Customization and Configuration certification

There is a video going through the list below with some explanation

Business Units and Security Roles

  • When a business unit is disabled the users in that business unit cannot access CRM
  • users of a disabled business unit will still consume a CRM Licence
  • child business unit users will also not be able to access CRM
  • the records of a disabled business unit user are not disabled.
  • To delete a business unit you must remove all child business units and any users or teams linked to the business unit
  • To delete a business unit you must disable it first
  • Each business unit has a default team of the same name
  • you cannot add users to a default business unit team
  • you cannot delete a default business unit team
  • Equipment/Facilities and Resource Groups do not need to be removed before you can delete a business unit
  • business units can have separate security roles, even with the same name!
  • Disabling a business unit (and child business units) will mean all the users in that business unit won’t be able to login to CRM.
  • moving business units is done by changing the business units parent
  • The Root business unit is a default business unit which has the same name as the organisation.
  • You cannot delete the Root business unit, you cannot disable it
  • You cannot create a business unit above the Root business unit, e.g. you cannot give it a parent.
  • Business units are used to create a hierarchy and this is in a tree structure.  The Root business unit will be at the top.
  • none of the data is affected by disabling business units, its only the users who cannot then log in but it is important to take into account all the child business units will also be disabled.  This only applies to inherited roles. Roles that are created in a BU explicitly will move with it
  • The users are not disabled but cannot login into CRM whilst the business unit is disabled.  As soon as the business unit is enabled they will be able to log into CRM again.
  • if you want to delete the business unit then you will need to change all the users/teams that are assigned to that business unit.  You also need to disable the business unit before you delete it.
  • You cannot delete the default business unit team but it won’t stop you deleting the business unit because this will be deleting automatically when you delete the business unit.
  • When you disable a business unit, it disables all child business unit.  The users in these business units will not be able to login
  • When you change the parent of a business unit, it removes and rebuilds all the security roles of the inherited security from the parent business unit.  So all the users in the business unit will have no security roles and they will not be able to login
  • Users can login if they are part of a team which has security roles.  They won’t be able to set any personal options.
  • You can change the Name of a business unit.
  • You Can change the name of the root business unit.

Security Roles and Teams

  • if a user doesn’t have a security role he cannot access the system, so every user must have at least one security role.
  • Security roles are linked with the user business unit to calculate what records the user can access.
  • Users receive their permissions to work on records or use features based on the combination of Security Roles they are assigned and the Business Units to which the users belong.
  • Security roles can also be assigned to teams and if the team a user is a member of has higher security privileges then this will override their individual security roles.  The user will also use the highest security levels it is assigned, whether that’s from a security roles assigned to the team or individual security role
  • Users can be assigned multiple security roles, this means it’s possible to create security roles just for single purposes.
  • There are 15 default security roles in CRM
  •  The default security roles are all created in the root business unit.
  • A security role stays in the business unit it is created in and they copy down to any child business units.
  •  if you create a security role in the root business unit then the security role will be copied to all the child business units below it.
  • User can be assigned any security role which exist in their business unit.
  • only security roles which exist in the root business unit can be added to a solution file.
  • it’s quicker to modify existing security roles than create new ones
  • All security roles are the same except the System Administrator role which is a super role.
  • The System Administrator role automatically has access to all records and entities, including all custom entities.  It has the default access level of organisation for all privileges.
  • At least One user must have the System Administrator role, this is by default given to the user who installed CRM
  • Multiple users can be assigned the System Administrator role and you can remove the role from users but you cannot remove the role if that user is the only user who has the System Administrator role.
  • The System Administrator role also is given the System Admin field level security role, which as I’m sure you can guess gives them access to all field level security.
  • It’s possible to copy the System Administrator role and it will create a security role but the security role will not automatically have access to any new custom entities added and it basically won’t have the special powers of the System Administrator role.
  • Teams have security roles (this can affect which form is used)
  • There are some privileges which do not have organisation levels these are always show under miscellaneous privileges and these are either true or false.  These are things like

Go Offline

Export to Excel

Publish articles


Manage user access, Teams and sharing

  • The security authentication in CRM is not really handled inside CRM.  A bit like the way CRM lets outlook/email router do all the emailing, CRM also gets another piece of software to do the authentication of users.
  • the most common authentication method is active directory
  • You can also used Internet facing deployment (IFD) where the authentication is either AD FS (active Directory Federation Services) or STS (Secure Token service)
  • Online security – Microsoft Online Subscription Program (MSOP)
  • A user can have one manager which is a user lookup field on user record

Functionality to manage users and you can find these by going to Settings – Administration

  • Creating users, teams, Security Roles
  • assign/move users to teams, assign security roles to teams and users
  • Disable business units
  • Delete Security roles, Delete teams
  • Move users between teams
  • Manager


  • You cannot delete users in CRM you can only disable them
  • If you disable a user the user won’t be able to log into CRM
  • a disabled user doesn’t use a CRM license
  • The records assigned to the user are still active.  Best practice is to assign all the records assigned to the disable user to another enabled user.
  • You need to work out if the user is used in the workings of any workflows, these will still work but it’s not good practice to assign records etc to an disabled user.
  • Users must always be assigned to business unit and can only be assigned to one business.
  • Security roles and teams security roles are additive, so adding a user to a team won’t remove any security privileges to the user


  • Teams are optional
  • Two types of teams Access teams and owner teams
  • Owner Team can own records
  • Owner Teams can be assigned security roles
  • Access teams cannot own be assigned security roles or own records.
  • An owner team can be converted to an access team
  • An access team cannot be converted to an owner team
  • Each business unit create a default team which you cannot delete and you cannot add members to
  • Teams can be assigned security roles
  • Team and users can be the owner of records


Business units and default owner teams

  • Business units have a team created automatically, the team name will have the same name as the business unit.  Any members created and assigned to the business unit will automatically be added to the default business unit team.
  • It’s a dynamic team which CRM keeps up to date.
  • It cannot be edited but you can assign security roles and these security roles will apply to all members of the business unit.
  • default business unit team cannot be re parented, deleted or renamed and it’s members cannot be modified.


  • In CRM you can share records between users and teams.  Sharing gives the user being shared to the same privileges to that individual record as the user who is sharing.
  • Sharing bypasses business unit – access level parts of security because when you share records it basically ignore the level (organisation, business unit, user)
  • Sharing records to a team is like sharing the record with every member of the team, except in the PrincipalObjectTable this is only one entry
  • using the business unit default team you can share records to all users in different business units.
  • You can share more than records, you can also share Charts, Views and Dashboards.
  • Users can only share their personal views, charts and dashboards.
  • When a user shares the components (charts, views and dashboards) they also choose what privileges you want the user/team to have with the component

The privileges you can share are








Re-parenting users/teams

  •  Re-parenting a user/teams business unit has a drastic effect on the security roles the user or team had, it REMOVES THEM ALL.
  •  So if you ever change a user/teams business unit you will need to assign the user or team some security roles in the new business unit.
  • This sounds drastic but it actually makes sense if you think about it logically.  Each business unit has it’s own set of security roles, these are usually copied down from the parent business units.  So when you move business unit, it removes all the security roles and it can’t automatically add them all back because not all the security roles may exist in the new business unit or the security roles could be vastly different with completely different privileges, so the user must add new security roles.
  • This is also true if you re-parent a whole business unit because all the users will have had all their security roles removed.
  • Remember users without security roles cannot log into CRM.
  • If a user is re-parented they lose their security roles but they won’t be removed from any teams, this would probably allow them to login to CRM but the user won’t be able to change any personal settings, or view any components the user created.
  • If a team is re-parented then every member of team will lose all their security roles because the team will have had all it’s security roles removed.
  • An efficiency trick is if you want to remove all the security roles for a user or team is to move business unit



  • Auditing has three levels – Global, Entity, Field
  • Auditing is enabled in System settings and then for each individual entity
  • Any entity can be audited
  • if auditing is not enabled at organisational level, it doesn’t matter if auditing is turned on at an entity level, nothing will be audited.
  • audit logs are partitioned every 3 months.  These can be  deleted in the audit log management screen
  • User has to have the View Audit History privilege
  • when you turn on auditing for an entity, all the available fields are by default enabled for auditing
  • Audit logs management is done by a system job
  • Some System fields are not applicable for auditing

Owning Business Unit
Owning User
Customer AddressId


Access Teams and Access Team Templates

  •  Access teams are new functionality added in CRM 2013 (so expect some questions)
  • Access Teams and Access team templates are a method to share permissions and records, which is easier to manage, quicker to add/remove users/teams because Access team templates will applying a standard set of privileges (read, write, delete, append, append to) rather than having to set this up for each individual user/team.
  • Access Team templates are enabled on an entity basis and you have to enable Access Teams on the entity in the communications and collaboration section
  • Access teams can be ticked and un ticked on an entity (unlike Queues)
  • You need to customize the form of the entity you want to add the Access Team Template to and in my case it’s the account form
  • You need to add a sub grid to the form
  • Records – All TypesEntity – UsersDefault View – Associated Record Team MembersTeam Template – Hosk Account Access Team – this is the team template I created in the step before, yours is probably called something different.
  • When you add a user to the user grid it will automatically create an Access Team but the odd things is you can’t view this team in the Teams section in Administration
  • You can view access teams by using the advanced find, search for Teams and choose of type Access.
  • You add users to the access team via the sub grid on the record.
  • you can add users directly to the access team.
  • You can more than one Access Team template for each entity
  • The default number of access teams templates for each entity is two
  • The number of access team templates you can have for each entity is controlled by theMaxAutoCreatedAccessTeamsPerEntity deployment setting.
  • MaxEntitiesEnabledForAutoCreatedAccessTeams deployment setting has a default value of 5.  This controls the number of entities it’s possible to enable for auto-created access teams.
  • You can change the MaxEntitiesEnabledForAutoCreatedAccessTeams , MaxAutoCreatedAccessTeamsPerEntity  only on Premise installations and you cannot edit them for Online.
  • A system generated Access Team isn’t created for each record until you add a user to the sub grid on the entity.
  • if you delete the team, this is the same removing all the members in the sub grid on the record.
  • if you change the access rights on Team Template this will only change the access right to new entity records/access teams.  Any records already created will use the previous set of privileges.
  • Access teams with Share access right ticked will mean any user who is in access team will be able to add (share) others to the access team for that record.
  • Users cannot grant privileges they do not have.  So a user can only add new members to an access team where the access team template has delete privilege only if that user has the delete privilege for the entity.
  • Access Teams created automatically by adding users to them are not shown in the system team views
  • If you want to delete a Access Team Template you will need to remove all the sub grids using that specific Access Team Template before you can delete it.


Owner Team

  • Owner teams in Microsoft Dynamics CRM can have security roles
  • Team can own records

Access Team

  • Access teams cannot be granted security roles
  • Access teams cannot own records
  • Accesses records through sharing
  • Sharing privileges are defined by an access team template but don’t change dynamically for existing records if the template changes
  • Access teams are not displayed in most system views
  • You can add/remove users directly on the subgrid of the record you want to share access to.


Field Level security

  • Enabling or disabling of field level security by setting the IsSecured attribute cannot be audited.
  • System Admin is has all privileges on all field level security fields, the user has a System Administrator field security profile where all values are set to yes and will be for any fields checked for field level security.
  • Every field enabled for field level security is added to all field level security profiles
  • when you turn on field level security for a field, it will automatically be added to all Field Level security roles with Read, Create and Update all set to No.
  • New field level security fields can only be seen by users with the System Administrator role, so you have to go and configure the field level security privileges.
  • Every field level security profile will include all fields with field level security enabled.
  • Fields that are ticked for field level security will be added to field security profiles but with Read, Update, Create all set to No, so you must go in to configure
  • users/teams can be added to more than one field level security profile.
  • *** asterisks show if a user does not have read access to a field
  • *** asterisks show even if the field is null/blank
  • You cannot delete the System Administrator field level security profile
  • You can only set field level security on custom fields!


CRM MVP Question and Answer – Carsten Groth

This week we are hop from Finland to Germany to celebrate Bayern Munich being thrashed in the Champions League (that’s proper football american readers, where the ball is round and not egg shaped) and the Hosk questions Carsten Groth

If you want to know what Carsten Groth looks like here is a picture

oh a man of mystery hey, lets try again.  ahh there he is, I would recognize that eye anywhere.

I looked at the MVP biography, it’s fairly standard stuff

Currently I am a Technical Product Manager at FLS and Microsoft Most Valuable Professional (MVP) Microsoft Dynamics CRM since 2012. I am responsible for the CRM Partner Program and developing the roadmap for our portfolio around ISV Add-Ons. Prior to FLS, I worked for different CRM Silver and Gold partners as Consultant/Developer. Since the beginning of CRM 4.0 I blog as well as joining different communities, like xRMVirtual.So I am part of the Microsoft Dynamics Developer Family for over 14 years now – designing and building solutions on top of the xRM Framework.  Specialized:Developer, Technical Design, Pre-Sales Consulting

but of interest it has his recent activity and we can see Carsten has been doing quite a bit of speaking, MVP’s love speaking, they often do this in front of crowds of eager CRM users but if you monitor a CRM MVP in the wild you will often find them talking about CRM to themselves

Recent activities
Date Activity Type
4/28/2014 Big year 8 releases and 8 questions to MVPs Articles
3/23/2014 MVP talks about BPF in CRM 2013 Speaking (User group)
3/22/2014 Curah! Microsoft CRM Customer Care Blog Site Posts
3/4/2014 Convergence Atlanta Conference (booth presenter)
2/11/2014 Ask the MVP Experts Speaking (Conference)
2/10/2014 BPF Do´s and Don´ts Speaking (Conference)
2/3/2014 BPFHelper Library for CRM 2013 Code Project/Tools

below is the Rockstar 365 highlights

Carsten mvp 1

Carsten mvp 2

If you want to read previous CRM MVP Q&A by clicking the link on the header – HOSK’S CRM MVP Q&A

Thanks for Carsten for answering Hosk’s questions and if you do come into virtual contact with Donna Edwards, Scott Durow or Jamie Miley please feel free to remind them they haven’t answered the questions yet and we want to know how they would answer



Name, current job title and social media links please

Carsten Groth, Technical Product Manager at FLS GmbH, Germany



What different roles/Job titles have you had whilst using CRM

Starting as a Consultant I worked for different Silver and Gold Microsoft Dynamics CRM Implementation Partners in northern Germany specialized in multiple industries. I was engaged in Enterprise Deployment projects, before finally I switch sides and went over as a Technical Product Manager at FLS GmbH an ISV specialized on Field Service- and Workforce Management.

What was the first version of Microsoft Dynamics CRM you worked with and how long have you been using Microsoft Dynamics CRM

I was actually starting using CRM in version 1.0 which probably most of the users didn´t ever see. I´ve been working with CRM since then. So I´m a long time fellow…

How do you stay up to date with the CRM

I do have a single dashboard actually build inside my own Microsoft Dynamics CRM system which helps me aggregating multiple informations and keep up to date with all the news and ongoings inside CRM systems. The other part is basically a mixture between joining different events and participating in a great community in which we share our knowledge.

How do you find time to contribute to the CRM community whilst doing your job

This, of course is the most challenging, right? But I’m not gonna share my secret I manage this…

What advice would you give to someone who wants to have a successful career in Microsoft Dynamics CRM?

Actually, starting a career with MSDynCRM is pretty easy. First of all keep an eye on the different MS Academic Alliance proposals you have. This could be your first moment dealing with MSDynCRM. It then depends on the different roles you might want to start your career in, but it is for sure best practice if you´re following a goal. Think of “Where do I want to find me in 5 years?” – Don´t think this won´t change. In fact – you might find up yourself in a total different role in 10 or more years you never thought about.

What where your first impressions of CRM 2013 and what do you think now.

I do think it was something around… Sorry I don´t remember, cause I do work for a long time with CRM2013 right now. But I can share a personal story as we´re still dealing with multiple 2011 organizations as ISV solution. And if you ever return to that UI you will notice how much better the new UI and form extensions are – promise.

What one feature would you add to CRM 2013

I already added this one – a much more flexible and precisely scheduling engine. So check out our ISV solution FLS VISITOUR.

Most annoying feature of CRM 2013

There isn´t one I´m aware of

You favourite 2 CRM blogs (I have filled the first one in for you)

1. Hosks Dynamic CRM blog
2. Microsoft Dynamics CRM Tips & Tricks (carstengroth.wordpress.com)

Even though I´m writing in native german language – you can actually take translation engine of your choice to translate it and I promise content will make sense and bring value to you…
What year will Microsoft Dynamics CRM have more customers than Sales force

Sorry but I´m going for quality not quantity. So actually having customers loving their CRM system is more important than dealing with a couple of seats that might be sold, but actually those are not using their CRM.

Are you doing more CRM projects with CRM online? Do you think it will all be online in the future

Because of working together with multiple Implementation Partners across EMEA I would bet that the amount of online organizations compared to OnPrem might have switched. If you do think from developer perspective being online is not that bad, cause you do not have to deal with different technology issues you might run into. Unless there´s a way to make it available “offline” as well.

What is the best tool/solution you have used recently

There´re multiple “best” tools I´m using as an ISV/MVP – so I cannot highlight one only. But if you´re up for tools, visit codeplex.com and you´ll find multiple tools MVPs are sharing with the community and we love to get feedback from you to improve…

What CRM certifications do you have, do you try and keep up to date with CRM certifications
I do have all CRM possible pre-sales/consultant 2011 certifications and will take the personal challenge to take all 2013 certifications as well. 3/4 are actually done the moment I´m answering this.

How important is it to have good business analytical skills working with Microsoft Dynamics CRM.

That depends on the job role you´re working in. I won´t say it is not important, but there´re a bunch of situations where you do not need BA skills.

How useful is it to have programming knowledge to become a good Microsoft Dynamics CRM Professional?

Again, this depends on the job role you´re seeking for. I do know a lot of customizers who actually don´t have programming skills, but do a really good job just by customizing the system with OOB features.

What knowledge/experience do you have with software/systems which integrate with Microsoft Dynamics CRM e.g. (sharepoint, SQL Server, Scribe, Etc)

I do know a lot of Integration software solutions around MSDynCRM. So where should I start?

How often do you travel as a Microsoft Dynamics CRM Professional?

Not gonna sharing this…

Can you see yourself not using CRM in your career in the future

…mmh… I don´t think so.

What is favourite part of being a CRM MVP

Getting in touch with a great community – YOU and sharing knowledge, pains, opinions – to improve, grow and making things easier

Who is the first CRM MVP you remember reading/seeing

Jürgen Beck

Tips for someone who wants to become a CRM MVP

Think of becoming an MVP is an honor. It is not something as collecting titles just as collecting “friends” inside your favourite social community. Start sharing knowledge and someone will recognize and honor this. Always “give first” to get something back.
Quickfire questions (choose one option and no explanation)

Steve Jobs or Bill Gates

Javascript or .NET

Internet Explorer/Chrome/Firefox/Safari

Wine/Beer/Soft Drink

Certifications or Use CRM

twerking or tweeting

books or ebooks

save or autosave

OnLine or On Premise

Windows 7/Windows 8/Linux/Mac/Other

work from home or work from office

Miley Cyrus or Billy Ray Cyrus


Zero Inbox/Overflowing Inbox

Early Bird/Night Owl

Do Today/Do Tomorrow

CRM Developer/CRM Consultant

Hot Weather/Cold Weather

Half Full/Half Empty


CRM 2013 – MB2-703 – Customization and Configuration Certification Solution Test Questions

The best way to prepare for an exam, is to take practice questions and test your knowledge with questions in a similar way the exam will.

I have created a YouTube video where I go through the questions and explain the answers, I would definitely recommend watching that for the first time at least


So with this in mind I have created some questions for you.

I have also created the questions as slides, which you have seen in the video

Multiple choice questions


Quickfire Yes/No Questions





  1. Which statements are true about solutions?
    1. Saving your changes in a solution is mandatory
    2. It’s possible to export the Default Solution
    3. You cannot create more than 50 solutions
    4. Publisher is a mandatory field on a solution
  2. Which components can be added to a solution
    1. Team
    2. Message
    3. Business Rule
    4. Business Unit
  3. Which components cannot be added to a solution
    1. Subject
    2. Service Endpoint
    3. Goal
    4. Site Map
  4. What is true about solutions
    1. Deleting an unmanaged solutions doesn’t delete the components if there is data for them.
    2. Deleting a managed solutions deletes the components and the data
    3. You can only export the default solution as an unmanaged solution
    4. You can add plug-in assembly to a solution
  5. What is development and not customization or configuration from the list below
    1. Create a plug-in to run on the creation of an account to set reference number
    2. Create a custom entity to hold venue information
    3. Javascript validation on a phone number field
    4. Creating a business rule to disable a field until another field has a value
  6. What is removed when you delete an unmanaged solution in CRM 2013
    1. Just the solution record
    2. The solution record, the components and all the data
    3. The solution record and the components
    4. The solution record, it’s components and dependant components.
  7. What does the Version number show
    1. major.build.minor.revision
    2. major.revision.build.minor
    3. major.minor.revision.build
    4. major.minor.build.revision
  8. you import a managed solution which contains the account entity, you then import an unmanaged solution which also contains the account entity, both solutions change the Account Number field to have a different name, what name is on the account form
    1. Account Number, you cannot change the name of the account number
    2. The name given to Account number in the managed solution
    3. The name given to the Account Number in the unmanaged solution
    4. The name given in the solution which was imported last
  9. Which of the below is true
    1. You cannot export the Default Solution
    2. You can export the Default Solution from CRM OnPremise to CRM Online
    3. You need a special security privilege to import solutions
    4. Unmanaged solutions have to be published
  10. What is false about managed solutions
    1. Managed solutions can only be changed or altered by the publisher
    2. importing a managed solution is automatically published
    3. Managed solutions have versioning, unmanaged solutions do not.
    4. managed solutions are additive, you cannot remove any components by importing a managed solution





  1. b,d
  2. b,c
  3. a,c
  4. b,c,d
  5. A,C
  6. A
  7. D
  8. D
  9. C, D
  10. C




  1. Can you export a managed solution
  2. Can you export an unmanaged solution
  3. Can customization and configuration be used and refer to the same components.
  4. The correct format for version is major.minor.revision.build
  5. Subjects can be added to a solution
  6. There is no limit to the number of solutions you can create
  7. The prefix in the publisher is added before schema name for entities, fields
  8. The changes to components when importing an unmanaged solution cannot be undone
  9. Queues can be added to solutions
  10. managed properties are customizable by default
  11. It’s not possible to export  an unmanaged solution
  12. managed solution must be published after importing


  1. false
  2. true
  3. true
  4. false
  5. false
  6. true
  7. true
  8. true
  9. false
  10. true
  11. false
  12. false




CRM 2011/2013 online – you can change the base language but it will cost you money and data

I read a forum question this week, where the user asked if it was possible to change his base language from French to English and he was a CRM 2011 online user.

It was quickly explained to the user that it’s impossible to change the base language.

This is a commonly known fact for experienced CRM users and might even be one of the questions on one of the CRM exams.

Suddenly from out of no where a CRM Support engineers flies in with this answer

  It is correct that in the past changing the Base Language was not possible. I must inform you though that it can be achieved now by opening a Support Ticket with the Technical Support team. The base language change has it’s cost though, it can only be achieved by de-provisioning/re-provisioning your organization (deleting/recreating) which means that any data or customizations you have on the organization will be lost during this process. You will need to take care of backing up the data yourself if that is needed.

you can click here to read the forum post

So now it seems if you are willing to give Microsoft some cold hard cash they can change the base language but it will remove all your data and customizations will be lost.  This sounds suspiciously like they are just creating a new blank CRM to me and getting paid for it.  This is a rather drastic measure which I can’t really see anyone going for but file it away in the good to know (but not that useful) draw.

CRM 2013 – exams are released and links to training material

I have been seeing more and more tweets and blogs about people passing the CRM 2013 exams, I am just starting to study for the CRM 2013 Customization and configuration exam.  Below are the links to prometric exams

MB2-700 – Microsoft Dynamics CRM 2013 Applications

MB2-701 – Extending Microsoft Dynamics CRM 2013

MB2-702 – Microsoft Dynamics CRM 2013 Deployment

MB2-703: – Microsoft Dynamics CRM 2013 Customization & Configuration

There is also some CRM Online specific certifications that I have heard about but I’m not sure when they will be released and I can’t see how different they are going to be from the normal certifications in terms of configuring and customizing CRM.

  • MB2-721: Microsoft Dynamics CRM Online Fall Customization and Configuration
  • MB2-722: Deploying Microsoft Dynamics CRM Online


There is some student training materials available for those with partnersource account.  The download link is at the top right of the page.  I find the training below the most useful, it’s free and goes through all the main criteria in the exams

Sales Management in Microsoft Dynamics CRM 2013

This course introduces the capabilities of Sales Management in Microsoft Dynamics CRM 2013 that allow you to track and manage the sales process from potential to close. This course provides insight on sales process information, and introduces the tools available to analyze and report on sales information.

This course guides you through the tools that help make the internal processes simpler and easier so your sales force can focus on what is important—creating a differentiated experience for your customers

Customer Service in Microsoft Dynamics CRM 2013

This course focuses on how an organization can nurture customer satisfaction through automation of business processes within Microsoft Dynamics CRM 2013.  This course provides an insight into all of the powerful Customer Service and Service Scheduling functionality capabilities within Microsoft Dynamics CRM 2013.

Additionally, this course guides you through the process of working with your customers in Microsoft Dynamics CRM 2013, including: resolution of customer complaints and services issues cost effectively, and provides insight on managing  all related correspondence, documents, contacts and conversations. This course demonstrates the rich and relevant view of your customer that provides your team with actionable insights, including the use of knowledge management in a centralized knowledge base.

Customization and Configuration in Microsoft Dynamics CRM 2013

This course describes the techniques required to customize Microsoft Dynamics CRM to meet the specialized needs of businesses. The topics covered include security; creation and configuration of entities; design of forms views and charts; auditing and solutions. The course describes each topic and how each topic relates to the other topics to produce a full configured, effective solution.

Installation and Deployment in Microsoft Dynamics CRM 2013

​This two-day training course provides individuals with the skills to install and deploy Microsoft Dynamics CRM 2013. The training material focuses on the components used within a Microsoft Dynamics CRM deployment, the hardware and software requirements needed to successfully deploy Microsoft Dynamics CRM, and the installation instructions for the primary Microsoft Dynamics CRM components: the Microsoft Dynamics CRM Server, the E-Mail Router, and Microsoft Dynamics CRM for Office Outlook. The course also covers upgrading from earlier versions,  configuring an Internet-facing Deployment and administration tasks.

Would you like A CRM Tip of the day?

If you are of the opinion

A Tip a day keeps CRM at bay

then I have the perfect blog for you, no it’s not mine.  It’s the chaps over at CRM Tip of the Day who also have a lovely logo

It’s a site being run by the crew of

  • Joel Lindstrom. CRM Guru Extraordinaire, father, author, harp virtuoso, formidable cow tipper
  • George Doubinski. Ex-Nuclear ex-scientist, occasional blogger, lousy curling player, CRM Enterprise Academy trainer, consumer of fine foods & liquids

If you haven’t heard of Joel Lindstrom he is a CRM MVP for a number of years.

The tips are quick snappy tips and there are already 40 plus ready for you to enjoy, click the link to go to the site – http://crmtipoftheday.com/.  It’s a site which does exactly what it says on the tin, if indeed it was a tin with the name of the site on the side.

My only criticism is I can’t see an RSS link to subscribe to the service so you have to follow them by twitter at the moment @crmtipoftheday

here is a sample tip to wet your appetite

Tip #39: Custom indexes in CRM Online

A little known secret for CRM Online users and a good reminder from . If you’ve added additional search fields to your Quick find or other views, the underlying entity contains a large number of records, and the response time is slow, you might need a custom SQL index added to improve the performance. While administrators of on premises deployments of Dynamics CRM can add SQL indexes as needed, there is no direct access to CRM Online database. The good news is that Microsoft Support can add required database indexes for you. Just open a support ticket and make the request (of course, you’d better do your homework and be sure that the index will solve the issue and not leave database performance unaffected or, worse, slow down your CRM)