CiAgICA8IS0tIExpbmtlZEluIC0tPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgIF9saW5rZWRpbl9wYXJ0bmVyX2lkID0gIjEyMzUwNzMiOwogICAgICAgIHdpbmRvdy5fbGlua2VkaW5fZGF0YV9wYXJ0bmVyX2lkcyA9IHdpbmRvdy5fbGlua2VkaW5fZGF0YV9wYXJ0bmVyX2lkcyB8fCBbXTsKICAgICAgICB3aW5kb3cuX2xpbmtlZGluX2RhdGFfcGFydG5lcl9pZHMucHVzaChfbGlua2VkaW5fcGFydG5lcl9pZCk7CiAgICA8L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgICAgICAgKGZ1bmN0aW9uKCl7dmFyIHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF07CiAgICAgICAgICAgIHZhciBiID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7CiAgICAgICAgICAgIGIudHlwZSA9ICJ0ZXh0L2phdmFzY3JpcHQiO2IuYXN5bmMgPSB0cnVlOwogICAgICAgICAgICBiLnNyYyA9ICJodHRwczovL3NuYXAubGljZG4uY29tL2xpLmxtcy1hbmFseXRpY3MvaW5zaWdodC5taW4uanMiOwogICAgICAgICAgICBzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGIsIHMpO30pKCk7CiAgICA8L3NjcmlwdD4KICAgIDxub3NjcmlwdD4KICAgICAgICA8aW1nIGhlaWdodD0iMSIgd2lkdGg9IjEiIHN0eWxlPSJkaXNwbGF5Om5vbmU7IiBhbHQ9IiIgc3JjPSJodHRwczovL3B4LmFkcy5saW5rZWRpbi5jb20vY29sbGVjdC8/cGlkPTEyMzUwNzMmZm10PWdpZiIgLz4KICAgIDwvbm9zY3JpcHQ+CiAgICA8IS0tIEVuZCBMaW5rZWRJbiAtLT4KICAgIA==
Generic filters
Exact matches only
Search in title
Search in excerpt
Search in content

Startzeitpunkt von Sparklines automatisch bestimmen

PDF Download

Liebe Datenanalysten,

aller Anfang ist schwer, lehrt ein Sprichwort, das es schon gab, bevor Sparklines erfunden waren. Und doch gilt es auf seine Weise für Sparklines: Ihr Ende ist schließlich wohlbekannt, immer die aktuelle Periode – aber wo fangen sie an? Wie verhalten sie sich, wenn man ihr Ende verschiebt, indem man den Bericht etwa auf einen neuen Monat aktualisiert? Wandert der Beginn der Sparkline mit oder bleibt er fix? Was ist mit Jahreswechseln? Solche Fragen sind zu klären; vieles hängt davon ab, wie der Bericht verwendet werden soll. Zum Glück hat DeltaMaster langjährige Erfahrung mit Sparklines und ist darauf vorbereitet, Anfang und Länge dynamisch zu bestimmen, abhängig von der aktuellen Periode. Manches stellen Sie einfach als Option ein, für verzwicktere Fälle greifen Sie zu MDX. Und das ist mit den Erläuterungen in diesen clicks! gar nicht so schwer, wie es sich anfangs anhören mag.

Herzliche Grüße
Ihr Team von Bissantz & Company

 

Je weniger bei der Aktualisierung von Standardberichten anzupassen ist, desto besser – umso mehr Zeit bleibt für tiefer gehende Analysen. Sind aktuelle Daten in der Datenbank vorhanden, sollte es im Idealfall genügen, in der Zeitdimension den neuen Monat auszuwählen, um einen Bericht auf den neuesten Stand zu bringen. DeltaMaster bietet etliche Funktionen, mit denen sich ein solcher Automationsgrad erzielen lässt, besonders, wenn es um die Zeitdimension geht. Für einen Vorperiodenvergleich beispielsweise haben sich Zeitanalyseelemente bewährt (siehe DeltaMaster clicks! 08/2007). Von der aktuellen Periode ausgehend, ermitteln sie automatisch die vorherigen Perioden, fragen deren Werte ab, berechnen Abweichungen usw. Auch Sparklines lassen sich in diesem Sinne dynamisch definieren: Wählt der Anwender eine andere Periode aus, so verschiebt DeltaMaster den Startzeitpunkt der Sparkline oder macht sie länger bzw. kürzer. Um diese Automatismen geht es im Folgenden. Wir konzentrieren uns dabei auf Pivottabellen, das wichtigste Format im Standardreporting. Im Flexreport lassen sich Sparklines ebenfalls dynamisch definieren; das wollen wir hier aber ausklammern.

Ab wann und wie lang?

Das Ende einer Sparkline ist immer die aktuelle Periode – damit meinen wir dasjenige Element, das im Fenster Sicht in der Zeitdimension ausgewählt ist. In welcher Periode eine Sparkline beginnt und wie viele Perioden sie umfassen soll, richtet sich nach den Tabelleneigenschaften (Kontextmenü oder Menü Ich möchte). Auf der Registerkarte Sparklines sind vier Varianten vorgesehen.

