2010-10-11 26 views

Répondre

0

Peut-être en faisant le groupe parent un groupe combiné de taille et de couleur, affichage mais seulement Couleurs, puis groupe sur Taille pour l'enfant/Sous-groupe.

Mise à jour:

Ok, donc je créé un petit jeu de données, je ne suis pas sûr que l'ensemble de données est quelque chose que vous obtenez en arrière, mais peut-être il peut stimuler d'autres idées sur la façon dont vous pouvez manipuler les données SQL pour obtenir ce que vous voulez dans le rapport.

D'abord, je viens de créer un groupe de SELECT ... UNION TOUTES les déclarations, mais après quelques Toying, je ne pouvais toujours pas tout près de la sortie visuelle requise/regroupement. Voici donc ce que je:

with CTE (Color, Size, CSGroup, Amt) As (
select 'Red' As color, 'Small' as size, 'RedSmall' as CSGroup, 1 as Amt union all 
select 'Red' As color, 'Small' as size, 'RedSmall' as CSGroup, 1 as Amt union all 
select 'Red' As color, 'Medium' as size,'RedMedium' as CSGroup, 1 as Amt union all 
select 'Red' As color, 'Medium' as size, 'RedMedium' as CSGroup, 1 as Amt union all 
select 'Red' As color, 'Medium' as size, 'RedMedium' as CSGroup, 1 as Amt union all 
select 'Red' As color, 'Small' as size, 'RedSmall' as CSGroup, 1 as Amt union all 

select 'Yellow' As color, 'Small' as size, 'YellowSmall' as CSGroup ,1 as Amt union all 
select 'Yellow' As color, 'Small' as size, 'YellowSmall' as CSGroup ,1 as Amt union all 
select 'Yellow' As color, 'Large' as size, 'YellowLarge' as CSGroup ,1 as Amt union all 
select 'Yellow' As color, 'Large' as size, 'YellowLarge' as CSGroup ,1 as Amt union all 
select 'Yellow' As color, 'Large' as size, 'YellowLarge' as CSGroup ,1 as Amt union all 
select 'Yellow' As color, 'Medium' as size, 'YellowMedium' as CSGroup ,1 as Amt union all 
select 'Yellow' As color, 'Medium' as size, 'YellowMedium' as CSGroup ,1 as Amt union all 

select 'Blue' As color, 'Medium' as size, 'BlueMedium' as CSGroup, 1 as Amt union all 
select 'Blue' As color, 'Medium' as size, 'BlueMedium' as CSGroup, 1 as Amt union all 
select 'Blue' As color, 'Medium' as size, 'BlueMedium' as CSGroup, 1 as Amt union all 
select 'Blue' As color, 'Small' as size, 'BlueSmall' as CSGroup, 1 as Amt union all 
select 'Blue' As color, 'Large' as size, 'BlueLarge' as CSGroup, 1 as Amt union all 
select 'Blue' As color, 'Large' as size, 'BlueLarge' as CSGroup, 1 as Amt union all 

select 'Green' As color, 'Medium' as size, 'GreenMedium' as CSGroup, 1 as Amt union all 
select 'Green' As color, 'Medium' as size, 'GreenMedium' as CSGroup, 1 as Amt union all 
select 'Green' As color, 'Large' as size, 'GreenLarge' as CSGroup, 1 as Amt union all 
select 'Green' As color, 'Large' as size, 'GreenLarge' as CSGroup, 1 as Amt union all 
select 'Green' As color, 'Large' as size, 'GreenLarge' as CSGroup, 1 as Amt union all 
select 'Green' As color, 'Small' as size, 'GreenSmall' as CSGroup, 1 as Amt union all 
select 'Green' As color, 'Small' as size, 'GreenSmall' as CSGroup, 1 as Amt) 
Select Color, Size, SUM(Amt) As Amount From CTE group by Color, Size 

Vous pouvez ignorer le CSGroup Je n'ai pas fini de l'utiliser.

Donc, avec cela, il a donné de moi le « look » de ce que vous avez besoin dans le DataSet.

médicament I une matrice et regroupés sur la taille & Couleur (=Fields!size.Value & Fields!color.Value)

Je puis inséré un groupe, et regroupés sur la taille (=Fields!size.Value)

Dans le groupe de la colonne "top" Je =Fields!color.Value

Dans le deuxième groupe de colonnes je =First(Fields!Size.Value)

Dans la zone de texte données je =Sum(Fields!Amount.Value)

Ensuite, faites un clic droit sur le deuxième groupe de colonne et cochez la case « Masquer » Doublons. J'ai ensuite sélectionné Dataset1 dans le menu déroulant.

La seule chose que j'étais incapable de faire était la taille centrée depuis que je suis incapable de fusionner les zones de texte.

Grouping Example

+0

Ce diviserait les cellules fusionnées du groupe « Taille ». Le regroupement par (Taille + Couleur) donne 8 groupes de colonnes uniques différents (dans l'exemple fourni). L'ajout d'un groupe enfant sur (Taille) ne les fusionnera pas ensemble ... – Andy

+0

La réponse mise à jour après s'en être amusé. –

+0

Oui ... fusionner ces cellules est ce que je n'ai pas pu faire non plus ... je suppose que cela semble plus simple que ça en réalité :) – Andy