Rekursionen in MDX

Bei einem inter­na­tio­nal agie­ren­den Kun­den habe ich kürz­lich eine rol­lie­rende Pla­nung imple­men­tiert. Ein Mal pro Monat gibt es bei dem Kun­den eine Pla­nungs­runde, in der die letz­ten Erkennt­nisse ver­ar­bei­tet wer­den und aus der eine neue Pla­nung ent­steht. Es wird sehr lang­fris­tig geplant, für die nächs­ten 3 Jahre auf Monats­ba­sis und für die nächs­ten 12 Jahre auf Jah­res­ebene mit linea­rer Ver­tei­lung auf die Monate. Es wird jedoch nicht immer die gesamte Pla­nung ange­passt, son­dern nur die Regio­nen und die Monate oder Jahre, in denen neue Erkennt­nisse vor­lie­gen.
Der Kunde hatte ver­schie­dene Wün­sche für eine mög­lichst ein­fa­che Bedie­nung im Delta­Master. Unter ande­rem sollte es ein Ele­ment geben, das für den gesam­ten Pla­nungs­zeit­raum die jeweils aktu­ellste Plan­ver­sion ent­hält. Die Plan­ver­sio­nen selbst soll­ten aber wei­ter­hin mit­ein­an­der ver­gli­chen wer­den kön­nen, um Ände­run­gen und Pla­nungs­qua­li­tät beur­tei­len zu kön­nen.
Eine ein­fa­che Lösungs­mög­lich­keit wäre es gewe­sen, die Daten der ein­zel­nen Plan­ver­sio­nen schon in der rela­tio­na­len Daten­bank ent­spre­chend auf­zu­be­rei­ten. Jedoch wür­den die Daten unnö­tig ver­dop-pelt wer­den, was wie­derum zu mehr Spei­cher­platz­ver­brauch und zu län­ge­ren nächt­li­chen Ver­ar­bei-tungs­zei­ten füh­ren würde.
Ich hatte die Idee einer rekur­si­ven Umset­zung im Cube-Script. In die­sem Fall müs­sen die Daten nicht ver­dop­pelt wer­den. Span­nend ist die Frage, ob die Rekur­sion auch mit berech­ne­ten Ele­men­ten und abge­lei­te­ten Kenn­zah­len funk­tio­niert.

Den gesam­ten Arti­kel kön­nen Sie hier abru­fen.

Schreibe einen Kommentar