Skip to main content

Microsoft SharePoint and Dynamics CRM -- Better Together: Part 4

Dynamics CRM Strengths

This post focuses on the strengths of Dynamics CRM -- the next in the series on the strengths of SharePoint. This blog is an excerpt from an InfoStrat white paper

Relational Data

While SharePoint’s strength is unstructured content such as documents and web pages, Dynamics CRM is often better for structured, relational data.  SharePoint provides some features to get you closer to relational behavior, such as lookup columns in lists and site columns, but other key relational features are missing.

Several years ago my company embraced SharePoint for generating customer proposals.   It was great to store drafts, collaborate on documents, and track calendars.  We added metadata to the document library to show the type of proposal, name of customer, and other pertinent information. 

We ran into problems, however, when we want to run more sophisticated reports on sales activity, to match security permissions to account territories, and other features that are common in a CRM system.  Consequently, we implemented Dynamics CRM in order to track sales and marketing activities, but kept SharePoint as the repository for proposal documents which require document management features such as alerts and version control which are not available in Dynamics CRM. 

Dynamics CRM 2013 and 2015 versions added better support for aggregation on forms, a feature that reduces the need for reports in some instances.
Centralization and Standardization
Dynamics CRM excels at promoting consistency and shared standards that are centrally administered.  Unlike SharePoint, Dynamics CRM applications have a centralized data model so that the attributes are the same for an entity for all users. The security model and the user interface of Dynamics CRM are better suited to central administration than list objects in SharePoint which are under the control of site owners. 

Data Import and Export
Dynamics CRM comes out ahead of SharePoint in this category with its import utility and the ability to export from custom views, despite some SharePoint import and export features relating to Excel and Access.  Dynamics CRM provides a wizard interface to map data fields on import, and batches imports so unsuccessful imports can be undone.  Dynamics CRM is supported by mature third party import tools for importing and synchronization with other data sources as well. 

Contact Management
As contact management is at the core of Dynamics CRM, this one is not really a fair fight.  Straight out of the box, Dynamics CRM is a powerful contact management solution, while the SharePoint contact management template is crude by comparison, and lacks the most fundamental features (duplicate checking, field formatting, field validation, multiple addresses, links between contacts and organizations, mail merge) you would seek in contact management.

SharePoint offers a site template for contact management which implies that SharePoint provides a viable contact management system.  Unfortunately, in this case, SharePoint does not deliver.  The SharePoint contact management site template contains merely a handful of fields, and lacks the ability to track contact activities such as phone calls, meetings, or letters.  The SharePoint contact management template contains no reports.  You would be better off to track your contacts in an Outlook public folder than in the SharePoint contact management template. 
Case Management
Like contact management, case management is at the core of Dynamics CRM, and a large number of features are included out of the box such as case intake, escalation, a knowledge base, queues, and case management reports. Government agencies use case management for delivering services to constituents in areas such as health care, social services, and many more. SharePoint offers no analogous capabilities out of the box, but third party add-ins are available for some case management scenarios.

Marketing and Outreach
Dynamics CRM contains powerful features to contact people by generating emails, perform mail merges, and generate phone call lists.  Dynamics CRM helps you manage marketing campaigns and track expenses as well as responses to the campaign. Since contact management is the core of Dynamics CRM, these features are mature and rich.

To match even one of these functions in SharePoint would require significant custom development.   The only feature that comes close is the ability to send an email to members of a SharePoint site. 
Security Model
Dynamics CRM has a fundamentally different security model than SharePoint, as shown in Table 2.  It embodies the concept of an organizational hierarchy which segments data horizontally and vertically.  Dynamics CRM also relies on the concept of record ownership and assignment.  For instance, a sales manager can see all the opportunities that belong to the sales reps who report to her, but the sales reps cannot see one another’s records.  When a new opportunity is received, it may be assigned to the appropriate sales representative with the built-in Dynamics CRM feature Assign. 

Architectural Element
Dynamics CRM
Organization hierarchy
Does not exist, only site hierarchy
Represented in CRM administration
Row level security
Supported by exception in list objects
Supported by default and mapped to CRM user roles
Field level security
Requires workaround
Role Based
Page/Form Security
Role Based Forms
Permission inheritance
By default by may be broken
By default, user may reassign record ownership
Security administration
Difficult to view across SharePoint farm

