With Microsoft Dynamics CRM’s ability to easily configure and customize a system to fit any business process, questions frequently arise about whether customizing native Dynamics CRM entities is the right choice. Recently, we implemented Dynamics CRM for a client and found many advantages and disadvantages to using a native entity instead of creating the functionality from scratch. Below is a list of a few pros and cons to consider when your organization is faced with a similar business decision.
Pros of Using a Native Entity
- Ability to utilize native Dynamics CRM calculations and plugins. Dynamics CRM performs calculations when using quotes, quote products and price lists that may save a project time and money because custom code will not need to be written. For example, the system automatically calculates the quote subtotal based upon the extended amounts of the quote products.
- Native Dynamics CRM relationships. When using multiple native entities the existing relationships can be used without having to create and connect entities all over. This may help reduce a potential web of entity associations.
- Utilization of unique functionality. For example, the sales literature entity has a unique way to store a small library of information within Dynamics CRM. It also could be a way for users to upload document profiles about themselves and attach to activities using a workflow.
Cons of Using a Native Entity
- Difficulties with system flexibility. For example, when you use quote and quote products, the security for quote products is inherited from the quote entity. If the security for those records need to be different, extra customizations will need to take place because of the lack of flexibility in CRM security. Similar issues will arise if native ribbon buttons are used and there is a need to change their functionality as most native button rules cannot be changed.
- Field level security not available for native fields. If there are fields that need field level security, any fields you hoped to use the native functionality for won’t be able to have security added to them.
- Upgrading issues. Whenever you customize in Dynamics CRM there is the possibility something may break in the next rollup or release. If the native entity will be heavily customized, you may spend a lot of time reworking the functionality if your organization plans to keep up with Dynamics CRM upgrades.
This is just a short list of items to consider. What other items have you considered when deciding between building custom functionality and using a native entity? If you have any questions regarding the customization or configuration of Dynamics CRM, feel free to leave a response on the blog or you can reach out to our professionals via this form or by phone at 855.437.7202.
By: Alesha Baerenwald – Microsoft Dynamics CRM partner in Minneapolis