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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.03.2007, 17:58   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от belugin Посмотреть сообщение
X++:
     Query q=new Query();   
     //while select sum(SalesQty) from SPLJLH
     QueryBuildDataSource ds = q.addDataSource(tableNum(SPLJLH));
;
        //group by ModifDate
     ds.OrderMode(OrderMode::GroupBy);
     ds.addSortField(fieldNum(SPLJLH, ModifDate));
     ds.addSelectionField(fieldNum(SPLJLH, SalesQty), SelectionField::Sum);
        //where SPLJLH.EmplId == it.value()
     ds.addRange(fieldNum(SPLJLH, EmplID)).value(queryValue(it.value()));
Категорически против такого варианта - нахлебался в русской функциональности.
Он правилен, но чертовски трудномодифицируемый и трудноапгрейдируемый.

Создайте Query в AOT с датасорсом, группировками и прочими параметрами. Можно мышкой и drag'n'drop'ом
В коде напишите две строчки как написал Delfins.

X++:
Query q=new Query(querystr(mySuperEmplQuery));  

// 2 строчки от Delfins
range = sysquery::findorcreaterange(q,...);
range.value(it.value());
Можете написать в одну строчку, если отлаживать не надо
X++:
sysquery::findorcreaterange(new Query(querystr(mySuperEmplQuery)),...).value(it.value());
//
Но только не надо генерить кучу кода, пожалуйста.

Max, давай советовать минимальное программирование?

PS Кроме того, подход с созданием Query в AOT позволяет разделить задачу оптимизации производительности между кодером и администратором. Администратор может исправить Query не затрагивая кода.
__________________
полезное на axForum, github, vk, coub.
За это сообщение автора поблагодарили: belugin (14).
Теги
query

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
ComExcelDocument_RU по именнованной ячейки вывести номер ее строки. Poleax DAX: Программирование 37 15.10.2008 14:06
axaptapedia: Packing date range values in queries Blog bot DAX Blogs 1 09.11.2007 13:10
axaptafreak: Label for Query Range cannot be modified (still) Blog bot DAX Blogs 2 25.07.2007 10:09
Работа с Excel через COM и ошибка 0x800A03EC (Range.AutoFilter) gl00mie DAX: Программирование 15 30.03.2007 18:37

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

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

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