Morning all,
Is it possible to set default personal options for all users in a deployment? Specifically I'm looking to change the default 'Track email messages' and 'Create records' fields.
I've found plenty of articles online regarding changing them for each person, and I'm aware of and use XrmToolBox for it's User Settings Utility.
I've selected CRM online as the filter however I would be interested in answers for Dynamics 365 on-premise as well.
Thank you,
Shaun
*This post is locked for comments
Hy Jon, the same way i have applied this code in my plugin on Create message(Post-Operation) of systemuser entity but iam getting error when creating user
Exception Message: usersettings With Id = c8afd388-e471-eb11-a812-000d3a151567 Does Not Exist
ErrorCode: -2147220891
HexErrorCode: 0x80040265
ErrorDetails:
ApiExceptionSourceKey: Plugin/SetUserPersonalSettings.SetUserPersonalSettings, SetUserPersonalSettings, Version=1.0.0.0, Culture=neutral, PublicKeyToken=fa59fef0d5af8bba
ApiStepKey: 0e33c685-dd70-eb11-a812-000d3a151567
ApiDepthKey: 1
ApiActivityIdKey: c27ac0bc-12ef-4b4e-9658-78cc26cec13a
ApiPluginSolutionNameKey: Active
ApiStepSolutionNameKey: Active
ApiExceptionCategory: ClientError
ApiExceptionMesageName: IsvAborted
ApiExceptionHttpStatusCode: 400
HelpLink: go.microsoft.com/.../
TraceText:
[SetUserPersonalSettings: SetUserPersonalSettings.SetUserPersonalSettings]
[0e33c685-dd70-eb11-a812-000d3a151567: SetUserPersonalSettings.SetUserPersonalSettings: Create of systemuser]
flag 1Settings Updated on Create message c8afd388-e471-eb11-a812-000d3a151567
Thanks Jon, I hadn't realised user personal settings could be set in that manner, that's a great idea.
It's a shame there's not more of an OOTB method for doing this.
Hi, I have not tested it but maybe you can write a plugin that triggers on create for systemusers.
Check out these links what attribute are available for update => UserSettings Entity Reference, UserSettings EntityType
Then you could use the User Settings Utility to change the settings for all current users, but the plugin should catch all users that get created onwards.
//Note this hasn't been tested at all, just a starting theory
private void GetSystemUsersSettings(IOrganizationService service, ITracingService tracing) {
//Change the columnset to fetch only the fields you need Entity userSettings = service.Retrieve("usersettings", new Guid("YourSystemUserGuid"), new ColumnSet(true)); userSettings["autocreatecontactonpromote"] = 0; userSettings["incomingemailfilteringmethod"] = new OptionSetValue(1);
service.Update(userSettings); }
Hope this can help you somehow
I am working in on-premise and using XRMToolBox tool I can do all the stuffs without any issue .
Sorry I realise I've potentially not been very clear here, I'm aware of XrmToolbox and it's great for settings the current personal settings. what I'm looking for however is a slightly more permanent solution so that when a new user is created they default to set values. Basically I want to change the system default for personal settings if that makes sense?
I'll take a look at OrgDBOrgSettings as it's been a good while since I last used it.
I'm honestly not sure if it's still provided with the SDK/install on-prem with 365, but there's a tool called OrgDBOrgSettings which allows some bulk settings, for instance "sent mail tracking" and others. But as others have said, XrmToolBox should work for on-prem as well?
The article says it support 2016 (and even Online(!)), so could be worth checking out although I have no recent experience with it myself: support.microsoft.com/.../orgdborgsettings-tool-for-microsoft-dynamics-crm
Hi Shaun,
Are you facing any issue ? You can use XrmToolBox User Settings Utility for on-premise as well.
André Arnaud de Cal...
292,031
Super User 2025 Season 1
Martin Dráb
230,868
Most Valuable Professional
nmaenpaa
101,156