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

Automatisches Generieren von Planungsmappen

Zeitersparnis und Flexibilität bei der Anpassung an organisatorische Veränderungen sind typische Ziele, wenn es um die Erstellung von Planungsanwendungen geht. Viele Unternehmen, bei denen noch Microsoft Excel als Planungswerkzeug zum Einsatz kommt, wünschen sich eine deutliche Beschleunigung beim Aufsetzen personifizierter Planungsmappen. Je mehr Planer an einer Planung beteiligt und je komplexer die Planungsanforderungen sind, desto größer ist der Hebel, der durch eine automatische und datengetriebene Erstellung einer Planung entsteht. Dieser Blogbeitrag erläutert ein Vorgehensmodell zur automatischen Generierung von Planungsmappen.

Aktivierung

Organisationen unterliegen stetigem Strukturwandel. Zu Beginn einer Planungsrunde stellt sich daher stets die Frage nach der Auswahl bzw. Parametrisierung der Planobjekte. Oder einfach ausgedrückt: Wer plant was?

Bevor individuelle Planungsmappen generiert werden können, müssen die Zuordnungen zwischen Planer und Planobjekt klar definiert sein. Den Prozess der Zuordnung, der in aller Regel durch einen Administrator durchgeführt wird, nennen wir Aktivierung. Die Aktivierung basiert auf Aktivierungsflags, die den Wert „1“ oder „0“ bzw. „NULL“ annehmen können. Der Wert „1“ steht für „aktiv“, der Wert „0“ bzw. „NULL“ steht für „inaktiv“. In einer Produkt-Planer-Matrix regelt der Wert „1“ die Verantwortlichkeit des Planers „X“ für das Produkt „Y“. Trägt man in eine solche Planer-Produkt-Matrix eine „1“ ein, dann wird die betreffende Produkt-Planer-Kombination für die Planung aktiviert. So gesehen gleicht die Aktivierung einem ganz normalen Planprozess. Allerdings werden hier keine betriebswirtschaftlichen Kennzahlen, sondern Metadaten erfasst. Diese Metadaten steuern später den automatischen Aufbau der Planungsmappen je Planer. Die folgende Abbildung zeigt eine Aktivierungsmatrix, in der 7 Planprodukte auf 3 Planer verteilt werden.

Im mehrdimensionalen Datenmodell (SQL-Server Analysis Services), das einer Planungsanwendung zugrunde liegt, werden Aktivierungsprozesse mittels eigener Measuregroups modelliert. Measuregroups zur Aktivierung beinhalten in der Regel die Dimension, über die später die verschiedenen Planungsmappen erzeugt werden sollen (beispielsweise Planer), die Dimension, in der die Planobjekte definiert sind (beispielsweise Produkte) und eine Kennzahl, die das Aktivierungsflag repräsentiert (beispielsweise „Zuordnung Planer_Produkt“). Je nach Anforderung und Detaillierungsgrad der Planung können selbstverständlich weitere Dimensionen wie „Wertart“, „Planjahr“ oder „Planperiode“ in der Aktivierung berücksichtigt werden.

Mehrstufige Aktivierung

Die zuvor beschriebene Aktivierung kann in mehreren Schritten erfolgen. In einem ersten Aktivierungsschritt könnten beispielsweise Produkt-Vertriebslinien-Kombinationen aktiviert werden. In einem zweiten Aktivierungsschritt sollen die in Schritt 1 aktivierten Produkte den jeweiligen Planern zugeordnet werden. Im Datenmodell muss es für jeden Aktivierungsschritt eine eigene Measuregroup sowie ein eigenes Aktivierungsflag geben. Der folgende Screenshot zeigt die Definition der Measuregroups zur eben skizzierten zweistufigen Aktivierung.

Eine mehrstufige Aktivierung vereinfacht in erster Linie die Komplexität der Parametrisierung, da in jeder Aktivierungsstufe nur die zuvor aktivierten Planobjekte betrachtet werden. Zur Verdeutlichung dient folgendes Beispiel. In einem ersten Aktivierungsschritt sind 7 Produkte und insgesamt 14 Produkt-Vertriebsgebiet-Kombinationen aktiviert. Die Aktivierungsflags sind im Analysewert „Zuordnung_Mat_Linie_converted“ gespeichert.

