Accelerate your GDPR compliance with Microsoft Azure Cloud – a Microsoft blog

As my blog readers are aware, I’m a keen learner, reader and blogger on GDPR Compliance and Customer Relationship Management solutions with focus on Dynamics 365 CRM.

Recently, Microsoft published an interesting blog post (which I’m sure won’t be the last) about how Microsoft Cloud can help businesses accelerate their GDPR compliance. You can read it all here:

https://blogs.microsoft.com/blog/2017/05/24/accelerate-gdpr-compliance-microsoft-cloud/

I’m particularly interested in the fact that hosting your application in a GDPR compliant Cloud, minimises your business risks to GDPR fines (up to 4% of your business revenue). This is because if you host your solutions in the Cloud, you have “outsourced” a good portion of your liability to your Cloud vendor. This obviously does not remove your business direct liability for GDPR but it removes your need to spend time, resources and money ensuring that your on-premise data centre (or server rack!) is compliant with GDPR including who can access it physically and virtually/remotely.

Microsoft Cloud has become the first Cloud Vendor (and I think the only so far) who commits to GDPR contractual commitment to all its Cloud clients.

You can read the rest of my articles on GDPR and CRM / Dynamics 365 under this section of my blog:

http://www.mohamedmostafa.co.uk/blog/category/gdpr/

LinkedIn Sales Navigator Integration with Dynamics 365 for sales from the Dynamics 365 Public Roadmap

In my post yesterday, I discussed the LinkedIn Connector for LinkedIn Lead Gen Forms as highlighted in Microsoft’s public Dynamics 365 Roadmap website: http://roadmap.dynamics.com
Microsoft is presenting that the LinkedIn Sales Navigator integration with Dynamics 365 for Sales enables organisations to improve the performance of their sales processes by taking advantage of the information richness available on LinkedIn’s company and person public profiles.
As I’m sure you must have heard, LinkedIn data is the Golden Dust everyone wanted and only Microsoft managed to get (which made SalesForce really annoyed). This direct integration between Dynamics 365 and LinkedIn is surely just the first step in a number of enhancements, capabilities and features that will massively differentiate and advance Dynamics 365 over and above Saleforce and other competitors.
This capability is promising to bring LinkedIn data such as company and person public profiles across to Dynamics 365. You can imagine how many beneficial uses such feature can bring from data cleanliness to data enrichment to competitor advantage due to data and relationship knowledge that your organisation will have while integrating Dynamics 365 with LinkedIn.
Microsoft further explains the feature as follows:
  • Display Sales Navigator person and company information on every Dynamics 365 for Sales lead, contact, account and opportunity page. This is just the start but I guess everyone will agree there is a lot more expected including the ability to bring in LinkedIn information into custom Dynamics CRM entities as well.
  • Automatically perform daily updates between systems so the accounts and contacts sales reps are actively working on in Dynamics 365 for Sales are saved to Sales Navigator. In addition, sales reps can see in Sales Navigator what people and companies are already saved in Dynamics 365 for Sales, and vice-versa. Again an excellent feature that could make real difference to many organisations and sales teams.
  • With a single click, write select Sales Navigator activities (InMails, messages, notes and call logs) to Dynamics 365 for Sales providing better communication, connectivity and full 360 degree view of customers including your communication through LinkedIn messages and InMails.

Personally, I think this connector is a winner and will massively differentiate Dynamics 365 way above its competitors such as Salesforce. I have been in CRM selection meetings where clients are already finding it a “no-brainer” to choose Microsoft Dynamics 365 just for the sole reason of having LinkedIn data in their CRM system.

With that said, we expect a lot more from Microsoft when it comes into LinkedIn integration with Dynamics 365.

Full details and source can be found at the public Dynamics roadmap here: https://roadmap.dynamics.com/#area=#application=326f31ea-2992-e611-80dc-c4346bac0910

 

Dynamics 365 Learning, Training and Resources Series: Partner Next Free Available training videos and material

In this series of post regarding Dynamics 365 Learning and Personal Development, I discussed some of the basics for learning Microsoft Dynamics 365 including an Introduction to Learning Dynamics 365, setting up trial Dynamics 365 Online instances and Creating your Learning Plans in Dynamics Learning Portal

