07.04.2014, 10:47 | #1 |
Участник
|
Почему не работает запрос?
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 |
Участник
|
попробуйте воспользоваться Date2StrXpp вместо queryvalue
http://www.axaptapedia.com/Expressions_in_query_ranges |
|
|
За это сообщение автора поблагодарили: Cardagant (1). |
07.04.2014, 16:57 | #3 |
Участник
|
что значит - не работает? Не возвращает данных или кидает ошибку?
Последний раз редактировалось user_ax; 07.04.2014 в 17:29. |
|
07.04.2014, 17:24 | #4 |
Участник
|
Вот быстро сделал пример подобного работающего джоба. Надеюсь, поможет разобраться.
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 |
Участник
|
Вариации на тему...
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); |
|