Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Relative Zellbezüge in Cube-Formeln
#1
Hallo zusammen,

ich hoffe jemand von euch kennt sich gut mit Cubeformeln in Kombination mit OLAP-Cubes aus.
Hier ein Link als Beispiel, falls euch Cubeformeln bis dato unbekannt sein sollten: https://www.projektmagazin.de/artikel/ex...onen_72211

In meinem Fall wird der OLAP-Cube von einer anderen Abteilung bereitgestellt.
Mein Ziel ist es eine Pivot-Tabelle zu erstellen, diese in Formeln zu konvertieren und diese Formeln dann zu dynamisieren (mittels Zellbezügen).
Die entstehenden Formeln sehen dann dann so aus:

Das hier ist die Formel für eine Dimension (auch erkennbar daran, dass die Formel CUBEELEMENT genutzt wird):

CUBEELEMENT("xyz999_mssqlserver_tab data_mart_order_R Model1";{"[fact_data_mart_order].[is_fixed].&[0]"."[company_order].[is_account_relevant].&[is relevant for account]"."[order_date].[order_year].&[2020]"."[order_date].[order_month].&[202006]"."[order_date].[order_date_id].&[20200601]"."[country_ext].[country_ext_short].&[CA]"."[orderidcode].[orderidcode].&[XYZ23G7]"})


Das hier ist die Formel für eine KPI bzw. einen konkreten Wert für eine ausgewählte Kennzahl, wobei der Bezug $G2 auf die obige Formel verweist:

CUBEWERT("xyz999_mssqlserver_tab data_mart_order_R Model1";$G2;H$1)

In H$1 wiederrum steht diese Formel: CUBEELEMENT("xyz999_mssqlserver_tab data_mart_order_R Model1";"[Measures].[Order Amount]")

Meine eigentliche Frage:

Wie ersetze ich die statischen Werte in den Formeln durch Bezüge bspw. 20200601 durch A1.

Wenn Cubeformeln basierend auf einem Power Pivot Datenmodell genutzt werden ist es simpel: "[order_date].[order_date_id].&["&A1&"]"
So ist es ja auch dem Link von weiter oben zu entnehmen.

Hier beruht die Pivot, aber eben nicht auf einem Power Pivot Datenmodell, sondern auf einem Datamart aus einem SQL Server --> und genau da bin ich überfragt.

Weiß jemand, ob vlllt einfach nur ein & bzw. "" mehr gesetzt werden muss damit der Bezug funktioniert?

Eine Beispieldatei kann ich leider nicht anhängen, da ich mittels fehlendem SQL Server auch leider kein Beispiel reproduzieren kann.

Hoffe jemand hat eine gute IdeeSmile

BG ruppy
Antwortento top
#2
Ich habe noch nie damit gearbeitet, aber Dein CUBEELEMENT() zeigt zwei Argumente, eins als String und das zweite als horizontales Stringarray. Diese Strings können natürlich genauso in Zellen A1:H1 hinterlegt werden, und dann zu =CUBEELEMENT(A1;B1:H1) führen.

Die Strings in den Zellen kannst Du natürlich genauso wie sonst auch aus Konstanten und/oder Variablen zusammensetzen.
Antwortento top
#3
Hi LCohen,

richtig das ist eine Möglichkeit.

Der Einfachheit halber, habe ich es aber nun so gelöst:

CUBEWERT("xyz999_mssqlserver_tab data_mart_order_R Model1";
CUBEELEMENT("xyz999_mssqlserver_tab data_mart_order_R Model1";"[fact_data_mart_order].[is_fixed].&["&A1&"]");
CUBEELEMENT("xyz999_mssqlserver_tab data_mart_order_R Model1";"[company_order].[is_account_relevant].&["&A2&"]");
...
CUBEELEMENT("xyz999_mssqlserver_tab data_mart_order_R Model1";"[Measures].["&A3&"]"))

Konkret: Statt Arrays einfach mehrere Cube-Elemente. Dann können die Bezüge nämlich wie gewohnt gesetzt werden.
Erfordert zwar für jede Dimension ein Cubeelement, aber ist für mich am Einfachsten.

BG ruppy
Antwortento top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste