Liebe Datenanalysten,
mancher, der über Lehrbuchweisheiten spricht oder schreibt, tut das mit einem etwas geringschätzigen Unterton. Warum nur? Wir finden es oft lohnenswert, ein gutes Lehrbuch zurate zu ziehen. Und manchem, der sich an Visualisierung versucht, täte gar ein neuerlicher Blick ins Schulbuch gut. In der 7. Klasse erfahren Kinder, was von Flächendiagrammen zu halten ist. In der 5. Klasse ist Mengenlehre dran. Da lernt man, wie nützlich es ist, Mengen einen Namen zu geben: Dann muss man ihre Elemente nicht jedes Mal aufzählen, wenn man sie braucht. Wirtschaftspolitiker und Volkswirte wissen das noch. Wie viel Zeit bliebe ihnen, sich ums Geld zu kümmern, hätten sie nicht die Geldmenge M3 definiert, sondern müssten stets über den „Bargeldumlauf plus täglich fällige Einlagen plus Einlagen mit vereinbarter Laufzeit bis … und Einlagen mit vereinbarter Kündigungsfrist bis … plus Anteile an Geldmarktfonds, Repoverbindlichkeiten, Geldmarktpapieren und Bankschuldverschreibungen mit einer Laufzeit bis …“ diskutieren? Auch im Berichtswesen können wir von solch hilfreichen Konstrukten profitieren: Da gibt es die benannten Mengen oder Named Sets aus dem MDX-Standard. Mit DeltaMaster sind sie kinderleicht zu nutzen und sparen uns viel Zeit. Nehmen Sie diese Fibel zur Hand und probieren Sie es einmal aus, und schon bald werden sie sie zu schätzen wissen, die benannten Mengen und die gewonnene Zeit – für inhaltliche Diskussionen oder um mal wieder ein gutes Buch zur Hand zu nehmen.
Herzliche Grüße
Ihr Team von Bissantz & Company
Seit geraumer Zeit machen wir uns stark für eine „Industrialisierung“ des Berichtswesens (Industriereporting), mit dem Ziel, die Effizienz in der Berichtserstellung weiter zu steigern. Inspiration dafür liefern immer wieder Disziplinen wie die Ingenieurwissenschaften oder die Informatik. In beiden kennt man die Wiederverwendbarkeit als ein wichtiges Konstruktions- bzw. Entwicklungsziel, um die Produktion bzw. Programmierung wirtschaftlicher zu machen und die Qualität zu sichern.
Wiederverwendung ermöglicht DeltaMaster an vielen Stellen. In dieser Ausgabe der clicks! konzentrieren wir uns auf benannte Mengen (Named Sets). Diese nützliche Funktion erspart Ihnen viel Zeit, wenn Sie beispielsweise neue Pivottabellen, berechnete Elemente oder benutzerdefinierte Analysewerte erstellen möchten. Auch im Berichtsserver stehen sie zur Verfügung, um individuelle Reports für eine wohldefinierte Menge von Elementen zu generieren.
Benannte Mengen abstrakt
Unter einer benannten Menge versteht man einen Abfrageausdruck (in der Sprache MDX), der eine Menge von Dimensionselementen oder Analysewerten zurückgibt und der mit einem handlichen Namen versehen ist.
Das könnten etwa nach bestimmten Kriterien dynamisch ausgewählte Kunden oder Artikel sein.
Durch den Namen kann man den Ausdruck leicht in verschiedenen Abfragen benutzen und wiederverwenden, zum Beispiel in mehreren Pivottabellen oder in anderen MDX-Berechnungen. Änderungen an der Definition werden automatisch überall dort berücksichtigt, wo der Name verwendet wird. Anstelle der Bezeichnung „Named Set“, wie es im MDX-Standard heißt, hat sich bei einigen Datenbanken eine eigene Nomenklatur durchgesetzt. So spricht man bei Infor PM OLAP (MIS Alea) und IBM Cognos (Applix) TM1 auch von „Subsets“ und bei Oracle von „Value Sets“.
Benannte Mengen können Sie zum einen ab der Stufe Pivotizer in DeltaMaster erstellen; darauf liegt hier unser Hauptaugenmerk. Zum anderen ist DeltaMaster bei etlichen Datenbanken in der Lage, benannte Mengen automatisch aus dem zugrunde liegenden OLAP-Würfel in das Analysemodell aufzunehmen. So steht etwa ein in einer TM1-Datenbank angelegtes Subset unmittelbar für Analysen und Berichte in DeltaMaster zur Verfügung.
Klingt ziemlich abstrakt? Stimmt – und das ist hier auch gut so; ein gewisses Maß an Abstraktion ist eine Voraussetzung für Wiederverwendbarkeit. Aber machen wir es konkret und zeigen an einem Beispiel, wie Sie mit benannten Mengen arbeiten.
Konkret anonym
Nehmen wir an, Sie möchten einen bestimmten Teil Ihrer Kundschaft speziell im Blick halten: diejenigen, mit denen es in der vorherigen Periode einen nennenswerten Umsatz gab (größer 10.000), die in der aktuellen Periode diesen Wert aber (noch) nicht erreicht haben, also eine negative Vorperiodenabweichung aufweisen; das Ganze absteigend sortiert nach dem früheren Umsatz. Für eine solche Pivottabelle benötigen wir zwei Filterwerte, den Vorperiodenumsatz und die Vorperiodenabweichung des Umsatzes. Sie gehen in die Achsendefinition der Kundendimension als Filter ein. Die Sortierung ist auf der Registerkarte Ranking eingestellt. Unter Allgemein haben wir die Ebenenauswahl aktiviert und nur die tiefste Ebene selektiert, den einzelnen Kunden.
Zugegeben: Das ist keine besonders komplexe Abfrage. Aber selbst in diesem einfachen Beispiel – möchte man wirklich all die Kriterien noch einmal auswählen, wenn für dieselben Kunden die Plan-Ist-Abweichungen gefragt sind, anstelle eines Vorperiodenvergleichs? Wenn für genau diese Kunden die von ihnen abgenommenen Produktgruppen ausgewertet werden sollen? Wenn für jeden von ihnen individuell eine Absatzstatistik zu erzeugen ist? Nein. Für diese Zwecke wäre es doch praktisch, wenn wir um das beschriebene Marktsegment „eine Klammer legen“ und ihm einen Namen geben könnten. Und genau das ermöglichen die benannten Mengen: Sie erlauben es, die komplette Achsendefinition abzuspeichern und zum Beispiel in anderen Pivottabellen dynamisch wieder aufzugreifen. Dynamisch bedeutet: Wenn Sie etwa eine Ebenenauswahl mit einigen Filterregeln speichern, bleibt diese auch in anderem Zusammenhang eine dynamische Ebenenauswahl mit denselben Filterregeln und wird nicht etwa zu einer expliziten Aufzählung der momentanen Abfrageergebnisse.
Mengen benennen
Die Optionen für Named Sets finden Sie in der Achsendefinition rechts oben im Menü Ich möchte. Hier speichern Sie die neue Menge, um sie dauerhaft referenzierbar zu machen.
Im (hier reduzierten) Editor für benannte Mengen geben Sie einen Namen und am besten auch eine Beschreibung ein. In beiden Feldern müssen Sie auf Leerzeichen, Umlaute oder Sonderzeichen nicht verzichten, denn der hier vergebene Name dient primär der Anzeige in Dialogen, Menüs sowie im MDX-Editor, einem Baustein von DeltaMaster, der überall dort verfügbar ist, wo MDX-Ausdrücke verwendet werden können. Der MDX-Editor ersetzt die von Ihnen festgelegten Namen durch intern und automatisch erzeugte technische Bezeichner, sodass Sie die Felder getrost in natürlicher Sprache und Syntax ausfüllen können.
Sobald Sie die Definition als benannte Menge gespeichert haben, erscheint deren Name unterhalb des Menüs Ich möchte. So erkennen Sie auf einen Blick, ob die Einstellungen auf den Registerkarten Allgemein, Ranking, Filter, Elementeigenschaften und Optionen nur für die aktuelle Achsendefinition gelten oder ob sie sich aus einer benannten Menge ergeben.
Das Speichern ist für die Ebenenauswahl, wie in diesem Beispiel, ebenso wie für die Elementauswahl und für benutzerdefinierte MDX-Ausdrücke möglich.
Wiederverwendung in der Pivottabelle
Über das Menü Ich möchte rufen Sie die benannten Mengen wieder ab. DeltaMaster stellt dann genau die Parameter in der aktuellen Achsendefinition ein, die Sie in der benannten Menge hinterlegt hatten. So lässt sich in einer neuen Pivottabelle sehr komfortabel und schnell eine bereits vorhandene Auswahl wiederverwenden. Selbstverständlich können Sie über den Abruf der benannten Menge zunächst eine Vorbelegung für die Achsendefinition einstellen und diese anschließend für die einzelne Pivottabelle modifizieren. Das Ändern von Einstellungen bewirkt, dass die Achsendefinition nicht mehr an die Menge gebunden und von späteren Änderungen an der Mengendefinition nicht betroffen ist.
Da jede Achse einer Pivottabelle stets eine Dimension wiedergibt, können in der Achsendefinition nur Named Sets mit genau einer beteiligten Dimension verwendet werden. Deshalb erscheinen im Menü Ich möchte nur die Mengen, die zu der Dimension der aktuellen Achse passen. Haben Sie beispielsweise zusätzlich einige Mengen aus der Produktdimension gespeichert, so zeigt DeltaMaster diese nicht an, wenn Sie eine Achsendefinition für die Kundendimension bearbeiten. (Prinzipiell dürfen sich benannte Mengen aber durchaus auch mehrere Dimensionen berühren.)
Verwaltung mit dem Benannte-Mengen-Browser
Eine Übersicht über alle benannten Mengen liefert der Benannte-Mengen-Browser (Menü Modell). Er führt alle von Ihnen erzeugten sowie die aus der OLAP-Datenbank übernommenen Named Sets auf und ermöglicht das Umbenennen, das Ändern der Beschreibung, das Löschen und das Bearbeiten der Eigenschaften (Kontextmenü, Menü Ich möchte).
Wenn Sie die Alt-Taste auf der Tastatur gedrückt halten und mit der Maus auf eine Menge zeigen, erscheint als „Tooltipp“ der automatisch erzeugte technische Name (im Beispiel „[namedset 3]“). Diesen können Sie in eigenen MDX-Ausdrücken verwenden.
Die in der Abbildung ganz oben gezeigten „Fokusprodukte“ stammen aus der Datenbank, zu erkennen am Scope „Global“. Sie können in DeltaMaster nicht verändert werden, wohl aber ist über die Eigenschaften (Kontextmenü, Menü Ich möchte) ihre Definition ersichtlich. Über die Eigenschaften erkennen Sie auch die Abhängigkeiten einer Menge: welche anderen berechneten Objekte sie verwendet („Stückliste“), welche anderen berechneten Objekte sie verwenden („Verwendungsnachweis“) und in welchen Cockpits, Analysevorlagen, Berichten und Sichten sie vorkommt.
Zum Ändern oder Anlegen von Named Sets aus dem Benannte-Mengen-Browser heraus präsentiert Ihnen DeltaMaster den vollständigen Editor für benannte Mengen. Er ähnelt in Aufbau und Funktionsweise sehr der Achsendefinition, mit dem großen Unterschied, dass hier zusätzlich die Dimension ausgewählt werden kann, in der die Mengendefinition gelten soll.
Wiederverwendung in MDX-Ausdrücken
Auch in benutzerdefinierten Analysewerten, berechneten Elementen und in benutzerdefinierten MDX-Ausdrücken in Achsendefinitionen können Sie mit den benannten Mengen weiterarbeiten. Als Beispiel dient erneut unsere oben beschriebene Kundenauswahl: Gewünscht sei eine neue Kennzahl, die sichtabhängig deren Umsatz angibt. Das haben wir, wie nebenstehend abgebildet, mit einem benutzerdefinierten Analysewert realisiert. Der MDX-Ausdruck „Aggregate([namedset 3], #1)“ verwendet die Aggregate()-Funktion zum Summieren über die Kunden. Als Funktionsparameter übergeben wir zum einen den Analysewert „Umsatz“, den wir aufaddieren möchten, und zum anderen die Elemente, zu denen uns der Umsatz interessiert. Das ist genau die benannte Menge, die wir zuvor über die Pivottabelle definiert hatten. Den technischen Namen „[namedset 3]“ müssen wir nicht eingeben – wir haben einfach den Eintrag „Kunden: relevante VP-Abweichler“ aus dem unteren Bereich des MDX-Editors per „Drag & Drop“ in das Textfeld gezogen. DeltaMaster hat daraufhin den zugehörigen Bezeichner selbsttätig eingefügt.
Ein weiteres Beispiel zeigt, dass benannte Mengen nicht nur in anderen MDX-Ausdrücken vorkommen, sondern selbst frei in MDX formuliert werden können. Die Menge „Kunden: alle außer Auswahl“ ist definiert als „Except([Kunden].[Kunde], <view>)“. Sie liefert in der Kundendimension alle Elemente zurück, außer denen, die jeweils im Fenster Sicht ausgewählt sind. Vielleicht legen Sie diese Menge gleich in Ihrer Anwendung an – eine „Invertierung“ der Auswahl ist immer wieder einmal nützlich.
Wiederverwendung im Berichtsserver
Auch der Berichtsserver kann mit benannten Mengen umgehen. Genauer gesagt: der Berichtsgenerator. Seine Aufgabe ist es unter anderem, all diejenigen Elemente durchzugehen (zu iterieren), für die jeweils ein eigener Report zu erstellen ist. Das Feld Bericht je Element aus im Berichtsgenerator, in dem die Iteration eingestellt wird, akzeptiert auch MDX-Ausdrücke – und deshalb eben auch benannte Mengen. Achten Sie darauf, dass die ausgewählte Quelldimension zu der benannten Menge passt.
In unserem Beispiel können wir so für jeden Kunden, der uns im Moment besonders am Herzen liegt, detaillierte Zusatzreports generieren lassen, ohne großes Zutun und stets aktuell.