A Guide to Extending Dynamics 365 and Power Apps

Leave a comment

Below is a summary of the areas you can extend of Dynamics 365 and Power Apps.

AreaPurposeNotes
ProcessesGeneral term for allowing an organization to create processes specific to their business. These are created through the Dynamics 365 user interface, and include: Actions, Business Process Flows, Dialogs and Workflows. More details on each type below.Access under Settings->Processes
WorkflowsA type of process created through the Dynamics 365 user interface.

Links:

Choose the Entity (cannot be None Global), how it starts (record created, status changed, assigned, fields change, deleted). Run in background, on-demand, or child process.

Has stages, steps, check conditions, perform actions, create/update/assign records, change status, start child workflow.

The scope of a workflow is User, Business Unit, Parent: Child Business Unit and Organization.

An example here is sending an email if a case status has changed.

Custom Workflow ActivitiesLinks:

Custom Workflow Activities, or Workflow Extensions, are custom code written in Visual Studio that we can call from Workflows. They are added as a step to Workflows in the Process designer.
ActionsLinks:

Actions can apply to a specific entity or to None (global)

You can call actions from: JavaScript, Plugins, calling web services, workflows, and dialogs

Example: Define an “Escalate” verb that creates, updates and assigns an entity in one step

Business Process FlowsHelp records through a particular business process, and also help users in creating and updating these records.This is the bar at the top of a record with different stages.

These can be restricted by Security Roles.

They can call workflows.

DialogsGuides users through a set of questions and performs actions based on their answersRuns on demand from the entity record. Can call child dialogs, create records, create/update/assign records, send emails, check conditions.
PluginsCreated by developers in Visual Studio

Links:

Uses SDK assemblies and are registered using the plugin registration tool. Can be registered on events such as CRUD, assign, retrievemultiple etc.

Can be registered for pre-validation, pre-operation and post-operation. Can be synchronous and asynchronous.

JavaScriptUsed for client-side customizationsCan be triggered on Form OnLoad, Form OnSave, Field OnChange Event Handler.

Several helper functions available to interact with Dynamics 365 forms and controls.

Business RulesConditional logic on forms that runs when fields changeUsed to set field values (to another field or set value), clear fields, set field level requirements, show/hide/enable/disable field, validate data and show error messages, and make recommendations.

They run when the form loads or fields change.

Calculated FieldsSets field values based on conditions and formulas based on other fieldsImplemented as a field type. Logic runs based on field logic.

Used to add fields together, etc.

Reporting

AreaPurposeNotes
ViewsA way to see information regarding an entityCan share personal views with Users and Teams. Privileges include read, write (edit the view), delete (the view), append, assign (ownership to someone else), share (with someone else). Once shared they will see it under My Views
Filtered ViewsSQL viewsThese are SQL views for on-premise Dynamics 365. Can be slow to run as they include heavy business logic such as user permissions
Report WizardBuild quick reports in Dynamics 365 interfaceFor a record type, add columns, groupings, specify chart or table, or link to web page.
SSRS ReportsBuild reports using Visual StudioUsing Report Authoring Extensions, create FetchXML based reports. Or, connect to SQL Server and use FilteredViews to retrieve the data for SQL based reports that are uploaded to Dynamics 365

 

THANKS FOR READING. BEFORE YOU LEAVE, I NEED YOUR HELP.
 

I AM SPENDING MORE TIME THESE DAYS CREATING YOUTUBE VIDEOS TO HELP PEOPLE LEARN THE MICROSOFT POWER PLATFORM.

IF YOU WOULD LIKE TO SEE HOW I BUILD APPS, OR FIND SOMETHING USEFUL READING MY BLOG, I WOULD REALLY APPRECIATE YOU SUBSCRIBING TO MY YOUTUBE CHANNEL.

THANK YOU, AND LET'S KEEP LEARNING TOGETHER.

CARL

https://www.youtube.com/carldesouza

 

ABOUT CARL DE SOUZA

Carl de Souza is a developer and architect focusing on Microsoft Dynamics 365, Power BI, Azure, and AI.

carldesouza.comLinkedIn Twitter | YouTube

 

Leave a Reply

Your email address will not be published. Required fields are marked *