Impersonation is used in Microsoft Dynamics CRM platform to execute the business logic on behalf of a system user, this includes the custom code execution governed by Microsoft Dynamics CRM security privileges of the impersonated user. Pre-entity and Post-entity images as passed to plug-ins as the execution context on behalf of the impersonated user.
Plug-ins not executed by sandbox or asynchronous service execute under CRMAppPool Identity service account. By default, CRMAppPool uses Network Service account but it can be changed by the administrator. If it is changed then administrator will need to add this identity account to thePrivUserGroup in the Active Directory.
Continue reading “Impersonation in Plug-ins”
Some times we need to insert / update bulk data in to CRM. By traditional data upsert takes too much time, so MS CRM introduced bulk upsert.
Sending a large number of individual organization message requests over a network, as you would do in a bulk data import operation, is affected by network performance. For improved performance, Microsoft Dynamics CRM support batching of requests into a single web service method call. Continue reading “Bulk insert / update by SDK for MS CRM”
In MS CRM, we can apply security role to entity form. To enable security role for form just click on ‘Enable Security role’ (ref below screenshot), it will give you to select security role from the list.
But what will happen when a user wont have any security role assigned which have access to form. in such condition that user will see only ‘Fallback’ form.
Note: But if user has not access on entity then he wont be able to see any form or data
For each entity, at least one fallback form is available.
MS CRM 2013 provided auto save functionality. CRM will save your changes automatically by each 30 sec. But sometime you need to remove this feature from CRM.
To do that go to ‘System Settings’ and uncheck the enable auto save for all forms
Many times we need to retrieve, insert or update data from dot net application, in the application we create CRM object many times, even last created CRM object is not yet destroyed. But because of it we consume more recourses, result of it performance get impacted. Thus, we have use previously created object if it exist. Also we should be create CRM object each time we need it, instead check for existing object.
Here is the example of it, in the following code I used singleton pattern to create CRM service object, when we call it will return me previously created object and if not found then new object will be created. Continue reading “CRM Helper”