Knowledge Sharing Power Platform Vocabularly

One of my favorite ways to learn is to share knowledge. I find that all of the other perspectives I get from this exercise really help me shift and refine what I have learned. 

In the last two years I have been under the fire house learning. It is both exciting, amazing and daunting when we consider how much more there is always to learn. It is also a twist for those of us who have years of experience. The experience makes a huge difference, but it also always has to be continually refined.

One of the first major learning tips is to get your head around the vocabulary quickly. It has served me well to think about the following.

Microsoft EcoSystem with Power Platform

The Power Platform, this is really an evolution to getting closer and closer to using the entire Microsoft Stack of awesome. The long loved deep integration to Office is now 100 times better AND there is also the deep integration to Azure and many of the new Azure functions. 

PowerApp
Microsoft Dynamics 365 "Apps"
are all Model Driven Power Apps on the Power Platform. 

Flow

Power Automate (Flow) The ability to automate, respond and receive responses and an alignment/replacement or stepping stone to both work flows and logic apps and you can learn more here.

Power BI with Name
Power BI Much loved and amazing reporting and business intelligence and analytics and you can learn more here

 

Power Virtual with Name

Power Virtual Bots, Not only bots, but Robotic Process Automation (RPA) and you can learn more here and here.


One Why | Model Driven Apps | Configurable Role Based Entitlement Security | Who gets to access What

1) Business Unit Hierarchy | The ability to divide the data into isolated silos with bridges of controlled access aligned to the defined.(Security + Performance)

2) Out of the Box Entities | The configuration of entity permissions when the entity is doing backend functionality for the system and not something such as Account, Contact....

3) Management Hierarchy | The ability to give permissions to a manager based on the permissions and data and functions that their child team member has access to.

4) Field Level Security | The ability to mask, encrypt and control who can see a specific field within an entity

5) Entity Security | The ability to control who can Create, Update, Read, Delete, Append, Append to and Share specific out of the box entities or custom entities by Organization, Business Unit, Business Unit Hierarchy or User Ownership. 

6) Flow Context | The ability to control what permissions a flow runs under, either Contextual User or a Defined User such as a system account.

AND there is more so when considering "Building Your Own", consider if you want to recreate the concept of Role Based Entitlement 

  


Power Platform - Model App Configuration

I was doing a little bit of work this weekend and I could not figure out what happened to BULK EDIT in some of my entities. Given that we are always getting new updates I thought that perhaps it was a feature in transition. 

After a little more thinking I realized what happened.

When you turn on EDITABLE GRIDS, you loose the more traditional BULK EDIT. 

 


VOCABULARY, It matters -> Dynamics 365 Sales, Dynamics 365 Service, Dynamics 365 Marketing these are all Power Apps.

One of the huge transitions for the Dynamics 365 CRM world is a shift in vocabulary and terminology and aligning what the experienced resources know (Dynamics 365 CRM or Dynamics 365 CE) with all the new buzz and development options.

One way to think of this shift is that all of the modules in Microsoft Dynamics 365 Customer Engagement are "potentially" their own Power App. So it is true you can combine sales, service, marketing, talent, etc. into one app, but basically the thinking trend is that each module is a Power App.

The other way that I have found that people quickly grasp the concept is to mention MOBILE and get them in a mobile mindset. I can then say, you can create any number of mobile apps to access your Dynamics 365 Customer Engagement data. Each mobile app is a PowerApp. 

And as such the Power Platform offers the potential for hundreds of Power Apps, as well as other complimentary technologies such as Power BI, Power Automate and Power Virtual.  


Dynamics 365 Relationship Sales and LinkedIn's Sales Navigator

One of the huge shifts and benefits for a sales person is when technology gets aligned so that keeping data current falls to the most logical location. Consider for instances a prospects name, company and job title. A shift is when this information is kept current by that specific prospect rather than the sales person following that prospect. The prospect updates their name, role and company information because it is beneficial to the work that they are doing. The sales person who has a relationship with this person, or who is following them, can then be a straight consumer of data managed by a logical source.

Now this isn't perfect .. not everyone updates their information even with the power of a product such as LinkedIn and Sales Navigator so technology still needs to take another step in validating that the data is current. A futuristic option on this will be when AI technologies can tap into larger or the largest data repositories and filter out what they need to validate a person's name, role and company. If we take this one step further we add address, telephone numbers, historical information.

Data exists, we can purchase this data, but we are not quite to the point where the data on a person is 100% transparent when we need it AND there are many reasons why this also sends chills up many a spine. 

If we circle back to what is happening in the world of Microsoft Dynamics 365 for Sales we find that Relationship Sales is a combination of the knowledge within LinkedIn and the Power of the Dynamics 365 platform. 

Unifying the best of both worlds to further empower the business sales teams. It also uses AI Technology in addition to the combination of data. This takes this one step further.

Take a Peek 


Vocabulary! Model-Driven vs. Canvas in the world of PowerApps

I had the opportunity to answer a bunch of questions today and PowerApps ... Canvas Apps vs. Model-Driven Apps was key on the agenda. 

In my mind I think .. PowerApps = Dynamics or Model-Driven Apps and  Microsoft 365 + = CanvasApps, but alas I am not quite right. PowerApps actual applies to both. 

