Arno Cebulla

In diesem Teil der Reihe geht es um dieses Chart:

Es besteht aus drei einzelnen Charts, von denen das linke Chart die leichteste Übung ist. Es handelt sich um ein normales und nicht verändertes Bar-Chart. In der Entwurf-Ansicht wird deutlich, welche Daten dafür verwendet wurden:

Widmen wir uns also den anderen beiden Charts zu. Hier stellt sich die mittig angeordnete 0-Achse als besondere Herausforderung dar. Zunächst wurde das mittlere Chart erstellt:

Als ersten Schritt wird ein Chart vom Typ „Range-Bar“ eingefügt:

Dem Chart wird zunächst der Wert „Actual“ zugewiesen.

Da aber in dem Chart das Delta zwischen „Target“ und „Actual“ dargestellt werden soll, wird für den „High“-Wert diese Expression eingefügt:

=(Fields!Target.Value-Fields!Actual.Value)/1000

Der Wert für „Low” wird nicht gefüllt.

Wie im Chart links wird auch hier die „Category Group“ „Month“ gewählt.

Alle sichtbaren Achsen werden ausgeblendet.  Dafür mit der rechten Maustaste auf das Chart klicken und die Häkchen vor „Show Horizontal Axis“ und „Show Vertical Axis“ herausnehmen:

Nun noch einmal auf die „Actual“-Serie klicken und im Eigenschafts-Fenster unter „CustomAttributes“ die Eigenschaft „PointWidth“ auf 0.7 Punkte festlegen:

Hiermit wird die Balkenstärke verringert.

Die Farbe der Balken wird durch Schwellwerte geregelt. In diesem Beispiel wird in den Properties unter „Appearance“ für die Eigenschaft „Color“ diese Expression verwendet:

=IIF(Fields!Target.Value-Fields!Actual.Value>Fields!Actual.Value*0.1,“Red“,

IIF(Fields!Target.Value-Fields!Actual.Value<Fields!Actual.Value*0.25 ,“Green“,“Yellow“))

Nun fehlt noch die 0-Achse. Hierzu wird ein weiteres Mal dem Chart der Wert „Actual“ zugewiesen. Die Werte für „High“ und „Low“ werden aber nun beide auf „=0“ gesetzt:

 

Als nächstes sind einige Einstellungen in den Eigenschaften dieser Serie erforderlich:

  1. Die Farbe für die Umrandung der Bars („BorderColor“) wird auf „Black“ gesetzt.
  2. Der „BorderStiyle“ wird auf „Solid“ gesetzt
  3. Die Stärke der Linie („BorderWidth“) beträgt nun 2pt
  4. Die Farbe der Bars („Color“) wird auf „No Color“ gesetzt

 

Ganz wichtig zur korrekten Darstellung sind nun die folgenden Änderungen der „CustomAttributes“:

5.  „DrawSideBySide“ wird auf „False“ gesetzt. Hierdurch kann diese Serie die andere Serie „Actual“ übermalen. Die Bars werden dadurch nicht mehr nebeneinander dargestellt

6. Der Wert für „PointWidth“ wird auf 2 festgesetzt

Damit die DataLabels untereinander dargestellt werden, werden die Labels der zweiten Serie aktiviert. Hierzu im Chart mit der rechten Maustaste auf die Bars klicken und den Punkt „ShowDataLabels“ anklicken.

 

Da der Wert der Serie ja auf 0 gesetzt wurde, muss nun mit Rechtsklick auf den Wert die Expression geändert werden:

 

Als Expression wird der gleiche Wert wie im „High“-Wert von „Actual“ eingetragen:

 

Nun sollte der Report beide Charts darstellen können:

Der Aufbau des rechten Charts ähnelt dem des Mittleren.

Zunächst wird ein Range-Bar-Chart erstellt. Als erster Wert wird nun „Target“ hinzugefügt. Auch hier wird der Wert verändert, da hier das Delta in Prozent dargestellt werden soll. Dies geschieht mit dieser Expression:

 

=((Fields!Target.Value*100/Fields!Actual.Value)-100)*0.01

 

Dieser Wert stellt die Linien dar, die von der 0-Achse abgehen. Hierzu werden die Eigenschaften wie folgt geändert:

Durch die Farbe der Bars und der Festlegung der Stärke auf 0.1 pt unter „PointWidth“ wird die Linie gezeichnet. Diese Serie stellt auch das „DataLabel“ dar.

Für die farbigen Endpunkte der Linie wird eine weitere Serie eingefügt:

 

Der „High“-Wert enthält diese Expression:

=((Fields!Target.Value*100/Fields!Actual.Value)-100)*0.01

Der „Low“-Wert wird mit dieser Expression festgelegt:

=IIF((((Fields!Target.Value*100/Fields!Actual.Value)-100)*0.01)>0,(((Fields!Target.Value*100/Fields!Actual.Value)-100)*0.01)-0.05,(((Fields!Target.Value*100/Fields!Actual.Value)-100)*0.01)+0.05)

 

Je nachdem, ob der Prozentwert positiv oder negativ ist, werden 0,05 Punkte abgezogen oder hinzugerechnet.

 

Nun werden die Eigenschaften der Serie angepasst. Zunächst wiederum die „CustomAttributes“:

 

 

Auch hier ist es wiederum wichtig, dass die Eigenschaft „DrawSideBySide“ auf „False“ gestellt wird.

Die Farbgebung der Bars erfolgt wiederum per Expression:

=IIF(Fields!Target.Value-Fields!Actual.Value>Fields!Actual.Value*0.1,“Red“,

IIF(Fields!Target.Value-Fields!Actual.Value<Fields!Actual.Value*0.25 ,“Green“,“Yellow“))

 

Nun wird noch die 0-Achse nach der gleichen Methode wie für das mittlere Chart aufgebaut.

Die Entwurfsansicht sieht danach so aus:

 

In der Vorschau ist nun das Endprodukt zu sehen:

 

Die Serie mit SSRS-Reports nach Hichert wird in Kürze fortgesetzt.