In the last post in this series, I also talked about gaining access to Dynamics 365 Talent Portal through various ways.

In this post, I’d like to introduce Partner Next and its free training videos section. You can see the full list of Dynamics 365 training videos on this Partner Next section. The Videos cover various Dynamics areas including Customer Service, Operations, Sales, Financials and a lot more.

Here is a list of each Video on this page:

Module 1: Getting started with Dynamics 365
Module 2: The market opportunity with Dynamics 365
Module 3: Dynamics 365 workload 101 – Customer service and sales
Module 4: Dynamics 365 workload 101 – Operations and financials
Module 5: Dynamics 365 workload 101 – Customer insights and marketing
Module 6: Dynamics 365 workload 101 – Field service and project service automation
Module 7: Building a Dynamics 365 practice
Module 8: Key industry scenarios for Dynamics 365
Module 9: Dynamics 365 transactional options
Module 10: Next steps

Finally, Talent 365 Portal has an interesting Dynamics 365 Readiness guide, and you can also review their current Dynamics Learning Portal course catalogue for Dynamics 365

Hope this helps all new Dynamics 365 Learners! Always remember you can join the CRM Boutique Mentoring programme if you want a Mentor to support you through your career development.

Gaining access to Dynamics Learning Portal: Essential Dynamics 365 Learning & Study material – Part 3

In the past 2 articles, I discussed some of the basics for learning Microsoft Dynamics 365 including an Introduction to Learning Dynamics 365, setting up trial Dynamics 365 Online instances and Creating your Learning Plans in Dynamics Learning Portal

In this article, I’m trying to give some guidance to new Dynamics 365 learners on how to gain access to the essential Dynamics Learning Portal (DLP). You can access DLP through this link: https://mbspartner.microsoft.com/Home

However, you need to make sure that you are using Microsoft logins that are associated with a Dynamics Partner or Customer who have access to the Dynamics Learning Portal. Otherwise, you will not be able to access DLP.

Alternatively, if you do not have access to DLP via your employer, either as a partner or customer, then your next best option is to register as a consultant at https://www.365talentportal.com/. Talent 365 Portal can give you access to DLP as a signed up consultant with them. Please talk directly to them if you require further guidance.

Once you gain access to DLP, my advice is to build up a learning plan (as per my previous post) that can help you learn Dynamics 365 step by step through video tutorials, live sessions, etc. You should always start with the “Introduction to Microsoft Dynamics 365” video (level 200) and then move to the value proposition.

Hope this helps! Feel free to comment below if you need help accessing DLP and I’ll see what I can do. You can also register for the Free Dynamics 365 Mentoring Programme on the CRM Boutique: http://crm.boutique

Microsoft Dynamics CRM 2016 & CRM Online Training and Introduction Agenda – Recommendations and Suggestions

I have recently been asked by one of my clients to take them through a walkthrough / high level training / demo of Microsoft Dynamics CRM Online (also applies to Dynamics CRM 2016). The audience is a collection of Client senior leadership, programme leadership and various business stakeholders.

I decided to limit handouts to a single A4 Agenda which lists in a chronological order Dynamics CRM modules, features and functionalities to be covered along with Dynamics CRM navigation, layout and capabilities such as search, filtering, sorting, menu bars, etc.

I then thought I’ll share this suggested agenda list with my blog followers to help everyone out if they are looking for a recommended agenda for Dynamics CRM Introduction or basic Microsoft CRM training. It is certainly not an exhaustive list of all agenda items that you could cover and the scope & flow may also need to change from one client to the other. This agenda, however, seemed sensible for my client needs and requirements.

The agenda is available as an a downloadable PDF file at the bottom of the post below or you can simply copy and paste it from the following list.

Here comes the agenda – Hope this helps:

Concepts:

  • Entity (DB table)
  • Record (DB row)
  • Relationships between entities
  • Modules: Sales, Marketing & Service
  • New: Field Services & Project Services

