plugin vs workflow in microsoft dynamics crm

6
Plugin vs Workflow In Microsoft Dynamics CRM

Upload: ali-sharifi

Post on 07-Jan-2017

478 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Plugin vs Workflow in Microsoft Dynamics CRM

Plugin vs WorkflowIn Microsoft Dynamics CRM

Page 2: Plugin vs Workflow in Microsoft Dynamics CRM

It’s not an easy comparison:

Workflow PluginBackground AsynchronousReal-time Synchronous

On the other side we have Custom workflow activities which are extension point for workflows

Page 3: Plugin vs Workflow in Microsoft Dynamics CRM

Similarity:

• Both run on server• Both can run synchronous (on w3wp) or Asynchronous(on async service) • Both can be deployed on CRM online or on premise (except XAML WFs created in VS)• Both included in solution and transferable • Both can post data context to Azure service bus (azure aware)

Page 4: Plugin vs Workflow in Microsoft Dynamics CRM

Workflow PluginEnd user and non-developers to create process on the server Only done thorough coding by software engineer or developer

No special security access outside of CRM needed to create workflow(for real time workflow “Activate Real-time Processes” & “execute RTWF“ in security roles)

Only System admin or customizer with membership in deployment admin group can register a plugin

Can be written & extended without coding skills (unless extended with custom workflow activity)

Needs coding and developer skills

Workflows have to be associated to only a single entity (custom workflow activates can be used for all entities in different workflows)

One Plugin can be associated to all entities in the system and it’s not tied to one entity

Integrated with Windows workflow foundation 4 Coded in C# as .NET assemblies, which the main class inherited from IPlugin interface

Workflow can be start from dialogs or actions (also custom workflow activities )

Can not be used in CRM processes through web editor UI

Can run as child workflow No child plugin but they can call each other and trigger each other execution

Do not execute when offline (outlook) – only triggered online Both offline and online are supported

Works well for either short or log process with use of wait step in background workflow.Wait step is not available in real-time workflow.

If in sandbox the execution limit is 2min

Page 5: Plugin vs Workflow in Microsoft Dynamics CRM

Workflow PluginBuild in web editor through UI or Visual studio (XAML workflows in Visual Studio only on premise)

Developed in Visual studio and does not have UI

Stored as XAML in workflow entity only stored in database It’s a compiled C# code which will be registered to CRM server. It can be placed on disk, GAC or database

Can run on demand Something needs to triggers the plugin to run

Async workflow are queued to execute after core operation (post operation)Real-time similar to sync plugin

Async plugin can execute immediately after the core operationsync plugin can execute immediately after or before core operation

In CRM 2013 and after you can use real time Can be sync or async

Background workflow only runs in the context of workflow owner Sync or Async Can impersonate at different point during transcation

Real time workflow can be run as the owner of workflow or user who triggers it

Sync or Async Can impersonate at different point during transcation

Limited trigger points: assign, attribute change, create and delete 100s of them (plugin messages)

Page 6: Plugin vs Workflow in Microsoft Dynamics CRM

• Over the new releases of the CRM (2013 and later), workflows has become more powerful.

• Plugin offer deeper level of extensibility by tapping into CRM event execution pipeline

• Setting aside the differences, in lot of scenarios they can be used interchangeably.