2017-06-24 14 views
1

Ich versuche, eine Kopfzeile für eine Matrix in meinem SSRS-Bericht zu erstellen. Derzeit meine Matrix wie folgt konfiguriert ist:Erstellen Sie eine Kopfzeile in SSRS

Matrix

Wenn ich Recht + klicken, um eine neue Zeile hinzuzufügen, wird es eine Zeile einfügen oben, aber ich kann die ganze Reihe von Zellen nicht verschmelzen, um eine einzelne Zeile zu bilden, die Gruppierungsspalten bleiben getrennt:

AddedRow

Meine Arbeit-around hat ein Textfeld über der Matrix zu addieren, sondern die Zeilen zusammen in einem Seitenumbruch nicht halten:

Work-Around

Kann die Kopfzeile hinzugefügt werden? Und wenn ja, was wäre ein guter Weg, um diese Aufgabe zu erfüllen?

+1

Ich denke, es ist bereits hier https: // stackoverflow beantwortet.com/questions/11285923/tablix-repeat-header-rows-auf-jeder-seite-not-working-report-builder-3-0 – niktrs

Antwort

0

Ich hatte das gleiche Problem! Ich wünschte, sie würden Sie über den Zeilenkopf zusammenführen lassen; oder füge einen neuen Matrixbereich namens "title" hinzu.

Meine Tablix hatte auch dynamische Spalten, also brauchte ich die Breite der Box auf der Oberseite, um mit dem Rest der Tabelle zu erweitern und zusammenzufallen.

Es gibt zwei Möglichkeiten, wie Sie damit umgehen kann (die ich kenne)

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 

Zu meinem Problem löse ich beide versucht. Zuerst fügte ich die Liste mit einer Spalte und zwei Zeilen hinzu und kopierte die gesamte Tabelle in die zweite Zeile. Die erste Zeile der äußeren Liste ist nun zentriert und überspannt die gesamte Tabelle. Es war unordentlich, weil ich dynamische Spalten mit einem Schalter für Sichtbarkeit hatte. Die äußere Liste musste Spalten enthalten, die mit der auf denselben Schalter gesetzten Sichtbarkeit übereinstimmten. Es war deswegen eine chaotische Arbeit.

Ich entschied mich, die zweite Methode oben zu versuchen und neue Spalten auf der anderen Seite der Zeilenkopfzeile einzufügen.

Die Herausforderung besteht darin, dass Zeilenkopfgruppenbezeichnungen für jede Zeile wiederholt werden ... in Ihrem Beispiel würde RoleID jede Detailzeile wiederholen. Ich habe einen Ausdruck erstellt, der nur angezeigt wird, wenn es die erste Zeile der Gruppe war.

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

ich einen Ausdruck verwendet, um nur die Grenze zu zeigen, wenn es die letzte Zeile in der Gruppe:

= IIF (RowNumber ("roleid_group") = CountRows ("roleid_group"), "Solid", "None")

Dies gibt die Illusion einer gruppierten Reihe. Löschen Sie die Spalten der Zeilenüberschriften (Spalte 1 und 2) erst, wenn Sie sie richtig verwenden, da es schwierig ist, sie wieder hinzuzufügen. Vorsicht: Diese Methode funktioniert jedoch nicht gut, wenn der Text des Zeilentitels umbrochen werden muss. (Die erste Reihe der Gruppe wird breiter - die Höhe wird eingestellt, um zu wachsen.)

Wenn es einen anderen Weg gibt würde ich gerne wissen. Diese sind beide etwas schwierig, aber die Aufgabe erledigt.

+0

Interessant - Ich werde versuchen, was Sie vorgeschlagen haben, um zu sehen, ob ich es bekommen kann arbeiten. – MISNole

Verwandte Themen