17.10.2007, 13:50 | #1 |
Участник
|
Проблема с Query в AOT
Столкнулся с проблемой : В АОТ создаю Query , состоящую из 5 таблиц (Axapta 3.0#1951 sql2005 3-х уровневая). На корневом ДС (InventTrans) создаю relation DatePhysical, но не заполняю свойство Value в АОТ (динамически изменяемый параметр). В коде пишу следующее :
X++: SysQueryRun qr = new SysQueryRun(querystr(MyAotQuery)); qr.query(new Query(querystr(MyAotQuery))).dataSourceTable(tablenum(InventTrans)).range(2).Value(strfmt("%1 %2","<",global::date2StrXpp(01\08\2007))); if (qr.prompt()) {...} X++: //qr.query(new Query(querystr(MyAotQuery))).dataSourceTable(tablenum(InventTrans)).range(2).Value(strfmt("%1 %2","<",global::date2StrXpp(01\08\2007))); Я конечно понимаю , что можно принудительно указывать пустой параметр, но хотелось бы узнать причины такого поведения Аксапты... Что нужно сделать , чтобы пустое значение по умолчанию имело место быть ? : )) |
|
17.10.2007, 14:45 | #2 |
SAP
|
по мойму у вас ситуация когда ваш query сохранился в SysLastValue и мучает вас.
|
|
17.10.2007, 15:13 | #3 |
Участник
|
Цитата:
Кроме того , чистил кеш вот так: X++: xSession::removeAOC(); SysTreeNode::refreshAll(); SysFlushDictionary::main(_args); SysFlushAOD::main(_args); SysFlushData::main(_args); xSession::updateAOC(); |
|
17.10.2007, 15:34 | #4 |
Участник
|
Цитата:
Кроме того , чистил кеш вот так: X++: xSession::removeAOC(); SysTreeNode::refreshAll(); SysFlushDictionary::main(_args); SysFlushAOD::main(_args); SysFlushData::main(_args); xSession::updateAOC(); |
|
17.10.2007, 15:43 | #5 |
MCTS
|
Если действительно проблема с SysLastValue, то попробуйте так:
в таблице SysLastValue прибейте все строки с elementName равное MyAotQuery
__________________
В глухомани, в лесу Несмотря на красу Дни проводит Лиса Патрикевна. Я никак не пойму Отчего, почему Не пускают куму На деревню |
|
17.10.2007, 16:11 | #6 |
SAP
|
Цитата:
Возможно это так. Но почему в первоначальном варианте при явном указании фильтра , значение было пустым?
Кроме того , чистил кеш вот так: |
|
17.10.2007, 16:18 | #7 |
Участник
|
Можно еще попробовать в коде написать
SysQueryRun.saveUserSetup(false) сразу после создания SysQueryRun Тогда она не пытается сохранять настройки в SysLastValue на вызовах SysQueryRun.prompt() и проч. Последний раз редактировалось Logger; 17.10.2007 в 16:29. |
|
|
За это сообщение автора поблагодарили: radya (1). |
17.10.2007, 17:28 | #8 |
Участник
|
Скорее всего дело именно в SysLastValue
И вы делаете очень неправильно, пытаясь лечить его очисткой кэша, так как к кэшу он отношения не имеет. Это пользовательские настройки. |
|
|
Похожие темы | ||||
Тема | Ответов | |||
palleagermark: Sample union query from AX 2009 | 0 | |||
Dynamics AX Geek: Using query() | 0 | |||
Проблема с составлением Query | 10 | |||
Програмно сохранить Query в AOT | 5 | |||
проблема с query | 7 |
|