Posts

When to use plug-ins vs. workflow?

As a developer who is interested in extending or customizing Microsoft Dynamics CRM, you can choose from several methods to perform your tasks. In addition to adding client-side JavaScript code to a form or adding custom ASP.NET pages, you can write a plug-in or create a custom workflow by using the web interface that calls a custom workflow activity. How do you decide when to use a plug-in and when to use a workflow? The technology that you use depends on the task that you have to perform and who will author the customization. For example, you must use a synchronous plug-in real-time workflow if you want to execute custom code immediately before or after the core platform operation executes and before the result of the operation is returned from the platform. You cannot use an asynchronous workflow or asynchronous plug-in in this situation because they are queued to execute after the core operation finishes executing. Therefore, you cannot predict when they will run. If you wan...

REST VS SOAP

REST is a software architecture style consisting of guidelines and best practices for creating a scalable web services. REST is a coordinated set of constraints applied to the design of components in a distributed hypermedia system that can lead to a more performant and maintainable architecture. REST has gained widespread acceptance across the Web as a simpler alternative to SOAP and WSDL-based Web services. RESTful systems typically, but not always, communicate over the Hypertext Transfer Protocol with the same HTTP verbs (GET, POST, PUT, DELETE, etc.) used by web browsers to retrieve web pages and send data to remote servers.”  SOAP “SOAP, originally an acronym for Simple Object Access Protocol, is a protocol specification for exchanging structured information in the implementation of web services in computer networks. It uses XML Information Set for its message format, and relies on other application layer protocols, most notably Hypertext Transfer Protocol (HTTP) or Simple Ma...

Whenever you install MSCRM what all user groups get created in Active Directory?

User Group All Microsoft CRM. This group is updated automatically as users are added and removed from Microsoft CRM. ReportingGroupA group contains all users within Microsoft CRM. This group is updated as users are added to Microsoft CRM. Users in this group have read-only access to the filtered views in the Microsoft CRM database. PrivUserGroupPrivileged Microsoft CRM user group for special administrative functions.  SQLAccessGroupA group that contains Microsoft CRM ASP.NET account and other service accounts. Members in this group have full access to the Microsoft CRM database and this group is used by the Microsoft CRM platform layer. End users should never be added to this group.

Workflows VS Plug-in ?

Image
Requirement Plug-in Workflow Needs a synchronous action to happen before or after an event occurs. The same piece of logic will be executed for different events and possibly on different entities. The logic needs to be executed while offline. Needs elevation of privileges (impersonation) Needs to execute on events other than assign, create, update, and set state The process/logic may take a long time to complete or will be a persistent process (multiple long-running steps). Need an asynchronous action. End users will need to modify the process logic Child subprocesses will be triggered.

Difference between CRM Discovery Service and CRM Metadata service?

CRM service - when we need ORG related information like ORG name, Properties, CRM service path for this ORG -- then we use CRM discovery service. This is only to get the ORG related information Metadata service - we use this when we need to interact with the CRM records – create, update or delete anything-- it is very specific to the CRM records. When we need to interact with the CRM entity and attribute - like create an entity (not record) or attribute -- add a value to pick list-- retrieve the pick list value retrieve the entity properties-- attribute property and all we need Meta data service.

How to use Plugin Profiler to debug Plugins with Plugin Registration Tool in CRM 2011/2013

Image
You are a Dynamics CRM 2011/2013 Developer and you need to develop some plugnis to perform some synchronous/asynchronous operations that need realy a plugin development. You develop your plugins on Visual Studio and you build. You build succesfully your plugins assembly and all seems fine. You use Plugin Registration Tool (PRT) to register your plugin, steps and images. And Now you are doing your test on your records to verify if your plugins works fine or not, and like for me, nothing works from the first time :) So you had a  Busines Process Error  and you want to know why ? It means, you should debug your code. And There is three ways to do it :  -  First way :  If you are using a OnPremise version of Dynamics CRM 2011/2013 and you have your own development server with Visual Studio: * you should copy your code in your server * open it with Visual Studio * put your breakpoints * attach w3p process * And debug When it's ok you can copy yo...

Connection In Ms CRM 2011

Connections Connections  provide a flexible way to connect and describe the relationships between any two entity records in the system. The records in the association can be assigned particular roles that help define the purpose of the relationship. Connections provide the following capabilities: An easy and flexible way to make a connection between two records of most Microsoft Dynamics CRM entity types. All customizable business and custom entities can be enabled for connections. An option to add useful information, such as a description of the connection and the duration. The ability to create connection roles that describe the relationship between two records, such as a relationship between a doctor and a patient, or a manager and an employee. A quick way to create multiple connections and roles for a particular record. For example, a contact may have many relationships with other contacts, accounts, or contracts. In each relationship a contact may play a ...