AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.11.2011, 16:11   #1  
2rik is offline
2rik
Участник
 
20 / 10 (1) +
Регистрация: 15.11.2011
Узнать рабочий ли день у пользователя
Господа, добрый вечер.
Вот мучаюсь с такой проблемой в Dynamics CRM 2011.
Задача такова: нужно назначить пользователю некую задачу (кастомная сущность).
Перед этим нужно узнать - рабочий ли день у пользователя, на который мы собираемся назначить задачу, если работчий - то время - во сколько он начинает работать.

Код:
IQueryable<SystemUser> user = (from u in orgContext.CreateQuery<SystemUser>()
                                           where (u.Id == UserId)
                                           select new SystemUser { Id = u.Id });
Вытягиваю нужного пользователя. Но как дальше узнать его календарь. В списке сущностей в "Настройка" сущности "календарь", или же "рабочие часы" я не вижу.
Подскажите, пожалуйста, как быть.

Заранее благодарен.
Старый 18.11.2011, 17:17   #2  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Я решал подобную задачу скриптом формы: http://www.axforum.info/forums/blog.php?b=49
Суть метода заключается в использовании QueryScheduleRequest. Так же рекомендую почитать SDK: http://msdn.microsoft.com/en-us/library/gg327841.aspx
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
За это сообщение автора поблагодарили: 2rik (1).
Старый 18.11.2011, 17:28   #3  
2rik is offline
2rik
Участник
 
20 / 10 (1) +
Регистрация: 15.11.2011
Спасибо,
Вот только не совсем могу разобраться

Код:
WhoAmIRequest userRequest = new WhoAmIRequest();
                    WhoAmIResponse userResponse = (WhoAmIResponse)_serviceProxy.Execute(userRequest);

                    // Retrieve the schedule of the current user.                                              
                    QueryScheduleRequest scheduleRequest = new QueryScheduleRequest
                    {
                        ResourceId = userResponse.UserId,
                        Start = DateTime.Now,
                        End = DateTime.Today.AddDays(7),
                        TimeCodes = new TimeCode[] { TimeCode.Available }
                    };
                    QueryScheduleResponse scheduleResponse = (QueryScheduleResponse)_serviceProxy.Execute(scheduleRequest);

                    // Verify if some data is returned for the availability of the current user
                    if (scheduleResponse.TimeInfos.Length > 0)
                    {
                        Console.WriteLine("Successfully queried the schedule of the current user.");
                    }
Как мне из scheduleResponse узнать - рабочий ли день, который я передал функции в виде параметра ?

Спасибо
Старый 18.11.2011, 18:12   #4  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Читайте SDK! В response содержится коллекция объектов TimeInfo, где содержатся диапазоны свободного времени пользователя.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 29.11.2011, 14:00   #5  
2rik is offline
2rik
Участник
 
20 / 10 (1) +
Регистрация: 15.11.2011
Спасибо, господа.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ошибка при создании пользователя CRM Буденый Dynamics CRM: Администрирование 11 14.07.2010 16:30
Как узнать статус пользователя в домене и как блокировать пользовател в CRM SuBwooFer Dynamics CRM: Разработка 5 23.12.2009 22:40
Ошибка после изменениями имени пользователя в AD sergeyjb Dynamics CRM: Администрирование 20 29.10.2008 18:27
Как не ограничивать рабочий день? Bondonello Dynamics CRM: Администрирование 11 29.09.2008 18:52
Создание пользователя через SDK Tigra Dynamics CRM: Разработка 1 18.10.2005 18:27

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 01:21.