Table 2. SharePoint and Dynamics Security Models

Dynamics CRM has a security model that includes the idea of an organizational hierarchy as well as individual record ownership.  For instance, you can have two divisions of a company that use the same data model and functionality but do not share data with one another.  Sales accounts may be divided into territories, and managers assigned to a group of account executives.  This means that all records associated with an account, such as contacts and activities will be visible to people with rights to that account. 

SharePoint has a security model that resembles Windows file system permissions, but with a twist.  A document library (or another list object) has permissions that flow down from the parent site.  Items in the list object inherit permissions as well.  Only if inheritance of permissions is broken can individual item permissions be set. 

SharePoint has a security model which offers its own richness and complexity, but in some ways is better suited to content management and web sites than to line of business applications. For instance, security permissions and roles may be inherited from a parent site or the inheritance may be broken to allow custom permissions.  SharePoint has no paradigm comparable to Dynamics CRM for modeling an organization, nor does it support the concept of record ownership as defined in Dynamics CRM.

While Dynamics CRM 2015 has field level security, SharePoint requires custom development to achieve this feature.  

Dynamics CRM allows you to easily view permissions by entity for each user role. The permissions for each entity are quite granular, and are enforced in conjunction with record ownership.  

Popular posts from this blog

Key Concepts for Microsoft Dynamics 365: Tenant, Instance, App and Solution

Updated 8/15/2022 To understand Microsoft Dynamics 365 (formerly Dynamics CRM) and Power Apps, you need to learn some new terms and concepts that may be a bit different from what you know from databases and solutions that are hosted on premises.  These concepts also apply to Power Apps.  The main difference is that with Power Apps you are not starting with a Microsoft app but more of a blank canvas for your custom apps.  This post introduces some key terms and how these concepts are important for planning your implementation. While Dynamics 365 is still available on premises, it is most commonly deployed on the Microsoft cloud.  This blog post discusses only cloud implementations. Microsoft has multiple clouds such as commercial and government community clouds in several countries. We start with a Microsoft tenant .  A tenant is the account you create in the Microsoft Online Services environment (such as Office 365) when you sign up for a subscription. A tenant contains uni

My Favorite Microsoft Power Apps Bloggers and their Blogs

  by James Townsend Updated 7/5/2022 Microsoft Power Apps is one of my favorite subjects, and I enjoy reading blog posts from members of this thriving technical community.  Here are some of my favorite bloggers and their blogs: The Official Microsoft Power Apps Blog   I have to start with the official Microsoft Power Apps blog.  It has many contributors, largely Microsoft program manager, including frequent posters Denise Moran ,  Greg Lindhorst , Kartik Kanakasabesan , and  Adrian Orth .  This is the place to go for product announcements, updates and technical how-to for a broad range of Power Apps topics.  April Dunnam April Dunnam was formerly focused on SharePoint and now devoting herself to Power Platform.  April offers highly understandable explanations of Power Platform, Dataverse and other top Power Apps topics. She joined Microsoft in late 2019 and has a thriving YouTube channel .  Carl De Souza Power Apps Blog and eBook This is one of the most extensive and best organized blo

Understanding Dynamics 365 and Office 365 Admin Roles

Managing Dynamics 365 instances If you run Microsoft Dynamics 365 (formerly Dynamics CRM) in the Microsoft cloud, you need to understand how your Dynamics instances relate to Office 365 and choose which of your administrators receives which roles and permissions to manage Dynamics 365. In on premises deployments, your network administrator would create and delete user accounts.  The Dynamics 365 admin would then assign permissions to users in Dynamics 365. This post explains three administrator roles: Office 365 Global Administrator Dynamics 365 System Administrator Dynamics 365 Service Administrator You may think that the Dynamics 365 system administrator would have power to do all the actions needed to manage Dynamics 365, but this is not the case. What's different in Microsoft cloud deployments is that licenses and user accounts are managed in Office 365 by an Office 365 Global Administrator.  This role is analogous to a network administrator for an on premises