Walkthrough:

  • Navigation – Application Top Menu bar
    • Recent items
    • Quick Create
    • Global Search
    • Advanced Find / Search
  • Personal Options (top application menu)
  • Views: System & Personal -(e.g. active contacts)
    • Open record vs Link/Relationship
    • Select record or multiple records
    • View top menu (full record vs quick create)
    • View Selector (System vs Personal)
    • Set Default Personal View
    • No. of records displayed in view: 25 -250
    • Search within View (Quick find)*
    • Search wildcard (within current view only)
    • Search by related records (parent account)
    • View charts (right side of view)
    • Filtering & Custom Filters*
    • Sorting & double sort columns
    • View Jump to Letter (Bottom navigation)
    • Bulk Edit multiple records
    • View Data Refresh
  • Forms (Multiple) & Records– (e.g.: contact form)
    • Form Selector
    • Record top menu bar
    • Navigate to next/Prev record & pop out
    • Ownership (User vs Team vs Org)
    • Assign to me/another
    • Social Pane: Posts, Notes & Activities
    • Map (OOB – e.g. contact)
    • Lookup, Option set & Composite (name)
    • Click through to email & dial out (Skype)
    • Saving: shortcut, icon or navigation
  • Advanced Find queries & views
  • Charts & Dashboards
    • System vs Personal
    • E.g. chart: Account by City
  • Business Process Flows
  • Activities: Type of entity
    • System vs custom
    • Filtering
  • Queues:
    • Routing
    • Work On
    • Assignment
  • Reporting:
    • Advanced Find
    • Report Wizard
    • SSRS
  • Help Content/ Learning Path
  • Connections (Networking / non-hierarchical)
    • Connection roles
  • Case Management
  • Other Dynamics CRM features & capabilities:
    • Administration
    • Security, Roles, Users, Teams & Bus
    • Processes: WFs, BPF, dialog & actions
    • Templates
    • Product Catalog / catalogue
    • Data Management & Duplicate detection
    • Service management
    • Business Management
    • Solutions: managed vs unmanaged, patching
  • Other Topics / Future sessions:
    • Outlook Client (x2) & filtering
    • Mobility: Mobile & Tablet apps
    • Document Management (OOB)
    • Social Engagement
    • MS Dynamics Marketing
    • Entitlements & SLAs
    • Activity Feeds
    • Interactive Service Hub
    • ADX Portals
    • Feedback/Customer Voice
    • Sales Gamification
    • Marketplace & AppSource
    • Dynamics 365 vs Office 365

Recap on Search:

  • Global Search
  • Advanced Find
  • Search within View (Quick Find)
  • Filtering within Views

Recap on Reports:

  • Advanced Find
  • Report Wizard
  • Dashboards & Charts
  • SSRS

Multiple Persona or Profiles per customer contact in Microsoft Dynamics CRM Online & CRM 2016 on-premise: CRM contact architecture approach

A CRM contact with multiple personas or separate individual profiles is a fairly common scenario in many Dynamics CRM projects. For example:  A contact could be a Managing Director of an organisation while at the same time they are non-executive director in a different firm or sits on the board of a Charity.

In Dynamics CRM, a contact is normally one person. Setting an individual contact to have multiple profiles and personas can be delivered in a number of ways – arguably most of them are not 100% ideal.

First option for delivering the multiple personas for the same individual contact is to create a custom entity for each persona/profile and have the contact record as a parent (or a child) for each one of these entities. Other options, which I wouldn’t recommend, is to create a custom entity for each persona and not include or use the contact entity at all – i.e. you will be re-creating the contact entity multiple times, once for each persona. This is not a good practice and a highly discouraged approach.

Another option which is also not recommended, but more common, is to create a separate contact for each persona allowing for duplicate contacts – for example: John Smith, the Director of company X and another contact, John Smith, sitting on the board of company Y. Again, duplicating contacts is never a good practice.

There are other additional options to achieve the multiple persona scenario in Dynamics CRM such as as customising the contact entity heavily so that it allows for capturing multiple personas on the same form and entity. Again, this might work for some CRM solutions but is not ideal.

Let’s explore the first option further. In this approach, a custom entity for each persona or profile is created while having the contact entity as either a parent or a child for each custom entity. This option is the most commonly used and was unofficially suggested by a highly qualified Microsoft contact for a number of scenarios. One main challenge, among other challenges and limitations of this approach, was to be able to display all contact information within the custom entity for each persona.

