|  | 
|  20.11.2015, 00:45 | #1 | 
| Чайный пьяница | 
			
			В сущности usersettings есть поле defaultdashboardid. Предполагаю, что когда юзер кликает "Set as default" в UI - выполняется заполнение данного поля выбранный ДБ. Чтобы не писать и массово обновить значение я бы реклмендовал посмотреть в сторону XrmToolbox - возможно в нём уже есть нужный плагин. Если же нет, то написать код, который выполняет обновление всех настроек - не очень и сложно.
		 
				__________________ Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit | 
|  | |
| За это сообщение автора поблагодарили: Ion (1). | |
|  20.11.2015, 18:02 | #2 | 
| Участник | Цитата: 
		
			Сообщение от 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). | |
|  | 
| 
 |