Rekursionen in MDX

Bei einem inter­na­tio­nal agie­ren­den Kun­den habe ich kürz­lich eine rol­lie­ren­de Pla­nung imple­men­tiert. Ein Mal pro Monat gibt es bei dem Kun­den eine Pla­nungs­run­de, in der die letz­ten Erkennt­nis­se 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 Jah­re auf Monats­ba­sis und für die nächs­ten 12 Jah­re auf Jah­res­ebe­ne mit linea­rer Ver­tei­lung auf die Mona­te. Es wird jedoch nicht immer die gesam­te Pla­nung ange­passt, son­dern nur die Regio­nen und die Mona­te oder Jah­re, in denen neue Erkennt­nis­se vor­lie­gen.
Der Kun­de hat­te ver­schie­de­ne Wün­sche für eine mög­lichst ein­fa­che Bedie­nung im Delta­Master. Unter ande­rem soll­te es ein Ele­ment geben, das für den gesam­ten Pla­nungs­zeit­raum die jeweils aktu­ells­te Plan­ver­si­on 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­der­um 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ür­de.
Ich hat­te 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 Fra­ge, ob die Rekur­si­on 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