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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.04.2014, 10:47   #1  
vikuss2006 is offline
vikuss2006
Участник
 
42 / 10 (1) +
Регистрация: 22.11.2013
Почему не работает запрос?
X++:
void addQueryRanges()
{
    Query                 reportQuery = this.queryRun().query();
    QueryBuildDataSource  qbds = reportQuery.dataSourceTable(tablenum(LedgerJournalTable));
    QueryBuildRange       qbr;
    ;

    qbr = qbds.addRange(fieldnum(LedgerJournalTable, PostedDate));
    qbr.value(strFmt('(%1 >= %2) AND (%1 <= %3) OR (%1 == %4)',
    fieldStr(LedgerJournalTable,PostedDate),
    queryvalue(dateFrom),
    queryvalue(dateTo),
    sysquery::valueEmptyString()
    )); 

}

Последний раз редактировалось mazzy; 29.10.2014 в 19:14.
Старый 07.04.2014, 14:45   #2  
sparco is offline
sparco
Участник
Самостоятельные клиенты AX
 
44 / 21 (1) +++
Регистрация: 10.10.2011
Адрес: Москва
попробуйте воспользоваться Date2StrXpp вместо queryvalue
http://www.axaptapedia.com/Expressions_in_query_ranges
За это сообщение автора поблагодарили: Cardagant (1).
Старый 07.04.2014, 16:57   #3  
user_ax is offline
user_ax
Участник
Аватар для user_ax
 
599 / 39 (3) +++
Регистрация: 07.10.2012
Адрес: ZP
что значит - не работает? Не возвращает данных или кидает ошибку?

Последний раз редактировалось user_ax; 07.04.2014 в 17:29.
Старый 07.04.2014, 17:24   #4  
Cardagant is offline
Cardagant
Участник
 
317 / 54 (2) ++++
Регистрация: 11.10.2011
Вот быстро сделал пример подобного работающего джоба. Надеюсь, поможет разобраться.

X++:
Date datefrom = today() - 1, dateTo = today();

Query reportQuery = new Query();
QueryRun qr;

QueryBuildDataSource qbds = reportQuery.addDataSource(tablenum(InventTrans));
QueryBuildRange qbr;

InventTrans inventtrans;
;

qbr = qbds.addRange(fieldnum(InventTrans, DateFinancial));
qbr.value(strFmt('(%1 >= %2) AND (%1 <= %3) OR (%1 == %4)', fieldStr(InventTrans, DateFinancial),
    Date2StrXpp(dateFrom),
    Date2StrXpp(dateTo),
    Date2StrXpp(datenull())));


qr = new QueryRun(reportQuery);

qr.next();
Старый 07.04.2014, 17:43   #5  
Krash is offline
Krash
Участник
Аватар для Krash
 
17 / 15 (1) ++
Регистрация: 23.08.2005
Вариации на тему...
X++:
    Query                   reportQuery = new query();
    QueryBuildDataSource    qbds = reportQuery.addDataSource(tablenum(LedgerJournalTable));
    date                    dateFrom = 01\01\2014;
    date                    dateTo = today();
    queryRun                queryRun;
    ;
    qbds.addRange(fieldnum(LedgerJournalTable, ReverseDate)).value(queryRange(dateFrom, dateTo));
    qbds.addRange(fieldnum(LedgerJournalTable, ReverseDate)).value(queryvalue(dateNull()));
    info(qbds.toString());
    queryRun = new SysQueryRun(reportQuery);
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
axforum blogs: Правила поиска дубликатов (Duplicate Detection Rules) CRM 2011. Как это работает и почему правила иногда автоматически становятся черновиками? Blog bot Dynamics CRM: Blogs 0 11.03.2013 20:11
Не работает SQL запрос ipok Dynamics CRM: Разработка 8 30.01.2011 11:18
Запрос в SQL AlekseyS Dynamics CRM: Разработка 1 26.08.2008 11:01
Почему WhoAmIRequest возвращает пользователя SYSTEM tatra Dynamics CRM: Разработка 5 15.11.2007 16:14
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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