AXForum  
Zurück   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Kennwort vergessen?
Registrieren Forum Rules Hilfe Benutzerliste Heutige Beiträge Suchen

 
 
Themen-Optionen Thema durchsuchen Ansicht
Alt 06.06.2007, 12:18   #1  
sssss ist offline
sssss
Участник
 
15 / 10 (1) +
Registriert seit: 01.12.2006
методы после Range
Когда пользователь фильтрует записи на форме (устанавливает Range) какие методы срабатывают на датасорсе и в какой последовательности?
Alt 06.06.2007, 12:39   #2  
belugin ist offline
belugin
Участник
Benutzerbild von belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4.622 / 2925 (107) +++++++++
Registriert seit: 16.01.2004
Blog-Einträge: 5
можно выполнить под профайлером и посмотреть, что получается.

Если самостоятельно накладывать range на queryRun.query - то надо вызывать research на ds. Из-под него вызовется executeQuery. Причем. если просто вызвать executeQuery будет совершенно другой эффект
Alt 06.06.2007, 13:17   #3  
konopello ist offline
konopello
SAP
SAP
 
628 / 76 (4) ++++
Registriert seit: 08.11.2005
Ort: Минск
Zitat:
Если самостоятельно накладывать range на queryRun.query - то надо вызывать research на ds. Из-под него вызовется executeQuery. Причем. если просто вызвать executeQuery будет совершенно другой эффект
а может быть можно по подробней, что особенного еще делает research
Alt 06.06.2007, 13:29   #4  
belugin ist offline
belugin
Участник
Benutzerbild von belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4.622 / 2925 (107) +++++++++
Registriert seit: 16.01.2004
Blog-Einträge: 5
как рар наоборот, насколько я помню (и если пошарить по аксфоруму где-то найдется мой вопрос и ответы), если сделать executeQuery просто - то QueryRun.query переинициализируется из query - то есть просто eecuteQuery делает лишнее - сносит quuryRun.query()
Alt 06.06.2007, 13:52   #5  
kashperuk ist offline
kashperuk
Участник
Benutzerbild von kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4.361 / 2084 (78) +++++++++
Registriert seit: 30.05.2004
Ort: Atlanta, GA, USA
Что-то ты, Максим, как-то заумно объясняешь
Насколько я это понимаю, на "простом" языке,

research() перечитывает данные, но сохраняет пользовательские фильтры (то есть используется _ds.QueryRun().query())
а executeQuery перечитывает данные, но НЕ сохраняет пользовательские фильтры (используется _ds.Query())
Alt 06.06.2007, 13:58   #6  
belugin ist offline
belugin
Участник
Benutzerbild von belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4.622 / 2925 (107) +++++++++
Registriert seit: 16.01.2004
Blog-Einträge: 5
Там заумно сделано. Если поставить break point на executeQuery, то можно заметить, что он вызывается из research
Alt 06.06.2007, 14:10   #7  
konopello ist offline
konopello
SAP
SAP
 
628 / 76 (4) ++++
Registriert seit: 08.11.2005
Ort: Минск
Zitat:
research() перечитывает данные, но сохраняет пользовательские фильтры (то есть используется _ds.QueryRun().query())
а executeQuery перечитывает данные, но НЕ сохраняет пользовательские фильтры (используется _ds.Query())
т.е. получается разница только в том какой Query использовать, я прото точно не помню но по мойму у меня была интересная ситуация, отробатывал класс он создавал записи в таблице. Если я вызывал reserch записей не было видно в gride а если вызвать executeQuery то они появлялись, такое осщущение что при executeQuery он перечитал данные полностью из таблицы а при reserch как то не понятно, пользовательских фильтров небыло. И по этому я решил что в reserch еще что очень хитрое заложено
Alt 06.06.2007, 14:18   #9  
Мариночка ist offline
Мариночка
Microsoft Dynamics
Benutzerbild von Мариночка
Сотрудники Microsoft Dynamics
 
75 / 56 (2) ++++
Registriert seit: 31.01.2005
Ort: Киев
Да, executeQuery с research вызывается просто с установленным флагом, который отвечает за сохранение квериРана, а в самом executeQuery уже анализируется, что там с флагом. Фильтры поэтому в ресерче и сохраняются.

ЗЫ. Сорри, не видела поста
This post has been rated by: belugin (4), kashperuk (3).
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
axaptapedia: Packing date range values in queries Blog bot DAX Blogs 1 09.11.2007 13:10
Пропадает значение Range при экспорте проекта gl00mie DAX: Программирование 3 27.09.2007 00:22
Найти display методы MrVisual DAX: Программирование 12 15.05.2007 09:53
Работа с Excel через COM и ошибка 0x800A03EC (Range.AutoFilter) gl00mie DAX: Программирование 15 30.03.2007 18:37

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Gehe zu

Рейтинг@Mail.ru
Alle Zeitangaben in WEZ +3. Es ist jetzt 22:54 Uhr.
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.