What I need to get straight in my head is Model-Driven apps are all the apps I have already built as part of a Dynamics 365 solution (or project). This includes creating apps as a "new" app or modifying an existing app that comes with one of the Microsoft Solutions. (Such as the Sales App). 

The next piece too ingrain in this thick skull is CANVAS apps. I have created a canvas app, but I have not had the chance to create one for an actual customer project. This little app starts from a slightly different interface and brings with it new. It is not that the new is difficult, it is just new. 

Others explain it as either starting with the "interface" (Canvas) vs. starting with the "data" (Model-Driven) AND if you want to watch a great little video on the subject this video is well worth the time to watch. Check this out from PragmaticWorks

Note: Please forgive me Andrew!

In my next post we will tackle other new vocabulary such as the Common Data Service (CDS) vs. the Common Data Model (CDM). 


Microsoft Dynamics 365 for Customer Engagement - Search

The following table provides a brief comparison of the four available search options in Microsoft Dynamics 365 for CE. Microsoft often provides many options for achieving the same goal (just look at all you can do with Outlook!)

The link to this information and to read more https://docs.microsoft.com/en-us/dynamics365/customer-engagement/basics/search-and-find-header

Functionality

Relevance Search (Online Only, the power of Azure)

Full-text Quick Find (also called Categorized Search)

Quick Find

Advanced Find

Enabled by default?

No. An administrator must manually enable it under system settings.

No. An administrator must manually enable it under system settings.

Yes

Yes

Single-entity search scope

Not available in an entity grid. You can filter the search results by an entity on the results page.

Available in an entity grid.

Available in an entity grid.

Available in an entity grid.

Multi-entity search scope

There is no maximum limit on the number of entities you can search. Note: While there is no maximum limit on the number of entities you can search, the Record Type filter shows data for only 10 entities.

Searches up to 10 entities, grouped by an entity.

Searches up to 10 entities, grouped by an entity.

Multi-entity search not available.

Search behavior

Finds matches to any word in the search term in any field in the entity.

Finds matches to all words in the search term in one field in an entity; however, the words can be matched in any order in the field.

Finds matches as in a SQL query with “Like” clauses. You have to use the wildcard characters in the search term to search within a string. All matches must be an exact match to the search term.

Query builder where you can define search criteria for the selected record type. Can also be used to prepare data for export to Office Excel so that you analyze, summarize, or aggregate data, or create PivotTables to view your data from different perspectives.

Searchable fields

Text fields like Single Line of Text, Multiple Lines of Text, Lookups, and Option Sets. Doesn't support searching in fields of Numeric or Date data type.

All searchable fields.

All searchable fields.

All searchable fields.

Search results

Returns the search results in order of their relevance, in a single list.

For single-entity, returns the search results in an entity grid. For multi-entity, returns the search results grouped by categories, such as accounts, contacts, or leads.

For single-entity, returns the search results in an entity grid. For multi-entity, returns the search results grouped by categories, such as accounts, contacts, or leads.

Returns search results of the selected record type with the columns you have specified, in the sort order you have configured.

Wildcards (*)

Trailing wildcard supported for word completion.

Leading wildcard supported. Trailing wildcard added by default.

Leading wildcard supported. Trailing wildcard added by default.

Not supported.

 


Microsoft Dynamics 365 Portals with the awesome, unicorn loving, Colin and the incredible, Griffin loving, Robert Bailey

Tips and Thoughts

1) Is it the right technology for the need?

2) Have a solid design and a long term iteration and maintenance plan

3) Never forget about the customers, customer who might be using the portal.

4) Consider Identity and Authentication for the customers, customer, but also for portal versus Dynamics 365. 

5) Golden Keys: The right development team, the right methodology, the right relationships with the customers/users and their continued involving involvement. 

6) Graphics and Web Design are part of portal projects, pictures can communicate 1000 of the wrong words. 

7) Bring Joy

8) If Multilingual is a need, do it as part of PHASE I. It is harder to  add additional languages in later phases. 

 


In the world of Dynamics 365, configuration/customization/extension does not equal the old world assumptions of "custom software"

When thinking of the experiences or backgrounds needed for any specific project, don't let assumptions trip you up. These terms can help with your communications. 

 

 

Configuration – knowing of and Answering all the questions related to setting up the system for a specific customer. These include all the options under SETTINGs including but not limited to items such as turning on auditing, configuring number formats, turning on relevance search, setting up duplicate detection, configuring territories, setting fiscal year end and more. This is done on every Dynamics 365 project (hopefully) and there are more than 50 questions.

 

Customization – A functional consultants power to configure the system for specific business models such as renaming entities, adding entities, adding system charts, lists/views, adding workflows, creating business rules, formatting the data entry fields and forms, creating PowerApps, setting up relationships between entities and more. The term customization often waffles between configuration and extensions depending on who is using the term.

 

Extensions – extending the functionality of the system using developer resources and many, many, many different code options (.Net, C++, JavaScript, AngularJS, and about 30 more) and includes items such as creating an integration layer with queuing to manage external data integration (although this is shifting to configuration), adding new advanced features, adding advanced automation, extracting/manipulating and resaving data from numerous entities, onSave/onChange/onLoad have the data jump through hoops and blink, etc. The platform is built to be extended and extensions upgrade as they are built using a predefined best practices Software developer kit (SDK) from Microsoft.

 

The world of technology is deep and wonderful.