For example, let’s say John Smith is an Ex-employee, a Director in company X and also a non-executive director on the board of company Y. You will have 3 persona records (same custom entity or different) all linked to the same contact record. Then, if there is a process where you want to show 1st Persona, you will use data from the 1st Persona form and so on, just using the relevant persona entity record.

However, if you want to show contact information from the contact record such as mobile number or email address, you were left with limited options as you couldn’t directly show this information within the persona entity form. Your options where to copy the contact information across from the contact to the persona record and always keep them both in Sync programmatically. Synchronising the contact information was a lot of overhead of custom development though. The other option was to show the persona without the contact information and then expect users to click their way through from the persona record all the way up to the parent contact record, just to be able to see the persona phone number! This wasn’t helpful either.

Now, in Dynamics CRM 2016 and Dynamics CRM Online, there is a new feature that I found to be very useful to help resolve this limitation in the persona situation or even in other situation where you need to show fields, information or data from the parent record on the child entity form.

My suggestion is to do this using calculated fields. I found this to be very powerful. You can now go to the form of any entity and add a calculated field that shows the data from the parent record. So in our persona example, you could simply have the contact entity as the parent of the persona custom entity and then add a calculated field on the persona entity form. This calculated field is then set to be equal to the relevant parent contact record information such as: mobile number or email address. This is done just like you would do a formula on CRM calculated fields where you are now able to select the parent field from field calculation formula building screen.

 

This applies to many other situations where you can show data or calculation of data from parent records of any child entity form. I found it to be a powerful new feature with many  other useful uses. Anyone else found this interesting or have other recommended approaches?

#MSDynCRM What’s new in Microsoft Dynamics CRM 2015 Fall Wave Release Code Name Vega

Microsoft today has shared some information on Microsoft Dynamics CRM Fall Wave release – codenamed Vega as part of the Microsoft Dynamics roadmap 2014/2015. There are 3 other releases as part of CRM 2015 (Q4 2014) Fall wave release. These are: 1) code name Hydra: Microsoft Social Listening, 2) Electra: Microsoft Dynamics Marketing and 3) Phoenix: Parature (Dynamics CRM Integration with Parature) as shown in the below Microsoft Dynamics CRM road map (for 2014 and 2015).

Microsoft Dynamics  CRM 2014 2015 Roadmap
Microsoft Dynamics CRM 2014/2015 Roadmap

More details about these 3 other releases will be in future posts.

As for Dynamics CRM Vega, this is a release focusing on Microsoft Dynamics CRM Core product. The Fall Wave release Vega applies to both CRM Online and CRM On-Premise.

So Vega is apparently going to be officially named: CRM 2015. It will be released before end of this year (Q4 2014). It is expected to include some core product features in Dynamics CRM that many have been waiting for!
New features and enhancements in Vega Dynamics CRM 2015 are:

Business Process Improvements:

  • Rule-based branching
  • Single Edit experience
  • Support for multiple entity loops
  • Programmability through Client API
  • Active processes
  • Change of currently active process
  • Move Stages
  • Stage selection and Changing of currently active stage

User Experience Improvements:

  • Multi Entity Search Capability (horraayy!)
  • A new Advanced Search Button
  • Nested Quick Create forms

Mobility Features:

  • The addition of 29 new Languages
  • More Dashboards and new concept of Home-pages
  • Support of “Any Device”
  • Ability to have offline drafts

Enterprise Sales Features:

  • Entity Hierarchy
  • Cross-sell and Up-sell capabilities (also know as Next Buy Actions)
  • External Pricing features
  • Attribute Inheritance
  • Product Relationship
  • Bundles

XRM and Development Advances:

  • Complex calculations (Calculated Fields & Roll-up of values) (Yes!)
  • Hierarchical Relationship Property
  • Ability to query multiple entities
  • Hierarchical Security Models
  • Field Level Security for system fields (out of the box fields)

Analytics and Business Intelligence Enhancements:

  • Power BI in CRM Web client
  • Transactional reporting of CRM on Windows Mobile Client Application
  • Roll up on different fields across hierarchie

