2017-06-24 4 views
1

J'essaie de créer une ligne d'en-tête pour une matrice dans mon rapport SSRS. À l'heure actuelle ma matrice est configuré comme suit:Créer une ligne d'en-tête dans SSRS

Matrix

Si je droit + clic pour ajouter une nouvelle ligne, il insère une ligne au-dessus, mais je ne peux pas fusionner toute la rangée de cellules pour former une seule rangée, les colonnes de regroupement restent séparés:

AddedRow

Mon travail autour a été d'ajouter une zone de texte ci-dessus la matrice, mais ne gardera pas les lignes ensemble dans un saut de page:

Work-Around

Est-il possible d'ajouter la ligne d'en-tête? Et si oui, quel serait un bon moyen d'accomplir cette tâche?

+1

Je pense qu'il est déjà répondu ici https: // stackoverflow.com/questions/11285923/tablix-repeat-header-rows-sur-chaque-page-not-working-report-builder-3-0 – niktrs

Répondre

0

J'ai eu le même problème! Je souhaite qu'ils vous permettent de fusionner à travers l'en-tête de ligne; ou ajoutez une nouvelle région de matrice appelée "title". Mon tablix avait également des colonnes dynamiques, donc j'avais besoin de la largeur de la boîte sur le dessus pour développer et réduire avec le reste de la table.

Il y a deux façons dont vous pouvez le manipuler (que je sache)

1. Create a "parent" list object with two rows and insert the table in the second row 
2. Put all the columns to the right of the row header 

Pour résoudre mon problème je l'ai essayé à la fois. D'abord, j'ai ajouté la liste avec une colonne et deux rangées et j'ai copié la table entière dans la deuxième rangée. La première ligne de la liste externe est maintenant centrée et couvre toute la table. C'était salissant parce que j'avais des colonnes dynamiques avec une bascule pour la visibilité. La liste extérieure devait avoir des colonnes alignées avec la visibilité définie sur la même bascule. C'était un travail compliqué à cause de ça.

J'ai décidé d'essayer la deuxième méthode ci-dessus et d'insérer de nouvelles colonnes de l'autre côté de l'en-tête de ligne. Le défi est que les étiquettes de groupes d'en-têtes de ligne se répètent pour chaque ligne ... dans votre exemple, l'ID de rôle se répète dans chaque ligne de détail. J'ai créé une expression pour montrer seulement quand c'était la première rangée du groupe.

= ssi (RowNumber ("roleid_group") = 1, max (Fields! RoleID.Value, "roleid_group"), "")

J'ai utilisé une expression pour ne montrer la frontière quand il était la dernière ligne du groupe:

= ssi (RowNumber ("roleid_group") = countRows ("roleid_group"), "solide", "None")

Cela donne l'illusion d'une ligne groupée. Ne supprimez pas les colonnes d'en-tête de ligne (colonnes 1 et 2) tant que vous ne l'aurez pas fait fonctionner car il est difficile de les rajouter. Attention: cette méthode ne fonctionne pas correctement si le texte du titre de la ligne doit être renvoyé. (La première rangée du groupe sera plus large - la hauteur de la hauteur est susceptible de croître.)

S'il y a un autre moyen, j'aimerais le savoir. Ce sont tous deux un peu difficile mais faire le travail.

+0

Intéressant - Je vais essayer ce que vous avez suggéré de voir si je peux l'obtenir travailler. – MISNole