|
|
#2 |
|
Участник
|
Похоже в методе 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);
...И еще один момент, в соседнем методе 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 |
|
|
|