Posts

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 ...

Develop and Debug in Sandbox Isolation Mode (its faster)

If you ever want your plug-ins to work on CRM Online then you need to make sure you're plug-ins work in sandbox isolation mode.  And you will be surprised to learn  what works and doesnt work  when in sandbox mode.  These are just a few of the things I've run into that don't work in sandboxed plug-ins Calling a web-service using  IP address or localhost . Creating the WCF service proxy class by calling its constructor. CRM LINQ queries   Calling a web service using default credentials The best way to avoid being surprised by any of these issues is to make sure you do all development in testing in Sandbox mode.  You don't want to be surprised when you deploy your plug-in to CRM Online and find out you're using some .NET function that isn't supported. Also,   it is now actually easier to debug plug-ins when they are sand-boxed.  When  registering a plug-in , you have three options of where the plug-in can be stored. On Disk - T...

Create a Custom Workflow Activity...

Image
Required Software and Assemblies To develop Windows Workflow Foundation 4 custom activities, you must develop them on Microsoft .NET Framework 4. If you plan to register your custom workflow activities with Microsoft Dynamics CRM Online, you must build them using the Microsoft .NET Framework 4  PU3  (platform update 3) or a later version, such as .NET 4.5. The following assemblies must be added as references in your project. They can be found in the  SDK\Bin  folder in Microsoft Dynamics CRM SDK. Microsoft.Xrm.Sdk.dll Microsoft.Xrm.Sdk.Workflow.dll Use the CodeActivity Workflow Base Class To create a custom workflow activity, create a class that inherits from the  CodeActivity  workflow base class. This class is available in the  System.Activities namespace. Activities that inherit from the  CodeActivity  class can override the  Execute  method to produce custom functionality. To create a custom activity...

Field Level Security in CRM 2011

Image
CRM 2011 will now allow to decide permissions not just at the record level but also “Field Level”. This means that you can decide if a user has the permission to that attribute at the time of Create or Update or simply view the data for that attribute. Currently, this feature is only available for the custom attributes that you add. They are not available for the system attributes. When you create a new attribute you can enable “Field Level Security” for that attribute. Once the attribute has been defined for Field Security, it becomes available for defining the security levels for different roles. Similar to the Security roles, you can now create Field Security Profiles The profile lists out all the attributes setup for Field Security and you can edit the permission to Read, Update and Create. Note any security that you apply here is not just available/applicable on the CRM forms, but also programmatically. So if you try to edit a custom attribute of an entity for which...

Synchronous vs. Asynchronous

Synchronous In general, synchronous (pronounced SIHN-kro-nuhs, from Greek syn-, meaning "with," and chronos, meaning "time") is an adjective describing objects or events that are coordinated in time. In information technology, the term has several different usages. In other words a process occurring at the same time or at the same rate or with a regular or predictable time relationship or sequence. Asynchronous  In general, asynchronous (pronounced ay-SIHN-kro-nuhs, from Greek asyn-, meaning "not with," and chronos, meaning "time") is an adjective describing objects or events that are not coordinated in time. In information technology, the term has several different usages. In other words a process whose execution can proceed independently, "in the background". Other processes may be started before the asynchronous process has finished. In computer programs, asynchronous operation means that a process operates independently of oth...
Whenever you install MSCRM what all databases get created? Answer: MSCRM_Config and  MSCRM _orgname.