|  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 | Цитата: 
		
			Возможно это так. Но почему в первоначальном варианте при явном указании фильтра , значение было пустым? Кроме того , чистил кеш вот так:  , может кто-то за вас их и почистил, да и вообще когда тестируется запрос его необходимо создавать в QueryRun каждый раз заново. | 
|  | 
|  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 | |||
| 
 |