In einem zweiten Aktivierungsschritt soll nun die Zuordnung der aktivierten Produkte zum Planer erfolgen. Hierzu wird beim Aufbau der Aktivierungsmaske „Produkt-Planer“ das zuvor geplante Aktivierungsflag im Zeilenfilter abgefragt, so dass nur diejenigen Artikel angezeigt werden, die hinsichtlich des Aktivierungsflags „Zuordnung_Mat_Linie_converted“ den Wert „1“ (=aktiviert) aufweisen.

Somit zeigt die Aktivierungsmaske „Produkt-Planer“ nicht alle Produkte, sondern ausschließlich die in Schritt 1 aktivierten Produkte.

Voraktivierung

Der zuvor beschriebene Aktivierungsprozess, bei dem die Aktivierung der Planobjekte manuell erfolgt, ist bestens zur Parametrisierung einer überschaubaren Anzahl von Planobjekten geeignet. Bei Planungsmodellen mit sehr vielen Planobjekten würde eine manuelle Aktivierung aber zu lange dauern oder sogar unmöglich werden. Dennoch sind die Aktivierungsflags im Hinblick auf die automatische Generierung von Planungsmasken zwingend erforderlich. Daher führen wir bei komplexen Planungsmodellen eine automatische Voraktivierung der Planobjekte durch.

Die Voraktivierung ist ein Datenbankprozess, der nach plausiblen Planobjekten sucht und diese dann automatisch aktiviert. Die Prüfung der Plausibilität, ob also ein Planobjekt zu einem Planer gehört, lässt sich oft anhand von Stamm- oder Bewegungsdaten ableiten. Beispielsweise könnte eine Voraktivierung alle Kunden aktivieren, mit denen der jeweilige Planer innerhalb der letzten drei Jahre Umsätze getätigt hat. Die Auswahl dieser Kunden und deren Aktivierung für die Planung wäre dann quasi der automatisch erstellt Systemvorschlag, den der Planer in Folge anpassen kann. Meist handelt es sich bei Anpassungen dann nur noch um die zusätzliche Aktivierung einzelner neuer Produkte oder einzelner neuer Kunden. Der folgende Screenshot zeigt exemplarisch das Ergebnis einer Voraktivierung. Alle Kunden des gerade betrachteten Landes sind automatisch aktiviert, wenn sie im laufenden Jahr oder in einem der letzten beiden Jahre Umsätze hatten (siehe Säulen-Sparklines).

Deaktivieren verboten?

Bislang wurde die Aktivierung als das Hinzufügen von Planobjekten dargestellt. Selbstverständlich lassen sich (vor-)aktivierte Planobjekte auch deaktivieren, indem das Aktivierungsflag beispielsweise auf den Wert „0“ gesetzt wird. Im Zusammenhang mit automatischer Voraktivierung ließen sich dann Auslaufprodukte, die zwar in den letzten Jahren noch Umsätze hatten (und folglich voraktiviert sind) von der Planung ausschließen. Sofern der Ausschluss von Planobjekten auf derartigen Gründen basiert, steht einer Deaktivierung nichts im Wege. Allerdings sollte bedacht werden, dass Planer dann grundsätzlich alle Planobjekte, wie beispielsweise Kleinkunden, deaktivieren können – selbst wenn diese eigentlich noch geplant werden müssten. Diese Art des Ausschlusses geht mit dem Wunsch einher, alle unbedeutenden Planobjekte mit einer allgemeinen Sammelposition zu planen. Der Planer spart natürlich viel Zeit, wenn er anstelle von 100 Kunden nur die wichtigsten 20 Kunden detailliert plant und die restlichen 80 Kunden in einer einzigen Sammelposition berücksichtigt. Hier sei aber zu Vorsicht geraten, da ein derartiges Vorgehen zukünftige Plan-Ist-Vergleiche auf Objektebene zunichte macht.

Wenn das Deaktivieren von Planobjekten verhindert werden soll, empfiehlt sich ein kleiner DeltaMaster-Kniff: die Wertweitergabe. Durch den in DeltaMaster implementierten Mechanismus der Wertweitergabe, lässt sich ein Überschreiben eines aktivierten Planobjektes mit dem Wert „0“ verhindern. Hierzu wird neben dem Aktivierungsflag, das als Measure im OLAP-Modell definiert sein muss, ein weiterer benutzerdefinierter DeltaMaster-Analysewert benötigt, der einerseits das Aktivierungsflag anzeigt und andererseits die Art der Wertweitergabe auf das Aktivierungsflag regelt.