Festlegung der Zeitdimension, Beginn dieser Zeitdimension und Kontrollkästchen für MDX-Ausdruck für Startelement, alles auf der Registerkarte Sparklines

  • Beginn bei erstem Datenwert: DeltaMaster sucht die früheste Periode, in der einer der betreffenden Analysewerte einen Wert hat (nicht Null ist). Nützlich ist diese Option etwa, um den „Füllstand“ der Datenbank zu untersuchen. Das Startelement der Sparkline ist unabhängig von der aktuellen Periode, diese wirkt nur auf die Länge der Sparkline.
  • Beginn bei …: In der Auswahlliste bietet DeltaMaster alle Elemente der Ebene an, zu der die aktuelle Periode gehört, zum Beispiel alle Monate, wenn in der Sicht ein Monat ausgewählt ist. Die Liste endet mit der aktuellen Periode. Diese Option wählt man, wenn eine Entwicklung ab einem konstanten Datum fortgeschrieben werden soll, zum Beispiel ab einem Meilenstein oder einem Referenzzeitpunkt in einer Messreihe. Die aktuelle Periode beeinflusst wiederum nur die Länge der Sparkline.
  • Länge … Perioden: Vermutlich die häufigste Variante – eine gleitende Rückschau, die vom aktuellen Zeitpunkt aus die jeweils letzten x Perioden einbezieht. Hier variiert das Startelement der Sparkline mit der aktuellen Periode; die Länge ist konstant. Die Voreinstellung für neue Berichte wirkt auf den ersten Blick kurios: 13 Perioden. Dieser Wert berücksichtigt, dass Sparklines meist für Monatswerte eingesetzt werden. Mit 13 Monaten ist der entsprechende Kalendermonat des Vorjahres ebenfalls enthalten, sodass Vorjahresperiodenvergleiche möglich sind. Ist beispielsweise der September 2012 als aktuelle Periode ausgewählt, so reicht eine Sparkline mit der Länge 13 zurück zum September 2011.
  • MDX-Ausdruck für Startelement: In dieser Variante müssen weder eine konstante Länge noch ein konstanter Beginn festgelegt werden; stattdessen wird das Startelement berechnet. Wie immer reicht die Sparkline bis zur aktuellen Periode. Mit MDX sind auch ebenenabhängige Definitionen möglich, wie unten in Beispiel 1: Falls als aktuelle Periode ein Monat ausgewählt ist, werden 13 Elemente berücksichtigt; falls ein Quartal ausgewählt ist, nur 5.

Mit der letzten Variante sind besonders raffinierte Sparklines möglich. Deshalb wollen wir diesen Fall anhand von zwei Beispielen erläutern, die Sie leicht in Ihre eigenen Anwendungen übernehmen können.

MDX-Ausdruck bearbeiten

Um den MDX-Ausdruck zu bearbeiten, klicken Sie in den Tabelleneigenschaften auf den entsprechenden Link hinter der Option. Es öffnet sich der bekannte MDX-Editor. Im oberen Bereich des Fensters können Sie den Ausdruck erfassen, links unten werden die Modellbestandteile angezeigt, zum Beispiel Dimensionen und Analysewerte, und rechts unten eine Übersicht über die verfügbaren MDX-Funktionen.

MDX-Editor

Für den MDX-Ausdruck gelten drei Bedingungen: Erstens muss die Rückgabe des Ausdrucks vom Typ „Member“ sein, also ein Dimensionselement; zweitens muss das zurückgegebene Element zu derselben Ebene gehören wie die aktuelle Periode; drittens muss das Element vor der aktuellen Periode liegen.

Beispiel 1: Sparkline ab Vorjahresmonat oder Vorjahresquartal

Der folgende Ausdruck wählt als Startzeitpunkt der Sparkline die entsprechende Periode des Vorjahres. Dabei wird die Ebene der aktuellen Periode berücksichtigt.

— ein Jahr zurück, selbe Ebene
ParallelPeriod([Periode].[Periode].[Jahr], 1, <view2>)

Wenn Sie diesen Ausdruck übernehmen möchten, beachten Sie bitte die Hinweise im letzten Abschnitt dieser clicks!.

Die Wirkung dieses Ausdrucks ist in dieser und der nächsten Abbildung zu sehen. Zunächst ist als aktuelle Periode der Mai 2012 eingestellt. Daraus leitet der MDX-Ausdruck den Mai 2011 als Startelement ab, wie der Statusleiste zu entnehmen ist.

Bericht mit Sparklines ab Vorjahresmonat

Schaltet man im Fenster Sicht auf das 2. Quartal 2012 um, passt sich die Sparkline automatisch an: Sie beginnt jetzt im entsprechenden Quartal des Vorjahres und umfasst damit auch nur noch 5 Säulen (statt 13, wie bei den Monaten).

Bericht mit Sparklines ab Vorjahresquartal

Beispiel 2: Sparkline ab Jahresbeginn

