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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.04.2012, 08:17   #1  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,448 / 1792 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
В общем случае Query может содержать несколько последовательных запросов. Не связанных друг с другом и не подчинённых друг к другу. Т.е. просто независимые друг от друга запросы разной структуры, которые queryRun обрабатывает последовательно.

Даже если брать за основу не весь Query, а QueryBuildDataSource, то и тут есть нюансы. Например, я себе не представляю, как можно реализовать одним SQL запросом QueryBuildDataSource, содержащий QueryFetchMode::One2Many.

Понятно что все эти "экзотические" возможности недоступны для пользователя через функциональность расширенного фильтра. Но ведь для системы нет никакой разницы - Query полученный от пользователя и Query созданный программно это одна и таже сущность. Поэтому я сомневаюсь в том что в системе есть какой-то стандартный инструмент, который сможет превратить в чесный SQL-текст любой Query/QueryBuildDataSource. Всё-таки наличие у аксаптовского Query таких "экзотических" возможностей, делает его гораздо более сложным объектом, нежели просто SQL-запрос.

Если говорить даже просто о преобразовании значения range, в некоторое логическое условие, то и тут не вижу никакаих надежд на наличие стандартных инструментов . Стандартный метод Global::inRange() реализуется через запрос к временной таблице. Если бы существовал транслятор, доступный из X++, стали бы они так делать?

Хотя... всё может быть Также не исключаю возможность существования самописных трансляторов. Но они ли вам нужны?
За это сообщение автора поблагодарили: db (2).
Старый 18.04.2012, 13:30   #2  
db is offline
db
Роман Долгополов (RDOL)
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
 
393 / 692 (24) +++++++
Регистрация: 01.04.2004
Адрес: Москва
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
В общем случае Query может содержать несколько последовательных запросов
.....
Понятно что все эти "экзотические" возможности недоступны для пользователя через функциональность расширенного фильтра
.....
Хотя... всё может быть Также не исключаю возможность существования самописных трансляторов. Но они ли вам нужны?
Сферический конь в вакууме (и даже в более реальных средах) не нужен и то что невозможно сделать в расширенном фильтре не интересует

Ну про стандартные я даже и не мечтаю - так что если кто поможет ссылкой на самодельное подобное извращение то буду вполне доволен

Пока склоняюсь к разбору и переформатированию результатов qbds.toString(). Ну и тут своя бяка нашлась - на некоторых (вполне нормально исполняющихся, но достаточно сложных по структуре) запросах выполнение этого кода валит аксапту ...
Теги
generateonly, getsqlstatement, query, t-sql, преобразование, расширенный фильтр

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
fed: Two stories about inventory closing and SQL Locks Blog bot DAX Blogs 3 14.01.2014 11:53
Преобразование datasource и query в табличный курсор Geo DAX: Программирование 29 21.04.2011 21:52
axperf: Important SQL Server Change! - Parameter Sniffing and Query Plan Caching Blog bot DAX Blogs 3 24.05.2010 02:53
jinx: Dynamics AX – Query-Ranges und Filtereinstellungen des Benutzers Blog bot DAX auf Deutsch 0 04.02.2010 00:05
Как реализовать Query или View на примере такого T-SQL запроса для OLAP? sao DAX: Программирование 9 07.10.2005 18:57

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

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

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