Difference between Asynchronous Plugin and Workflows in MSCRM


So many times I have been asked a question from my colleagues, 
What is the difference between Async Plugin and Workflow, Since both are Asynchronous But What is the actual difference between them and When should i use Workflow and When should I use Async Plugin ?

Answer :
My Answer is always "Depends", the right approach is determined by the Characteristics of the task that you are trying to accomplish.


 Following Matrix show the difference between the same :



          Requirement

Use Plug-in

Use Workflow

Needs a synchronous action to happen before or after an event occurs
Or
Need to perform a task that has to completed within 2 Sec




Yes


              No

 The logic needs to be executed while offline

Yes

No
Needs elevation of privileges (impersonation)
Or
Perform data operations on behalf of another system user



Yes


No
Needs to execute on events other than assign, create, update, set state

Yes

No
The process/logic may take a long time to complete or will be a persistent process (multiple long running steps)

No

Yes

End users will need to modify the process logic

            No

Yes
                                         Child sub processes will be triggered

No

Yes

Comments

Popular posts from this blog

Asp.net- Encrypt and Decrypt connection strings in web.config file

CRM Automate build Solution using Powershell commands

Access the fields on Quick View Form – Dynamics CRM 2015