Rekursionen in MDX

Bei einem international agierenden Kunden habe ich kürzlich eine rollierende Planung implementiert. Ein Mal pro Monat gibt es bei dem Kunden eine Planungsrunde, in der die letzten Erkenntnisse verarbeitet werden und aus der eine neue Planung entsteht. Es wird sehr langfristig geplant, für die nächsten 3 Jahre auf Monatsbasis und für die nächsten 12 Jahre auf Jahresebene mit linearer Verteilung auf die Monate. Es wird jedoch nicht immer die gesamte Planung angepasst, sondern nur die Regionen und die Monate oder Jahre, in denen neue Erkenntnisse vorliegen.
Der Kunde hatte verschiedene Wünsche für eine möglichst einfache Bedienung im DeltaMaster. Unter anderem sollte es ein Element geben, das für den gesamten Planungszeitraum die jeweils aktuellste Planversion enthält. Die Planversionen selbst sollten aber weiterhin miteinander verglichen werden können, um Änderungen und Planungsqualität beurteilen zu können.
Eine einfache Lösungsmöglichkeit wäre es gewesen, die Daten der einzelnen Planversionen schon in der relationalen Datenbank entsprechend aufzubereiten. Jedoch würden die Daten unnötig verdop-pelt werden, was wiederum zu mehr Speicherplatzverbrauch und zu längeren nächtlichen Verarbei-tungszeiten führen würde.
Ich hatte die Idee einer rekursiven Umsetzung im Cube-Script. In diesem Fall müssen die Daten nicht verdoppelt werden. Spannend ist die Frage, ob die Rekursion auch mit berechneten Elementen und abgeleiteten Kennzahlen funktioniert.

Den gesamten Artikel können Sie hier abrufen.

Schreibe einen Kommentar