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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.11.2009, 20:54   #21  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Ага. Это поля индекса. Причём даже если индекс не PrimaryIndex и не ClusterIndex в Query всё равно добаляется сортировка по нему. Явный .sortClear() тоже не убирает order by из запроса.

Может есть какя-нибудь настройка AOS, которую можно выключить? Конечно очень странное решение - по умолчанию навязывать сортировку во всех Query.
Не то слово - "странное"... И оно во всех формах присутствует.
И убрать это вроде как нельзя никак - по крайней мере так мне сказал представитель майкрософта в приватной беседе на прошлом мастер-классе по 4-ке.
__________________
Zhirenkov Vitaly
Старый 21.11.2009, 13:29   #22  
in.dc is offline
in.dc
Участник
 
29 / 53 (2) ++++
Регистрация: 09.04.2009
Cool recordLevelSecurity
Цитата:
Сообщение от ZVV Посмотреть сообщение
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Ага. Это поля индекса. Причём даже если индекс не PrimaryIndex и не ClusterIndex в Query всё равно добаляется сортировка по нему. Явный .sortClear() тоже не убирает order by из запроса.

Может есть какя-нибудь настройка AOS, которую можно выключить? Конечно очень странное решение - по умолчанию навязывать сортировку во всех Query.
Не то слово - "странное"... И оно во всех формах присутствует.
И убрать это вроде как нельзя никак - по крайней мере так мне сказал представитель майкрософта в приватной беседе на прошлом мастер-классе по 4-ке.

сдается мне, что слукавил 'представитель майкрософта' в этом вопросе, и убрать явную сортировку в общем то возможно.

Сортировка в QueryRun навязывается механизмом Record Level Security (который для этих объектов по умолчанию включен, состояние флага RLS QueryRun первоначально наследуется из Query на основе которого создается), если при инициализации этих объектов явно отключить RLS ( Query.recordLevelSecurity( false ) или QueryRun.recordLevelSecurity( false ) ) то запрос уже не будет содержать ORDER BY по полям индекса:

QueryRun.recordLevelSecurity( false ):
X++:
...
FROM LEDGERTRANS A WHERE (DATAAREAID=?)
QueryRun.recordLevelSecurity( true ):
X++:
FROM LEDGERTRANS A WHERE (DATAAREAID=?) ORDER BY A.DATAAREAID,A.ACCOUNTNUM,A.TRANSDATE,A.VOUCHER,A.AMOUNTMST
P.S. тестировалось на SQL2005
__________________
Dynamics AX 4.0 SP2
За это сообщение автора поблагодарили: mazzy (2), dn (1), raz (1), ZVV (1), Lemming (1), _AnK_ (2), gl00mie (1), S.Kuskov (2).
Старый 21.11.2009, 17:59   #23  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
Цитата:
Сообщение от in.dc Посмотреть сообщение
сдается мне, что слукавил 'представитель майкрософта' в этом вопросе, и убрать явную сортировку в общем то возможно.
Ну мы с ним про формы говорили, а не про Query, так что может и не слукавил таки...

Да и отключать RLS в запросах тоже не всегда представляется возможным...

ЗЫ Хотя всё равно я не понял, зачем этот ордер бай нужен, при RLS...
__________________
Zhirenkov Vitaly
За это сообщение автора поблагодарили: player (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Dynamics AX Geek: Using query() Blog bot DAX Blogs 0 04.05.2009 14:05
palleagermark: Sample union query from AX 2009 Blog bot DAX Blogs 0 11.07.2008 20:05
Dynamics AX Geek: Using query() Blog bot DAX Blogs 0 28.10.2006 16:40
Помогите новичку в создании Query lev DAX: Программирование 2 19.06.2006 10:29
Помогите с query 6apcyk DAX: Программирование 23 09.09.2005 13:50

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

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

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