Разница в результатах при использовании.CHILDREN и.ALLMEMBERS в выражении MDX

У меня есть два почти одинаковых запроса MDX, в одном я использую.CHILDREN, а в другом.ALLMEMBERS. Первый не возвращает строк, второй возвращает две. Пожалуйста, помогите мне понять, почему!

Запрос 1

select 
[Measures].[Claim As Of - Count] on 0,
[Accident Date].[Year].allmembers on 1
from [AW Cube]
where [Accident Date].[Year-Quarter-Month-Date].[Year].&[2010]

--- 2 ряда

Запрос 2

select 
[Measures].[Claim As Of - Count] on 0,
[Accident Date].[Year].children on 1
from [AW Cube]
where [Accident Date].[Year-Quarter-Month-Date].[Year].&[2010]

--НЕТ строк

---- Претензия от - Количество - Все 637 350 -2010 637 350

Чтобы добавить, AccidentDate является одним из измерений в моем кубе [AW Cube]. Год - это естественная иерархия, а [Год-квартал-месяц-дата] - это пользовательская иерархия. [Год-квартал-месяц-дата] создается следующим образом: Год -> Месяц ---> Квартал ---> Дата. Таким образом, "годы" могут быть получены с помощью [Дата происшествия]. [Год-квартал-Месяц-Дата]. [Год].members, а также [Дата происшествия]. [Год]. ЧЛЕНЫ.

1 ответ

Решение

Ну, получил ответ сам. На самом деле каждый .CHILDREN внутренне переводится на .CURRENTMEMBER.CHILDREN Сейчас, [Accident Date].[Year].&[2010] является соответствующим значением для слайсера в определенной пользователем иерархии. Вот, [Accident Date].[Year].CHILDREN на самом деле переводится в [Accident Date].[Year].&[2010].CHILDREN который в основном пустой набор. Следовательно, вуаля! Пустой набор результатов!

Другие вопросы по тегам