Specific for CRM Online (Microsoft’s Online First motto):

  • Self-Service
  • Sign up process Simplification
  • Global Expansion from 42 to 61 Markets (Latin America data centre)
  • Multi-Geographical tenants
  • Scaling out Organisation Synchronisation
  • Minimal downtime Upgrades
  • Addition of Load balancing

Supported OS and Software Requirements:

  • Windows Server –2012 & 2012 R2
  • Windows Client – Vista, Windows 7 & Windows 8
  • ADFS – 2.0, 2.1, 2.2
  • SQL Server – 2012
  • Exchange Server –2010 & 2013
  • Outlook – 2010 & 2013

Software and OS no longe supported:

  • Windows Server 2008 & 2008 R2
  • SQL server 2008 & 2008R2
  • Windows Small Business Server ( all version )
  • 2008 Series Terminal Servers
  • Windows Vista
  • SharePoint 2007
  • Exchange 2007
  • IE 8, IE 9
  • Office 2007

This post has content from this Dynamics Community post

#MSDynCRM #CRM2013 Using FetchXML versus SQL script for writing Microsoft Dynamics CRM SSRS custom reports

This might sound a known fact but you will be surprised that quite a few people don’t know why and when do they need to use FetchXML for writing an SQL Server Reporting Services report as opposed to writing common SQL Server script.

Here is how Microsoft Defines FetchXML:

FetchXML is a proprietary query language that is used in Microsoft Dynamics CRM 2013 and Microsoft Dynamics CRM Online. It’s based on a schema that describes the capabilities of the language. The FetchXML language supports similar query capabilities as query expressions. In addition it is used as a serialized form of query, used to save a query as a user-owned saved view in the userquery entity and as an organization-owned saved view in the savedquery entity.

A FetchXML query can be executed by using the IOrganizationService.RetrieveMultiple method. You can convert a FetchXML query to a query expression with the FetchXmlToQueryExpressionRequest message.
For information about how to use LINQPad to work with FetchXML, see this blog post: Getting FetchXML from LINQPad: http://blogs.msdn.com/b/devkeydet/archive/2012/04/22/getting-fetchxml-from-linqpad.aspx

Now to answer the main question of this post: When should I use FetchXML for reports?

As a fact, you cannot write SSRS reports with direct SQL script on Microsoft Dynamics CRM Online. Hence, if you want to write an SSRS report for Dynamics CRM Online, you have to write your query in FetchXML.

Within your SSRS report, you will need to create a dataset that returns the data you require in your report and then everything else will be the same as per any other SSRS report.

Please note however that you do require Microsoft Dynamics CRM Report Authoring Extension installed to be able to write FetchXML queries and to connect to your Dynamics CRM Online organisation.

Additionally, at the time of this post, you can only write Custom SSRS reports for Dynamics CRM using Visual Studio 2010 with SQL Server Data Tools SSDT OR Business Intelligence Development Studio (SQL 2008 and VS 2008 with BI)

You cannot write SSRS reports in Visual Studio 2012, 2013 at this point of time. SSDT for Visual 2013 is not currently available due to some issues.

Finally, here are some sample FetchXML queries:

Total number of Leads (Count - Aggregate):
<fetch distinct='false' mapping='logical' aggregate='true'> 
 <entity name='lead'> 
 <attribute name='fullname' alias='lead_count' aggregate='count'/> 
 </entity> 
</fetch>
Total number of Opportunities (Count - Aggregate):
<fetch distinct='false' mapping='logical' aggregate='true'> 
 <entity name='opportunity'> 
 <attribute name='name' alias='opportunity_count' aggregate='count'/> 
 </entity> 
</fetch>
Number of leads by Category:
<fetch distinct='false' mapping='logical' aggregate='true'> 
 <entity name='lead'> 
 <attribute name='fullname' alias='lead_count' aggregate='count'/> 
 <filter type="and">
 <condition attribute="crm_leadtype" operator="eq" value="100000001" />
 </filter>
 </entity>
