Я бы попытался сгруппировать данные по-другому, чтобы на стороне отчета было проще. Я взял ваш исходный набор данных, поместил его во временную таблицу и сгруппировал так:
SELECT * INTO #t FROM (
Select 'Area-1' as Region, 'North America' as [Group],'US' as [SubGroup],'Northwest' as [Detail], 7887186.7882 as [Sales]
union
Select 'Area-1', 'North America','US','Northeast',2402176.8476
union
Select 'Area-1', 'North America','US','Central',3072175.118
union
Select 'Area-1', 'North America','CA','Southwest',10510853.8739
union
Select 'Area-1', 'North America','CA','Southeast',2538667.2515
union
Select 'Area-1', 'North America','CA','Canada',6771829.1376
union
Select 'Area-1', 'Europe','FR','Northwest',4772398.3078
union
Select 'Area-1', 'Europe','FR','Northeast',3805202.3478
union
Select 'Area-1', 'Europe','FR','Central',5012905.3656
) q
SELECT
[Region], [Group], [SubGroup], [Detail]
, SUM(Sales) OVER(PARTITION BY [Group]) as ContinentSales
, SUM(Sales) OVER(PARTITION BY [Group], [SubGroup]) as CountrySales
, Sales as DetailSales
into #s
FROM #t
SELECT DISTINCT Region, SubGroup as ReportGroup, Detail, DetailSales as Sales FROM #s
UNION ALL
SELECT DISTINCT Region, [Group], NULL, ContinentSales FROM #s
Это дает следующий вывод
После этого вы сможете группировать по группе отчетов и использовать ее в качестве имени страницы в свойстве group.