Nothing like real time requirements and here is another one. Customer walks in and puts in his requirement – “Users should not be able to select more than one record in the To field of CRM”. We suggested that while sending the email, we would put a validation which would stop the user from sending the email if more than one record is there. Well as everybody knows, more often than not, customer has his way and then we were back to the drawing boards trying to figure out how to do it.
For starters, To field in Dynamics allows you to select more than one record of multiple entity types which is obvious isn’t it. Below is the UI which allows you to do that.
Fortunately we found out a way. This is what we did.
- Created a solution. Added Email entity and the To field to it.
- Exported the solution
- Unzipped the solution and opened up customizations.xml file in a XML editor.
- Navigated to the area where To attribute is there in the XML file.
- Added the below in the XML file just above <displaynames> tag.
- Re-zipped the files. Imported the solution back and Publish all customizations.
- And now when you click the To field, this is what you get.
Hope this helps.
For training/ consulting, please write to us at email@example.com
Published at Fri, 04 May 2018 15:23:09 +0000
This is an old topic which is getting discussed since CRM 2011 or I think even before that. You must be wondering, why I am digging out history here. Well there has been so many blogs written about this.
So what’s the problem statement here?
Recently my customer wanted that whenever an email is being sent from Dynamics, it only needs to be sent through Queues. In other words in the From Lookup of the email, the user should not be able to select self or any other user from CRM.
So there are basically two steps to it. Since from is a multi-entity lookup, it shows both the user and queue when user tries to select.
So the first thing needed is to stop the user from selecting the user entity and the next is to stop the user from selecting any user record in from.
The other option, supported way, is to use the addCustomFilter. But with that, even though you stop from selecting a user, still the Entity selection of User/ Queue is available.
So wanna try something new? Let’s do this.
- Create a solution and add the Email entity to it. While adding the entity, to keep the solution simple, just add the from field to it (only for CRM 2016 and above. Prior versions, you are not luck to choose the options)
- Export the solution as Unmanaged
- Unzip the solution. You should see three file
- Open the Customization.xml in a XML editor of your choice and navigate to the section where the From field is present.
- You may find the unmodified=”1” in the attribute element as well as Email entity element. Remove the tags. Otherwise any changes you make here may not reflect in CRM once you import back.
- Scroll down a bit and you will see the section with the LookupType tag.
- Remove the entire element corresponding to 8 (Type code for user). Your final XML should just contain the one LookupType tag with Queue (2020).
- All set and done, select the three files and re-zip them
- Re-import the solution and publish all customizations.
- Now go back to your CRM email. Try to select “from”. And get the delight. Now entity selection is disabled and you are just left with selecting the queue.
Published at Wed, 02 May 2018 13:16:34 +0000