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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.01.2013, 18:31   #1  
alicedr is offline
alicedr
Участник
 
175 / 43 (2) +++
Регистрация: 06.07.2012
Адрес: Канада
Согласна, firstonly там действительно не нужен

Усложняем задачу.
X++:
    //qbds = query.addDataSource(tablenum(FactureTrans_RU));
    qbds = query.addDataSource(tablenum(FactureTransLines)); //заменили на мап
    qbds.orderMode(OrderMode::GroupBy);

    qbds.addSelectionField(fieldnum(FactureTransLines, LineAmountMST), SelectionField::Sum);
    qbds.addRange(fieldnum(FactureTransLines, FactureId)).value(_factureJour.FactureId);
    qbds.addRange(fieldnum(FactureTransLines, Module)).value(SysQuery::value(_factureJour.Module));
 // и другие addRange
    qr = new QueryRun(query);
    while(qr.next())
    {
        factureTrans = qr.get(tablenum(FactureTransLines));
      //разные действия
   }
В цикл while не заходит, т.е. записей запрос не выдает.
Аналогичная конструкция с просто таблицей, а не мапом, работает.
Старый 29.01.2013, 18:53   #2  
lev is offline
lev
Ищущий знания...
Аватар для lev
Oracle
MCBMSS
Axapta Retail User
 
1,723 / 491 (20) +++++++
Регистрация: 18.01.2005
Адрес: Москва
Цитата:
Сообщение от alicedr Посмотреть сообщение
Согласна, firstonly там действительно не нужен

Усложняем задачу.
X++:
    //qbds = query.addDataSource(tablenum(FactureTrans_RU));
    qbds = query.addDataSource(tablenum(FactureTransLines)); //заменили на мап
    qbds.orderMode(OrderMode::GroupBy);

    qbds.addSelectionField(fieldnum(FactureTransLines, LineAmountMST), SelectionField::Sum);
    qbds.addRange(fieldnum(FactureTransLines, FactureId)).value(_factureJour.FactureId);
    qbds.addRange(fieldnum(FactureTransLines, Module)).value(SysQuery::value(_factureJour.Module));
 // и другие addRange
    qr = new QueryRun(query);
    while(qr.next())
    {
        factureTrans = qr.get(tablenum(FactureTransLines));
      //разные действия
   }
В цикл while не заходит, т.е. записей запрос не выдает.
Аналогичная конструкция с просто таблицей, а не мапом, работает.
а какой запрос покажет:
X++:
info(qbds.toString());
?
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с)
С Уважением,
Елизаров Артем
Старый 29.01.2013, 18:55   #3  
Slava Chernenko is offline
Slava Chernenko
Участник
Самостоятельные клиенты AX
Соотечественники
 
34 / 15 (0) ++
Регистрация: 30.04.2008
Адрес: Copenhagen, Denmark
И какую из двух замапленных таблиц вы ожидаете квери должен кверить?
Старый 29.01.2013, 19:43   #4  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
376 / 562 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
Мап не содержит данных, данные хранятся в таблицах. Поэтому запросы работают корректно, возвращают пусто.

Если вы хотите сделать с помощью query, то воспользуйтесь советом EVGL - использование объекта MappingsInfo_RU.

Посмотрите использование в стандарте метода MappingsInfo_RU::createMapWithFieldId.

В вашем случае будет примерно так :

X++:
Map  map = MappingsInfo_RU::createMapWithFieldId(_fTrans.TableId,tablenum(FactureTransLines));
;
...
qbds.query.addDataSource(_fTrans.tableId);
if (map.exists(fieldIdpname(FactureTransLines, FactureId)))
{
  qbds.addRange(map.lookup(fieldIdpname(FactureTransLines, FactureId))).value(_factureJour.FactureId)
}
...
__________________
Sergey Nefedov

Последний раз редактировалось SRF; 29.01.2013 в 19:47.
За это сообщение автора поблагодарили: alicedr (1).
Теги
group by, map, query

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Dynamics AX: QueryRun and Query Objects - Binding operation failed to allocate buffer space Blog bot DAX Blogs 0 03.04.2009 08:05
Dynamics AX: Map Object Sorting - a real issue Blog bot DAX Blogs 7 15.10.2008 12:02
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 axaLearner DAX: Программирование 10 01.12.2005 15:00
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

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

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