добавить столбец «все/всего» в гистограмму

У меня есть гистограмма в SSRS, которая показывает данные, полученные из SSAS, данные выглядят так:

имя: значение: цель: расчетный %

Произведение 1:10:100:0,1:

Продукт 2:15:30:0,5:

где вычисляемый% — вычисляемый член запроса — ((100/цель)*значение)/100

на диаграмме вычисленные % отображаются как значения по оси Y и имя по оси X.

Мне нужно добавить столбец, который является суммой других столбцов, поэтому, если он будет возвращен из запроса, он будет выглядеть так:

Всего продуктов: 25: 130: 0,19

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

Любая идея, как я могу либо заставить диаграмму добавить этот общий столбец, либо изменить запрос, чтобы вернуть дополнительную строку? кажется, что это довольно легко сделать с SQL, но здесь используется MDX, и я не очень хорошо знаком с этим.

Код;

WITH MEMBER [Measures].[PercentOfTarget] AS ((100/ [Measures].[Value])*[Measures].[Enquiry Count])/100 SELECT NON EMPTY { [Measures].[PercentOfTarget], [Measures].[Strech Target Value], [Measures].[Value], [Measures].[Enquiry Count] } ON COLUMNS, NON EMPTY { ([Industry Sector].[Reporting Sector].[Reporting Sector].ALLMEMBERS ) } DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME ON ROWS FROM ( SELECT ( STRTOSET(@StageStartDateFinancialYearName, CONSTRAINED) ) ON COLUMNS FROM ( SELECT ( { [Industry Sector].[Reporting Sector].&[Advanced Engineering], [Industry Sector].[Reporting Sector].&[Business Professional And Financial Services], [Industry Sector].[Reporting Sector].&[DigiMedia], [Industry Sector].[Reporting Sector].&[Food And Drink], [Industry Sector].[Reporting Sector].&[IT], [Industry Sector].[Reporting Sector].&[Life Sciences], [Industry Sector].[Reporting Sector].&[Logistics] } ) ON COLUMNS FROM ( SELECT ( { [Enquiry Type].[Enquiry Type].&[Project] } ) ON COLUMNS FROM [Invest Cube]))) WHERE ( [Enquiry Type].[Enquiry Type].&[Project], IIF( STRTOSET(@StageStartDateFinancialYearName, CONSTRAINED).Count = 1, STRTOSET(@StageStartDateFinancialYearName, CONSTRAINED), [Stage Start Date].[Financial Year Name].currentmember ) ) CELL PROPERTIES VALUE, BACK_COLOR, FORE_COLOR, FORMATTED_VALUE, FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS

person Stuart    schedule 14.05.2012    source источник
comment
Можете ли вы добавить MDX, который у вас есть, к вопросу?   -  person Wayne Maurer    schedule 15.05.2012
comment
Добавлен код, не могу сделать его красивым - указатели приветствуются :)   -  person Stuart    schedule 15.05.2012


Ответы (1)


Отдельные строки продукта задаются следующей строкой:

{ ([Industry Sector].[Reporting Sector].[Reporting Sector].ALLMEMBERS) }

Предоставленный запрос является сложным, запрашивая из подзапросов; Я никогда не писал запрос MDX таким образом, но, возможно, вы могли бы попробовать следующее:

{ [Industry Sector].[Reporting Sector].[Reporting Sector].ALLMEMBERS, [Industry Sector].[Reporting Sector].[Reporting Sector].All  }

Надеемся, что добавление члена «Все» в набор обеспечит нужную вам общую строку.

person Wayne Maurer    schedule 16.05.2012
comment
пришлось немного изменить его на это - { ([Отрасль промышленности].[Отчетный сектор].[Отчетный сектор].ALLMEMBERS,), ([Отрасль промышленности].[Отчетный сектор].[Все])} - person Stuart; 17.05.2012
comment
Вам действительно нужны дополнительные скобки? Я думаю, вам сойдет с рук { [Отрасль промышленности].[Отчетный сектор].[Отчетный сектор].ALLMEMBERS, [Отрасль промышленности].[Отчетный сектор].[Все] } - person Wayne Maurer; 18.05.2012