![]() |
#1 |
Участник
|
Default dashboard crm 2015 online for all users
Всем привет!
Как установить dashboard для всех пользователей? Есть вариант с правкой customazation.xml, установить атрибут IsDefault = true. Выгрузил решение, открыл - там и так тру стоить. Вариант set as default не предлагать ![]() |
|
![]() |
#2 |
Чайный пьяница
|
В сущности usersettings есть поле defaultdashboardid. Предполагаю, что когда юзер кликает "Set as default" в UI - выполняется заполнение данного поля выбранный ДБ. Чтобы не писать и массово обновить значение я бы реклмендовал посмотреть в сторону XrmToolbox - возможно в нём уже есть нужный плагин. Если же нет, то написать код, который выполняет обновление всех настроек - не очень и сложно.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
За это сообщение автора поблагодарили: Ion (1). |
![]() |
#3 |
Участник
|
Цитата:
Сообщение от a33ik
![]() В сущности usersettings есть поле defaultdashboardid. Предполагаю, что когда юзер кликает "Set as default" в UI - выполняется заполнение данного поля выбранный ДБ. Чтобы не писать и массово обновить значение я бы реклмендовал посмотреть в сторону XrmToolbox - возможно в нём уже есть нужный плагин. Если же нет, то написать код, который выполняет обновление всех настроек - не очень и сложно.
Может кому-то надо будет X++: namespace CrmConsoleApp { class Program { static void Main(string[] args) { var service = CrmCon.GetCrmService(); Guid _dashboardId = new Guid("47c8063b-3a8d-e511-80ec-3863bb34ed18"); QueryExpression userSettingsQuery = new QueryExpression("usersettings"); userSettingsQuery.ColumnSet.AddColumns("defaultdashboardid", "systemuserid"); //userSettingsQuery.Criteria.AddCondition("defaultdashboardid", ConditionOperator.Equal, _dashboardId); EntityCollection userSettings = service.RetrieveMultiple(userSettingsQuery); if (userSettings.Entities.Count > 0) { for (int i = 0; i < userSettings.Entities.Count; i++) { var userSettingId = (Guid)userSettings.Entities[i]["systemuserid"]; UpdateSystemSettings(userSettingId, _dashboardId, service); } } Console.ReadKey(); } public static void UpdateSystemSettings (Guid userSettingId, Guid defaultdashboardid, IOrganizationService service) { Entity userSetting = new Entity(); userSetting.LogicalName = "usersettings"; userSetting.Id = userSettingId; userSetting.Attributes.Add("defaultdashboardid", defaultdashboardid); service.Update(userSetting); } } } |
|
|
За это сообщение автора поблагодарили: a33ik (1), Quodnon (1). |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|