Ein einfaches Beispiel
Im vorliegenden Beispiel sehen Sie zwei Tabellen, in denen die Umsätze unterschiedlicher Länder dargestellt werden. Der Bericht soll nun noch um ein Textfeld erweitert werden, das die Summe der beiden "Total" Zellen berechnet.
Das Textfeld rechts unten zeigt die Summe der "Total"-Zellen der beiden Tabellen an |
Der Name dieser TextBox wird geändert nach "SummeTablix1" |
=ReportItems!SummeTablix1.Value + ReportItems!SummeTablix2.Value
Die hier verwendete ReportItems Collection enthält alle TextBoxen einer Berichtsdatei. Allerdings ist sie an der grafischen Oberfläche nicht sichtbar. Sie müssen einfach wissen, dass es diese Collection gibt und dann können Sie diese in einer Expression eintippen. Lassen Sie sich nicht irritieren - erst nachdem Sie das Ausrufezeichen nach dem Wort "ReportItems" eingegeben haben, erscheint die Drop-Down Liste als Eingabeunterstützung und bietet Ihnen die Namen aller TextBoxen in diesem Bericht zur Auswahl an. Dies ist der Punkt, wo sich die sprechenden Namen der betreffenden TextBoxen als nützlich erweisen.
Erst nach Eingabe des Ausrufezeichens hinter dem Wort ReportItems nimmt die Eingabehilfe ihre Arbeit auf |
Wenn sie diese Hürde genommen haben, ist es ein Leichtes den Ausdruck vollständig einzugeben.
Noch ein Beispiel
Sie möchten in einer Tabelle Verhältniszahlen berechnen? Mit ReportItems ist das kein Problem mehr. Nehmen wir folgende Anforderung als Beispiel: Neben dem Umsatz eines Jahres soll sein prozentualer Anteil am Umsatz aller Jahre angezeigt werden.Der "Sales Amount" für das Jahr 2005 entspricht 20% des "Sales Amount" über alle Jahre |
Der Ausdruck in der Spalte "% Umsatz" ist der Umsatz eines Jahres geteilt durch die Summe des Umsatzes über alle Jahre:
=ReportItems!SalesAmount1.Value / ReportItems!SummeTablix1.Value
ReportItems in Kopf- und Fußzeilen
Noch ein schöner Anwendungsfall ist der Einsatz von ReportItems in Kopf- oder Fußzeilen eines Berichts. Nehmen wir an, in der Kopfzeile soll das erste und das letzte Jahr angezeigt werden, das auf der jeweiligen Seite zu sehen ist. Um das besser demonstrieren zu können, habe ich meinen Beispiel-Bericht so verändert, dass nur noch maximal 3 Jahre auf einer Seite dargestellt werden. (Hierfür habe ich einfach in der Eigenschaft des Berichts "InteractiveSize" die Höhe auf 3 Zentimeter reduziert.)In der Kopfzeile werden die erste und die letzte Jahreszahl auf dieser Seite angezeigt |
="Von " & First(ReportItems!OrderYear.Value) & " bis " & Last(ReportItems!OrderYear.Value)
Die Fehlermeldung besagt, dass Sie in Kopf- und Fußzeilen pro Ausdruck jeweils nur ein ReportItem verwenden dürfen.
Zur Lösung könnten Sie zwei nahe nebeneinander gelegene TextBoxen verwenden. Noch eleganter finde ich allerdings die Verwendung von zwei Platzhaltern in derselben TextBox. Jeder Platzhalter wird über einen eigenen Ausdruck mit Inhalt gefüllt.
Eine TextBox kann mehrere Platzhalter enthalten |
="Von " & First(ReportItems!OrderYear.Value) & " bis "
Der zweite Platzhalter enthält diesen Ausdruck:
=Last(ReportItems!OrderYear.Value)
Voilá!