Der folgende Screenshot zeigt die Definition der Wertweitergabe am Beispiel des benutzerdefinierten Analysewertes „Zuordnung_Mat_Planer_converted“. Der benutzerdefinierte Analysewert zeigt stets den Wert des Aktivierungsflags „Zuordnung_Mat_Planer“.

In den Analysewerteigenschaften von „Zuordnung_Mat_Planer_converted“ lässt sich dann einstellen, dass Dateneingaben stets unter Berücksichtigung der dort hinterlegten Regel auf das Aktivierungsflag „Zuordnung_Mat_Planer“ geschrieben werden. Die hier hinterlegte Regel stellt unter anderem sicher, dass ein bestehender Wert von „1“ niemals mit einem anderen Wert überschrieben werden kann.

Automatischer Aufbau von Planungsmappen

Der Ausgangspunkt des Prozesses der Aktivierung war die Suche nach einem Mechanismus, mit dem individuelle Planungsmappen datengetrieben und automatisch generiert werden können. Diesbezüglich zeigten bereits die Ausführungen zur mehrstufigen Aktivierung, auf welche Weise Aktivierungsflags zum Aufbau einzelner Berichte eingesetzt werden können. Der automatische Aufbau einer kompletten Planungsmappe soll nun an folgendem Szenario erläutert werden. In einem mehrstufigen Aktivierungsprozess werden den Planern zunächst bestimmte Länder zugewiesen. Hierfür gibt es das Aktivierungsflag „Zuordnung_Land_Planer“. Danach aktiviert der Planer die relevanten Plankunden innerhalb seiner Länder mittels des Aktivierungsflags „Zuordnung_Land_Kunde“. Pro Land soll es eine Planungsmaske geben, in der alle zuvor aktivierten Kunden des Landes angezeigt werden. Dies wird durch einen Filter auf das Aktivierungsflag „Zuordnung_Land_Kunde“ in der Achsendefinition der Planungsmaske erreicht. Ist ein Land ausgewählt, zeigt die Planungsmaske anhand des entsprechenden Filters alle in diesem Land aktivierten Kunden.

Die einzelnen Planungsmasken je Land sollen dann aber noch in einer Planungsmappe für jeden Planer zusammengestellt werden. Hierzu setzen wir den DeltaMaster Berichtsserver ein, mit dem sich der gesamte Aufbau von Planungsmappen automatisieren lässt. Für unser Beispiel ist ein sogenannter Berichtsserver-Job erforderlich, der auf eine DeltaMaster-Analysesitzung zugreift. Diese Analysesitzung besteht lediglich aus einem einzigen Bericht – nämlich der oben beschriebenen Planungsmaske je Land, die als Vorlage für alle Länder dient. Die Einstellungen zur Vervielfältigung dieser Vorlage und die Erzeugung einer eigenen Planungsmappe je Planer werden dann in den Einstellungen und im Berichtsgenerator des Berichtsservers vorgenommen.

Zunächst werden im Feld „Berichtsgenerator“ alle Planer ausgewählt, die eine Planungsmappe erhalten sollen. Sobald der Berichtsserver gestartet ist, wählt er den ersten Planer aus der hinterlegten Liste. In den Berichtsserver-Einstellungen muss dann geprüft werden, welche Länder in Verbindung mit dem gerade betrachteten Planer für die Planung aktiviert sind. Hierzu wird das Aktivierungsflag „Zuordnung_Land_Planer„ abgefragt. Für jedes Land, dessen Aktivierungsflag in Verbindung mit dem gerade betrachteten Planer den Wert „1“ aufweist, erzeugt der Berichtsserver dann eine die Planungsmaske des Landes. Diese beinhaltet per Definition die Kunden, die im betreffenden Land aktiviert sind. Wenn alle Planungsmasken für den gerade betrachteten Planer generiert sind, wechselt der Berichtsserver zum nächsten Planer. Diese Schritte wiederholen sich solange, bis alle Planer bearbeitet und alle Planungsmappen erstellt sind.

Durch den DeltaMaster Berichtsserver und das mächtige Aktivierungskonzept lassen sich personifizierte Planungsmappen in nahezu unbegrenzter Detaillierung per Knopfdruck erstellen.