Removing welcome screen in MS CRM




Whenever user logs into the application you will see the welcome screen, may be it is difficult every time to close the screen, so we can remove this welcome screen by changing the configuration in Settings.


MS CRM-> Settings - > Administration->System Settings


Under General tab of System Settings we have option of Set whether users see welcome screen. We need to set this option as “NO” as shown in below screen





























You may like below posts

Improving MS CRM Performance

Performance Center in MS CRM 2013

date and time field behavior in MS CRM

Upsert in MSCRM

Locking mechanism in MS CRM

Ticker Symbol Field in MS CRM

Themes in MS CRM

Enable Tracing in MS CRM

Calculated Field in Dynamics CRM 2015


IME Mode in MS CRM


Audit User Acces in MS CRM





Monitoring the user access details are very crucial in any project. MS CRM provide us new feature called Audit User Access


Enabling Audit User Access:


MS CRM -> Settings -> Auditing->Global Audit Settings->


Under Auditing tab we need to check Start Auditing and Audit User Access fields.

















We can view the Audit summery under Audit Summary View as shown in below screen.

















You may like below posts

Improving MS CRM Performance

Performance Center in MS CRM 2013

date and time field behavior in MS CRM

Upsert in MSCRM

Locking mechanism in MS CRM

Ticker Symbol Field in MS CRM

Themes in MS CRM

Enable Tracing in MS CRM

Calculated Field in Dynamics CRM 2015


IME Mode in MS CRM

Duplicate detection rules in MS CRM

Maintaining the unique information in database is very crucial. Before, creating a record, we generally check whether same record is exist or not in database, if not we are allowing user to insert the record. For this we are generally writing custom code.

MS CRM has a feature called Duplicate detection. We can configure this feature by creating duplicate detection rules.

Scenario: I have a custom entity called State. And, I would like to create a duplicate detection rule on this entity such that same state name cannot be inserted into the system.



For this requirement, I have to create a duplicate detection rule first. Below is the navigation path to duplicate detection rules


MS CRM - > Settings - > Data Management -> Duplicate Detection Rules -> New

Screen will be looks like below






















Because of my duplicate detection on same entity, both Base Record Type and Matching Record Type pointing to same entity (in this case - State)


We can put condition whether Case sensitive should be consider while duplicate check by select or un-select “Case-sensitive” field. By default it is No. i.e it will not take Case-sensitive into consideration.


And, we can put condition whether duplicate detection rules should consider inactive records or not by selecting “Exclude inactive matching records” field. By default it is unselected. i.e it will consider inactive records.


And, when it comes to fields

I kept Name field criteria should be “Exact Match” and kept “Ignore Blank Values” as Selected. So it will looking for exact match with in Name fields. If it finds the field it will alert you with a screen which will contains all the matching records as shown in below screen



















Now, it is up to the user like

1. User will cancel the current record and edit

Action name is not appearing or available in Plugin Registration tool MS CRM

Actions are the new concepts we are having in latest versions of MS CRM. Beauty of actions are we can call actions from Javascript or plugin. For, this we need to register our action in Plugin Registration tool against the entity on which action should execute.

Sometime, action name will not be appear or available in Plug-in Registration tool, for this we need to re-open the plug-in registration tool i.e, close the tool and reopen it.





You may like below posts

Improving MS CRM Performance

Performance Center in MS CRM 2013

date and time field behavior in MS CRM

Upsert in MSCRM

Locking mechanism in MS CRM

Ticker Symbol Field in MS CRM

Themes in MS CRM

Enable Tracing in MS CRM

Calculated Field in Dynamics CRM 2015


IME Mode in MS CRM

Maxminum Fields in MS CRM

Javascript functions of Xrm.Page.data

There are certains functions in Xrm.Page.data context , which are very useful in implementation of CRM projects.

1. Xrm.Page.data.entity.getId();

this function will returns the value of primary key of current record.

2. Xrm.Page.data.entity.getPrimaryAttributeValue();

this function will returns the Primary Attribute values. In this context Primary attribute is nothing but "name" field. so, the above function will returns the whatever the value "name" field contains.

3. Xrm.Page.data.entity.getDataXml();

this function will returns an XML which contains all the attributes whose values are changes while saving the form.

4. Xrm.Page.data.entity.getEntityName();

this function will returns the entity name of the current record.

5. Xrm.Page.data.entity.getEntityReference();

this function will returns the lookup object of the current record like below example.

Xrm.LookupObject {entityType: "new_state", id: "{28AC4FCF-3B22-E511-80D9-3863BB349780}", name: "AP"}




You may like below posts

Improving MS CRM Performance

Performance Center in MS CRM 2013

date and time field behavior in MS CRM

Upsert in MSCRM

Locking mechanism in MS CRM

Ticker Symbol Field in MS CRM

Themes in MS CRM

Enable Tracing in MS CRM

Calculated Field in Dynamics CRM 2015

IME Mode in MS CRM

JavaScript Objects on Subgrid

These features are available in MS CRM 2015 online with update 1 and available in MS CRM 2016 both on-premises and online.

With latest version of MS CRM 2015 we are able to perform certain JavaScript functions against SubGrid. Below are list of useful objects which we can use in most of the requirements.

1.  Get EntityName of SubGrid:

Xrm.Page.getControl("States").getEntityName();

This function will returns the logical name of entity that we are using in SubGrid

2.  getGrid

Next property we can use for SubGrid is getGrid.

var subGridObject=Xrm.Page.getControl("States").getGrid();

This will returns Mscrm.XrmControlGridWrapper as object. This return object has important properties like

·         getRows()
·         getSelectedRows()
·         getTotalRecordCount()
·         getFilter()

3.  getViewSelector

 var subGridViewSelector=Xrm.Page.getControl("States").getViewSelector();

This JavaScript will return XrmViewSelectorWrapper object which contains the properties like

·         getCurrentView()
·         setCurrentView()
·         isVisible().

To retrieve the name of current view we can use below code snippet
Xrm.Page.getControl("States").getViewSelector().getCurrentView().name

4.  getRows()

var allRows = Xrm.Page.getControl("States").getGrid().getRows();
Returns collection of GridRow of SubGrid. We can access all SubGrid rows by iterating
the collection.
5.  getSelectedRows()

var selectedRows = Xrm.Page.getControl("States").getGrid().getSelectedRows();
    selectedRows.forEach(function (selectedRow, i) {
        var s = selectedRow.getData().getEntity().getEntityReference();
         var selectedRowGuid=s.id;
        var selectedRowName=s.name;
        var selectedRowEntityName=s.entityType;

    });

The above code snippets returns collection of selected rows and by iterating the collection we can retrieve the properties like 

·         id - Here id is nothing but Guid of record
·         name - Here name will return the value in name fields
·         entityType - This will return the logical name entity which is displaying as SubGrid

5.  getTotalRecordCount();

var recordsCount = Xrm.Page.getControl("Contacts").getGrid().getTotalRecordCount();



Featured Post

Improving MS CRM Performance

Performance on MS CRM is always a crucial thing and we may follow different ways to achieve the performance thing. Below is the one more a...