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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.08.2013, 12:42   #1  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
376 / 562 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
Похоже в методе addAttributeRangeToQuery класса DimensionProvider в строке 58 используют не правильный тип соединения
X++:
public QueryBuildRange addAttributeRangeToQuery(Query _query, str _dataSourceName, str _dimensionFieldName, DimensionComponent _dimensionComponent, anytype _value, str _dimensionAttributeName='', boolean _isDefaultRange = false)
{
...
           // Change the join to an inner join since it is now restricting
            qbds.joinMode(JoinMode::InnerJoin);
...
}
При таком соединении из выборки уходят все строки, у которых не определено значение фин. аналитики, по которой накладываем условие.

Т.е. когда мы используем конструкцию вида
X++:
...
    SysQuery::addDimensionAttributeRange(
                query,
                qbds.name(),
                fieldStr(Example, DefaultDimension),
                DimensionComponent::DimensionAttribute,
                SysQuery::valueUnlimited(),
                dimensionName,
                true);
...
будут отобраны все записи из таблицы Example, у которых аналитика dimensionName не пустая, даже не смотря на то, что значение мы передаем любое.

И еще один момент, в соседнем методе addAttributeFilterToQuery(он почти повторяет данный метод за исключением методов к которым применяются значения условий) этого же класса, используется уже OuterJoin.

X++:
public QueryFilter addAttributeFilterToQuery(Query _query, str _dataSourceName, str _dimensionFieldName, DimensionComponent _dimensionComponent, anytype _value, str _dimensionAttributeName = '')
{
...
           // Change the join to an outer join since it is now restricting with a filter
            qbds.joinMode(JoinMode::OuterJoin);
...
}
__________________
Sergey Nefedov
За это сообщение автора поблагодарили: Logger (1).
Теги
ax2012, dimensions

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
X++: X++ Compiler Changes in Dynamics AX 2012 Blog bot DAX Blogs 0 15.11.2011 01:13
emeadaxsupport: New Content for Microsoft Dynamics AX 2012 : October 2011 Blog bot DAX Blogs 0 27.10.2011 17:11
X++: How to use X++ Delegates in Dynamics AX 2012 Blog bot DAX Blogs 0 03.08.2011 09:11
saveenr: Dynamics AX 2012: An Introduction to Report Data Providers Blog bot DAX Blogs 0 07.03.2011 12:11
daxdilip: Whats New in Dynamics AX 2012 (A brief extract from the recently held Tech Conf.) Blog bot DAX Blogs 7 31.01.2011 12:35
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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