Поделиться через


Визуальные и невизуальные итоги

Visual Totals — это итоги в конце столбца или строки, которые представляют собой сумму всех элементов, видимых в столбце или строке. Это поведение применяется по умолчанию при отображении большинства таблиц. Но иногда нужно, чтобы в таблице отображались только определенные столбцы, а итоги выводились для всей строки, в том числе для неотображаемых столбцов. Такие итоги принято называть Non Visual Totals, поскольку они складываются из видимых и невидимых значений.

Поведение итогов Non Visual демонстрируется в следующем сценарии. В первом шаге показано поведение по умолчанию для Visual Totals.

В следующем примере приведен запрос к [Adventure Works] для получения данных [Reseller Sales Amount] из таблицы, в которой категории товаров расположены по столбцам, а типы торговых посредников — по строкам. Обратите внимание, что в следующей инструкции SELECT предусмотрено получение итогов по товарам и по торговым посредникам:

select [Category].members on 0,

[Business Type].members on 1

from [Adventure Works]

where [Measures].[Reseller Sales Amount]

Она выдает следующие результаты.

 

Все продукты

Accessories

Bikes

Clothing

Components

Все торговые посредники

$80,450,596.98

$571,297.93

$66,302,381.56

$1,777,840.84

$11,799,076.66

Specialty Bike Shop

$6,756,166.18

$65,125.48

$6,080,117.73

$252,933.91

$357,989.07

Торговый посредник, создающий добавленную стоимость

$34,967,517.33

$175,002.81

$30,892,354.33

$592,385.71

$3,307,774.48

Склад

$38,726,913.48

$331,169.64

$29,329,909.50

$932,521.23

$8,133,313.11

Применение режима Non Visual к строкам и столбцам

Чтобы получить таблицу с данными только по товарам Accessories и Clothing и торговым посредникам Value Added Reseller и Warehouse, сохраняя при этом полные итоги, можно написать следующую инструкцию, содержащую предложение NON VISUAL:

select [Category].members on 0,

[Business Type].members on 1

from NON VISUAL (Select {[Category].Accessories, [Category].Clothing} on 0,

{[Business Type].[Value Added Reseller], [Business Type].[Warehouse]} on 1

from [Adventure Works])

where [Measures].[Reseller Sales Amount]

Она выдает следующие результаты.

 

Все продукты

Accessories

Clothing

All Resellers

$80,450,596.98

$571,297.93

$1,777,840.84

Торговый посредник, создающий добавленную стоимость

$34,967,517.33

$175,002.81

$592,385.71

Warehouse

$38,726,913.48

$331,169.64

$932,521.23

Применение режима Non Visual к строкам

Чтобы создать таблицу, которая визуально рассчитывает итоги столбцов, а для строк приводится истинный итог всех [Category], должен быть выполнен следующий запрос:

select [Category].members on 0,

[Business Type].members on 1

from NON VISUAL (Select {[Category].Accessories, [Category].Clothing} on 0

from ( Select {[Business Type].[Value Added Reseller], [Business Type].[Warehouse]} on 0

from [Adventure Works])

)

where [Measures].[Reseller Sales Amount]

Обратите внимание, что NON VISUAL применяется только к [Category].

Этот запрос выдаст следующий результат.

 

Все продукты

Accessories

Clothing

All Resellers

$73,694,430.80

$506,172.45

$1,524,906.93

Торговый посредник, создающий добавленную стоимость

$34,967,517.33

$175,002.81

$592,385.71

Warehouse

$38,726,913.48

$331,169.64

$932,521.23

При сравнении с предыдущими результатами можно заметить, что в строке [All Resellers] складываются отображаемые значения [Value Added Reseller] и [Warehouse], однако столбец [All Products] отображает общее значение для всех продуктов, включая те, которые не отображаются.

См. также

Основные понятия

Основные понятия многомерных выражений (службы Analysis Services)

Автоматическая проверка существования

Работа с элементами, кортежами и наборами (многомерные выражения)

Базовый запрос многомерных выражений (многомерные выражения)

Ограничение запроса с помощью осей запроса и среза (многомерные выражения)

Определение контекста куба в запросе (многомерные выражения)

Другие ресурсы

Основные принципы запросов многомерных выражений (службы Analysis Services)