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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.02.2012, 16:47   #1  
smlrus is offline
smlrus
Участник
 
19 / 10 (1) +
Регистрация: 07.12.2011
QueryByAttribute вернуть записи с сегодняшней датой DateTime
Здравствуйте, подскажите пожалуйста как сделать запрос, чтобы вернуть записи с сегодняшней датой. Так не работает, ищу в интернете, пока результатов не дало.

scheduledstart - это дата начала (она в формате 30.11.2011 10:33:00)
DateTime.Now.Date - сегодняшняя дата (она в формате 30.11.2011 00:00:00)

Код:
            QueryByAttribute qever = new QueryByAttribute();
            qever.Attributes.AddRange(new string[] { "scheduledstart" });
            qever.ColumnSet = new ColumnSet(new string[] { "phr_invid" });
            qever.EntityName = "serviceappointment";
            qever.Values.AddRange(new object[] { DateTime.Now.Date });
После запроса возвращает 0 записей так как даты не равны ((
Можно ли как нибудь укоротить scheduledstart в формат DateTime.Now.Date или как нибудь по другому создать запрос
Старый 27.02.2012, 20:28   #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
В данном случае нужно использовать QueryExpression. При построении фильтра значний вы сможете использовать ConditionOperator.Today и пр. аналогично тому, как вы это делаете в расширенном поиске. Примеры есть в SDK.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 27.02.2012, 22:48   #3  
griefon is offline
griefon
Участник
 
131 / 52 (2) ++++
Регистрация: 07.12.2010
Адрес: down under
Вот вам пример:
X++:
ConditionExpression cond = new ConditionExpression();
cond.AttributeName = "scheduledstart";
cond.Operator = ConditionOperator.Today;

FilterExpression filter = new FilterExpression();
filter.Conditions.Add(cond);

QueryExpression query = new QueryExpression();
query.Criteria = filter;
query.ColumnSet = new ColumnSet("phr_invid");
query.EntityName = "serviceappointment";

EntityCollection appointments = service.RetrieveMultiple(query);
Код под 2011, но под 4.0 почти тоже самое.
Старый 28.02.2012, 09:26   #4  
smlrus is offline
smlrus
Участник
 
19 / 10 (1) +
Регистрация: 07.12.2011
Огромное вам спасибо, буду изучать
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
mscrm4ever: Formatting CRM DateTime Field Blog bot Dynamics CRM: Blogs 1 14.09.2010 13:45
Все о Microsoft Dynamics CRM: Спрятать часть с датой из поля типа DateTime. Blog bot Dynamics CRM: Blogs 0 27.07.2010 15:05
Бизнес-процесс: применение определенного алгоритма к каждой записи CRMGrid Tarasov E Dynamics CRM: Разработка 67 28.12.2009 18:16
Странности бизнес-процесса на изменение атрибутов записи SLK Dynamics CRM: Функционал 6 19.05.2009 08:14
Событие "Назначение записи" для бизнес-процесса Lazarus Dynamics CRM: Функционал 1 22.01.2009 19:54

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 02:20.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.