Der folgende Ausdruck liefert das erste Element des Jahres und der Ebene, zu der das im Fenster Sicht ausgewählte Element gehört – also etwa den ersten Monat des Jahres, wenn ein Monat ausgewählt ist, oder das erste Quartal des Jahres, wenn ein Quartal ausgewählt ist. Diese Sparkline „wächst“ im Laufe des Jahres und setzt sich beim Jahreswechsel automatisch zurück.

— aktuelles Jahr, erstes Element der aktuellen Ebene
Descendants(Ancestor(<view2>, [Periode].[Periode].[Jahr]), <view2>.Level).Item(0).Item(0)

Wieder beachten Sie die Hinweise im letzten Abschnitt dieser clicks!, wenn Sie diesen Ausdruck übernehmen möchten.

Die Abbildung zeigt eine beliebte Anwendung für Sparklines, die automatisch mit der ersten Periode des aktuellen Jahres beginnen. Der Umsatz oder eine andere Kennzahl soll kumuliert angezeigt werden („Year-to-date“) und eine Sparkline soll die Einzelwerte zeigen, die in die kumulierte Kennzahl eingegangen sind. Die wichtigste Größe, der kumulierte Wert, wird explizit angegeben und die Teile, aus denen er sich zusammensetzt, stehen komprimiert in Form einer Sparkline zur Verfügung.

Grafische Tabelle mit Sparklines

Ab und zu taucht bei solchen Tabellen die Frage auf, ob wirklich zwei Zahlenwerte angezeigt werden müssen (einer für die Kumulation, ein zweiter für die aktuelle Periode) – oder ob man nur für die Kumulation den Zahlenwert anzeigen und die Sparkline für die Einzelwerte ohne Zahl dahinter zeichnen könnte. Die Konventionen, wie Sparklines zu interpretieren sind, geben eine eindeutige Antwort: Nein, die Sparkline mit den Einzelwerten kommt nicht ohne Zahl aus; ja, beide Zahlenwerte sind nötig. Denn: Eine Sparkline ist nicht bloß eine kleine Zeitreihe – die Zahl dahinter gehört dazu. Ohne sie funktioniert die Sparkline nicht. Die Zahl ist die Beschriftung des letzten Punkts bzw. der letzten Säule. Sie entspricht dem Wert der aktuellen Periode und verleiht der Sparkline damit den nötigen „Halt“. Erst die Zahl ermöglicht eine grobe Abschätzung, für welche Werte die anderen Punkte bzw. Säulen stehen. Es würde den Leser in die Irre führen, gäbe man anstelle des Werts der aktuellen Periode den kumulierten Wert an: Wie immer würde der Leser die Zahl dem letzten Punkt bzw. der letzten Säule zuordnen und die vorherigen Punkte/Säulen entsprechend falsch taxieren. In ihrem Sparkline-Duden bringt es Bella, unsere Beraterin in allen Darstellungsfragen, auf den Punkt: „Eine Sparkline ohne Zahl dahinter ist keine Sparkline.“ (https://www.bissantz.de/bella-beraet/sparkline-duden)

In der vorherigen Abbildung ist es richtig: Beide Zahlenwerte sind angegeben. Die Sparkline für den kumulierten Umsatz ist ausgeblendet (Spalteneigenschaften im Kontextmenü des Spaltenkopfs), denn Sparklines für kumulierte Werte sind meist nur bei Abweichungswerten ergiebig. Beim Umsatz und ähnlichen Größen hingegen entstehen uninteressante Dreiecke oder Sägezahnmuster.

Zeitdimension und Platzhalter „<viewX>“

Die beiden MDX-Beispiele können Sie kopieren und in eigene Analysesitzungen übernehmen. Dabei sind zwei Dinge anzupassen: der Name der Zeitdimension bzw. der Jahresebene (im Beispiel „[Periode].[Periode].[Jahr]“) und der Platzhalter für die aktuelle Periode (im Beispiel „<view2>“).

Mit diesem Platzhalter hat es Folgendes auf sich: Im MDX-Ausdruck bestimmt man das gewünschte Startelement in der Regel ausgehend von dem Element, das in der Zeitdimension gerade ausgewählt ist. Dieses Element wird mithilfe des Platzhalters „<viewX>“ in den MDX-Ausdruck eingesetzt, wobei das „X“ für die eindeutige Kennung der Dimension steht (Dimensions-Id). Diese Id ist vom jeweiligen Datenmodell abhängig.

Welche Id die Zeitdimension in Ihrem Modell hat, können Sie im MDX-Editor feststellen: Wenn Sie im Bereich links unten bei gedrückter Alt-Taste mit der Maus auf die gewünschte Dimension zeigen, erscheint die Id in einem „Tooltipp“. In unserem Beispiel hat die Zeitdimension die Id 2. Der Platzhalter, der für das jeweils ausgewählte Zeitelement steht, heißt daher „<view2>“.

Tooltipp im MDX-Editor

Die Beispiele oben enthalten einen kurzen Kommentar, der, wie in MDX üblich, von zwei Minuszeichen eingeleitet wird („–“). Sie kennzeichnen, dass der Rest der Zeile ein Kommentar ist. Diesen Kommentar können Sie mitkopieren, um die Definition zu dokumentieren.