</fetch>
<!-- where crm_leadtype is an option set (category) and its value is integer-->
The "Not Equal" filter condition example:
<condition attribute="crm_leadtype" operator="neq" value="100000001" />
FetchXML Average aggregate:
<fetch distinct='false' mapping='logical' aggregate='true'> 
 <entity name='opportunity'> 
 <attribute name='estimatedvalue' alias='estimatedvalue_avg' aggregate='avg' /> 
 </entity> 
</fetch>
FetchXML Maximum Aggregate:
<fetch distinct='false' mapping='logical' aggregate='true'> 
 <entity name='opportunity'> 
 <attribute name='estimatedvalue' alias='estimatedvalue_max' aggregate='max' /> 
 </entity> 
</fetch>
FetchXML Sum Aggregate:
<fetch distinct='false' mapping='logical' aggregate='true'> 
 <entity name='opportunity'> 
 <attribute name='estimatedvalue' alias='estimatedvalue_sum' aggregate='sum' /> 
 </entity> 
</fetch

More information and samples can be found here:
http://msdn.microsoft.com/en-us/library/gg309565(v=crm.6).aspx

Hope this helps!

Business Process Flow Vs Dialogs in Microsoft Dynamics CRM #MSDynCRM #CRM2013

Process Enablement in Microsoft Dynamics CRM 2013 is achieved through a number of capabilities including Business Process Flows, Dialogs and Workflows in Dynamics CRM 2013.

When is best to use Business process flows and when best to use Dynamics CRM dialogues is a dilemma that many CRM consultants and developers face.

This post gives a simple comparison table between Business Process Flows Versus Dialogs in Microsoft Dynamics CRM 2013

Point of Comparison Business Process Flows Dynamics CRM Dialogs
Session  Mostly for Multi-Session processes but could work for Single Session ones  Single session capture only.
 Wizard  Using process to reproduce all fields on a form is not recommended approach Misses opportunity to highlight key outcomes that should be addressed  Yes. Dialogs are perfect for a wizard based process.
 Guidance or Control

 Guidance.

BPF are intended to guide a user through a process, not to control them. Strict compliance is not well served by Business Process Flows.

 Control.Dialogs are intended to provided a structured strictly controlled processes. Strict compliance is better served by Dialogs
 Linear Information Capture Where there are significant linear information capture processes, then dialogs or forms work well, and provide better mechanisms for this type of information capture.  Dialogs can be useful for information capture if the information is to be used across multiple entities.
 Tracking  Tracking of stage in a processReporting/ management awareness of state of business TrackingQuick insight to user on initial access  You can’t stop a dialog half way through, close it and then re-run it from where you stopped. Business process flows can via current stage and state tracking.
 Complex Processes Guidance Yes. Particularly cross entity and cross person, where mistakes can occur during the
hand offs between parties.Support for infrequently used or inconsistently performed processes, where mistakes are more likely to occur through lack of familiarity
 Yes as well. Dialogs can provide help, tips and guidance text throughout each page of Dynamics CRM dialog.
 Training Business Process Flows can assist by supplementing training.It can be used to support new processes before they are well understood by staff.Used to roll out new or changed processes, minimising need for explicit training Training material or sessions.  Not really. Dialogs are not a good approach for training users or for users who are not familiar with processes.

In summary, Business Process Flows and Dialogs are both equally powerful process enablement capabilities of Dynamics CRM. However, BPFs are more for guidance, multi session, tracking of process status. Business process flows provide the ability to show the current stage of a process allows user to rapidly see where a process is up to, for example reviewing a deal and seeing what has been completed to date. It can also be used to show related information easily e.g. the originating lead for an ongoing opportunity. BPFs are also good for ensuring key steps in a process aren’t missed providing consistent checklist for steps that need to be completed as part of the process. It also provides guidance through complex process flows and can be used for Training.

A Dynamics CRM Dialog on the other hand, is a single session Wizard Form, strictly controlled process which can be used in capturing completely linear information similar to forms but across multiple entities.

Hope this post gives some guidance on the difference in use of Dynamics CRM business Process Flows and Dialogs in a readable comparison table. Please note that this post has used content, text and information published as part of Microsoft’s Process Enablement White Paper (Download Here)