2012-02-07 4 views
1

Я пытаюсь создать запрос MDX, чтобы показать 10 лучших результатов + совокупность всех других результатов, которые являются частью первых 10. Все идет нормально. Но я также хочу показать процент каждого результата. Это то, что у меня есть до сих пор. Вы можете попробовать: Приключения:верхние результаты + остальные результаты,%

WITH 
SET [TCat] AS TopCount([Product].[Subcategory].[Subcategory],10,[Measures].[Sales Amount]) 
MEMBER [Product].[Subcategory].[Other] AS Aggregate([Product].[Subcategory].[Subcategory] - TCat) 
MEMBER [Measures].[Percent] AS [Measures].[Sales Amount]/([Measures].[Sales Amount],[Product].[Subcategory].CurrentMember.Parent),format_string='0.00%' 

SELECT { [Measures].[Sales Amount], [Measures].[Percent] } ON COLUMNS, 
TCat + [Other] ON ROWS 
FROM [Adventure Works] 

Все работает нормально, за исключением% от [Other]. Может ли кто-нибудь помочь мне исправить этот последний вопрос?

+1

процент, связанный с чем? – ic3

ответ

0

Участник [Продукт]. [Подкатегория] .CurrentMember.Parent не является родителем от [Other] Member.

Попробуйте это решение:

WITH 
MEMBER [Product].[Subcategory].[Parent] AS Aggregate([Product].[Subcategory].[Subcategory]) 
SET [TCat] AS TopCount([Product].[Subcategory].[Subcategory],10,[Measures].[Sales Amount]) 
MEMBER [Product].[Subcategory].[Other] AS Aggregate([Product].[Subcategory].[Subcategory] - TCat) 
MEMBER [Measures].[Percent] AS [Measures].[Sales Amount]/([Measures].[Sales Amount], [Product].[Subcategory].[Parent]),format_string='0.00%' 

SELECT { [Measures].[Sales Amount], [Measures].[Percent] } ON COLUMNS, 
TCat + [Other] ON ROWS 
FROM [Adventure Works] 
Смежные вопросы