Beliebige Tabelleninhalte in Reporting Services addieren

Heute hatte ich einen Fall bei dem ich innerhalb einer Reporting Services Tablix eine Summe bilden sollte. Das alleine ist nicht besonders herausfordernd. Schwieriger wird es allerdings, wenn es sich bei den zu summierenden Werten um Werte handelt die innerhalb der Tablix selbst durch eine nicht-additive Aggregatsfunktion entstehen und somit auch nicht die Summe über das Dataset gezogen werden kann. Bei mir entstanden die Werte innerhalb der Tablix über die Funktion FIRST. Würde ich in diesem Fall die Summe über das Dataset ziehen hätte ich einen viel zu hohen Wert.

Die Lösung dieser Aufgabe liegt in VBA-Code den man hinter den Bericht legt. Die Idee: Man deklariert eine Variable und addiert in einer VBA-Funktion alle Werte auf diese Variable. Dann kann man diesen Wert später in der Summenzeile anzeigen.

Der VBA-Code sieht wie folgt aus. Zunächst die Variablendeklaration:

022415_1652_BeliebigeTa1

Dann die Funktion

022415_1652_BeliebigeTa2

Im Bericht schreibt man dann in das Feld in dem die zu addierenden Werte angezeigt werden den folgenden Ausdruck:

022415_1652_BeliebigeTa3

Und dort wo die Summe erscheinen soll kommt dieser Ausdruck hin:

022415_1652_BeliebigeTa4

Und schon werden die Zahlen, die über das Dataset nicht additiv sind, summiert.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

%d Bloggern gefällt das: