44 votes

Reporting Services: RepeatColumnHeaders Tablix ne fonctionne pas sur certains rapports

Donc j'ai divers rapports qui se composent d'un ensemble de données rendues dans un tableau Matriciel... joli jardin variété de trucs. Il y a une propriété pour le contrôle de tableau Matriciel nommé RepeatColumnHeaders, que j'ai mis à True pour chaque rapport en question. L'explication de cette propriété états “Indique si les en-têtes de colonne sont répétés sur chaque page de la partie de la région de données apparaissent.” Sons assez simple, mais sur certains rapports, elle fonctionne et sur d'autres, il ne le fait pas. Je n'arrive pas à trouver ce qui est différent sur les rapports qui peuvent affecter cette. Sur un rapport où les en-têtes ne le répète, il est assez arcanes de regroupement mojo, mais dans un exemple où il ne fonctionne pas dans le tableau Matriciel n'a qu'un seul niveau-pas de regroupement. J'attendrais la multi-dire un être le problème, pas le plat.

C'est peut-être un autre problème. J'ai jeté un simple tableau Matriciel rendu SELECT * from Foo, accepté toutes les valeurs par défaut, ce qui entraîne RepeatColumnHeaders être défini à False, et voilà les en-têtes de colonne ne répétez l'opération pour que le rapport... Grrr.

Toutes les suggestions sont grandement appréciées.

48voto

vinny Points 1543

C'est un peu bancale de ce que j'ai réussi à dégoter. Dans votre volet de regroupement, sélectionnez mode avancé, puis sélectionnez votre ultrapériphériques ligne statique. Vous devriez alors voir le "RepeatOnNewPage de la propriété".

Mise à jour: trouver le Mode Avancé:
Le commentaire de @HCL liens vers les autres réponse par @user359904, qui a l'info sur la façon de trouver et de passer en Mode Avancé:

  1. Sélectionnez le tableau matriciel
  2. Ci-dessous le rapport sont des "Groupes de lignes" et "Colonnes Groupes", tout le chemin à droite de la Colonne "Groupes" est une petite flèche vers le bas.
  3. Cliquez sur la flèche, choisissez le Mode Avancé.

16voto

user359904 Points 141

J'ai trouvé une solution qui fonctionne pour moi. Vinny réponse m'a conduit à elle.

Heureusement, je n'ai pas à refaire mon tableau matriciel. J'ai eu trois lignes qui fait mon en-tête de tableau matriciel. J'ai ajouté trois lignes à l'extérieur du plus haut niveau du groupe. Ces lignes ne sont pas liés à aucun groupe. J'ai modifié les lignes de sorte qu'ils exactement reproduit les lignes d'en-tête, j'ai eu mon plus haut niveau du groupe. J'ai mis le KeepWithGroup à la propriété "Après" et le "RepeatOnNewPage" true à la propriété pour chacune de ces lignes d'en-tête. J'ai testé le rapport. L'en-tête est apparue en haut de chaque page, mais en raison de la duplication des lignes d'en-tête à la fois à l'intérieur du plus haut niveau du groupe et au-dessus du plus haut niveau du groupe, l'en-tête répétée deux fois dans le haut de la première page et à chaque saut de section. J'ai supprimé les lignes d'en-tête en haut de la section et de la duplication s'en alla. Les en-têtes de répéter correctement à chaque pause du plus haut niveau du groupe et en haut de chaque page. Il n'existe pas de lignes d'en-tête dans le plus haut niveau du groupe.

Pour définir KeepWithGroup et RepeatOnNewPage: Sélectionnez le tableau matriciel. Dans la zone de groupe ci-dessous le volet de conception, cliquez sur la flèche à droite du libellé de la Colonne "Groupes" et assurez-vous que le "Mode Avancé" est cochée. Cliquez sur la première ligne statique et définir la KeepWithGroup à la propriété "Après" et "RepeatOnNewPage" à true. Le faire pour chacune des lignes qui composent votre en-tête.

14voto

Rex Miller Points 1354

Désolé pour beernuts pour onu-marquage de votre réponse comme une réponse; j'espère que vous arrivez à garder les points de rep.

L'intrigue s'épaissit. Dans les trois essais, j'ai trouvé un rapport de 1:1 de corrélation entre l'utilisation de l'assistant pour créer un rapport et d'obtenir le désiré en-tête de comportement, ainsi qu'entre les pas de l'aide de l'assistant et de ne pas être en mesure d'obtenir le comportement souhaité. À partir de là, j'ai diff d le rdl fichiers pour un travail et non-travail exemple et trouvé cet élément:

<RepeatOnNewPage>true</RepeatOnNewPage>

Dans le document à:

Rapport > Corps > ReportItems > Tableau Matriciel > TablixBody > TablixRowHierarchy 
 > TablixMembers > TablixMember

J'ai ajouté de même pour le non-travail rdl et les en-têtes a commencé à répéter.

Je ne peut pas, toutefois, de trouver un cadre, des biens, etc dans le concepteur qui bascule de cette. Il ne semble pas correspondre à tous, à l'évidence, des propriétés comme décrit précédemment. Est-il juste un artefact de l'assistant? Heureusement, il est assez facile de contourner ce que je ne pouvais pas faire face à recréer une douzaine de rapports à l'aide de l'assistant.

10voto

Alan Points 91

Votre post est encore utilisé ;) Merci à vous tous. J'ai construit sur ce que vous avez fourni à trouver une solution pour restaurer répéter les lignes d'en-tête. Je n'ai pas eu à utiliser le mode Avancé, juste un aperçu... j'ai eu deux titre des lignes à l'extérieur de tous les groupes de lignes avec aucun des groupes de colonnes. Voici ce que j'ai fait pour passer les deux le titre de lignes dans le tableau matriciel en-tête:

  1. Clic droit sur une ligne de titre et "Ajouter un Groupe (Groupe de Colonnes)", Groupe Parent
  2. Groupe par '1' (ce groupe sera ensuite supprimé de sorte qu'il n'a pas d'importance ce que vous mettez là
  3. Cliquez sur OK et la ligne d'en-Tête est ajouté.
  4. Fusionner toutes les colonnes de la nouvelle ligne d'en-tête
  5. Dans la colonne groupe de volet, cliquez du bouton droit sur le groupe vient d'être créé et "Supprimer le Groupe", cochez la case pour "groupe" important
  6. Maintenant vous avez de la ligne d'en-tête vous pouvez insérer une ligne au-dessus ou au-dessous pour ajouter plus de lignes d'en-tête.
  7. Déplacez votre titre de lignes dans les nouvelles lignes d'en-tête et supprimer votre ancien titre de lignes.
  8. La dernière... assurez-vous de vérifier le tableau Matriciel à la propriété "Répéter les en-Têtes de Colonnes sur chaque page"

Il a bien travaillé et facilement reproductibles (j'ai eu beaucoup de tablixes).

Sincèrement, Alan

2voto

vinny Points 1543

Dans vos rapports où l'en-tête ne se répète pas, avez-vous supprimé la ligne d'en-tête par défaut dans le tableau matriciel? Une fois que j'ai fait cela, quel que soit le réglage que j'ai essayé, l'en-tête du tableau ne pouvait plus être répété. Je devais recréer le tableau pour le faire fonctionner.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X