Eingabeformulare oder Reports  in TM1 benötigen häufig voreingestellte Parameter (wie z.B. den aktuellen Monat oder eine voreingestellte Region), um dem Benutzer bereits beim ersten Aufruf ein bestimmtes, gewünschtes Resultat zu zeigen. Eine gängige Methode dazu ist die entsprechenden Parameter in einem Steuer-Würfel zu halten und diese vorgängig über eine DBR-Funktion abgefragten Werte in der Subset-Formel zu referenzieren. Dieser Ansatz funktioniert sehr gut solange man Excel basiert arbeitet. Sollen diese Parameter aber auch im Cube-Viewer oder in gespeicherten Views direkt in TM1 Web oder TM1 Applications verwendet werden, kann man mit dynamischen Subsets per MDX zum Ziel kommen.

Das folgende Beispiel zeigt, wie man mit Hilfe von dynamischen Subsets die aktuelle Periode oder analog den aktuellen Rolling Forecast direkt verwenden kann.

Mit MDX wird der jeweilige Wert aus dem Steuer-Würfel ausgelesen und die Dimensionselemente für das Subset entsprechend gefiltert.

MDX Beispiel 1: „Current Reporting Period“

Als Beispiel erstellen wir ein Subset, das immer nur die aktuelle Reporting Periode enthält.

Steuer-Würfel

Control Cube

Dimension PeriodMonthly

Aktueller Monat per MDX ausgelesen

{FILTER
 (
 {TM1SUBSETALL( [PeriodMonthly] )},
 [PeriodMonthly].CurrentMember.Name = [Report Control].( [Report Control Item].[Current Reporting Period],[Report Control Measure].[sValue])
 )
}

Bei diesem Statement werden alle Elemente der Dimension PeriodMonthly selektiert und nur das Element angezeigt, das mit dem Wert „Current Reporting Period“ aus dem Steuer-Würfel übereinstimmt.

Wenn man nun den Wert im Steuer-Würfel ändert, wird diese Periode in allen Abfragen angezeigt, in denen das dynamische Subset verwendet wird.

In der Subset-Formel in TM1 Perspectives verwendet Sie man an Stelle des Elementnamens einfach den Index. Da im erstellten Subset nur ein Element enthalten ist, ist der Index für dieses Element immer 1. Anstelle eines Elementnamens wird einfach der Index 1 (ohne “ „) angegeben, damit die aktuelle Periode angezeigt wird.

=SUBNM(„DataServer:PeriodMonthly“,“Current Reporting Period“,1)

MDX-Beispiel 2: Restliche Monate eines Jahres

Als Variante soll dem Benutzer vielleicht auch alle restlichen Monate des aktuellen Jahres im Subset zur Verfügung gestellt werden. Das dazu notwendige MDX-Statement würde dann folgendermassen aussehen:

{UNION(

{FILTER( {TM1SUBSETALL( [PeriodMonthly] )},
 [PeriodMonthly].CurrentMember.Name =
 [Report Control].( [Report Control Item].[Current Reporting Period],[Report Control Measure].[sValue])
 )}
 ,

{TM1FILTERBYLEVEL( {TM1DRILLDOWNMEMBER(

{FILTER( {TM1SUBSETALL( [PeriodMonthly] )},
 [PeriodMonthly].CurrentMember.Name =
 [Report Control ].( [Report Control Item].[Current Fiscal Year],[Report Control Measure].[sValue])
 )}, ALL, RECURSIVE )}, 0)}

)}

Das MDX-Statement besteht im Wesentlichen aus zwei Abfragen, die über einen UNION Befehl zusammen gefügt werden. Das erste Statement entspricht dem Statement für die „Current Reporting Period“. Das zweite Statement filtert zuerst das aktuelle Jahr aus dem Steuer-Würfel und selektiert danach alle unterliegenden Monate. Auch in diesem Subset ist die aktuelle Reporting Periode an erster Stelle und man kann in der Subset-Formel wieder den Index 1 verwenden.

Analog kann man ein Subset für den aktuellen Rolling Forecast erstellen. Es gibt unzählige Anwendungsmöglichkeiten um über MDX die geeigneten Subsets zu erstellen. Wir beraten Sie gerne betreffend der Möglichkeiten und für TM1 Experten verweise ich auf das Dokument „MDX Subset Primer“, welches die MDX-Möglichkeiten umfassend dokumentiert.


Peter Lohmann

Peter Lohmann ist als Senior Solution Architekt bei Addedo tätig. In seiner Rolle als technischer Vertriebsberater unterstützt er Kunden in technischer und fachlicher Hinsicht vor der Einführung von Addedo-Lösungen. In seiner Rolle als Consultant berät er ferner bei der Projektumsetzung, Einführung und Anpassung von bereits vorhandenen oder neu zu implementierenden Lösungssystemen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Related Posts

Cognos TM1

TM1 Dynamische Subsets von Dimensionen

Möchten Sie dass sich ein Subset einer bestimmten Dimension anpasst, sobald sich der Inhalt einer dieser ändert? Dies lösen Sie mit dynamischen Subsets, welche sich bei Änderungen in der Dimension automatisch anpassen. Dazu verwenden Sie die Weiterlesen…

Cognos Analytics

IBM Cognos Lizenzierung

Wir haben in den vergangenen zwei Jahren ein vermehrtes Aufkommen von Lizenzprüfungen durch IBM registriert. Dies veranlasst uns, der IBM Cognos Lizenzierung künftig noch mehr Beachtung zu schenken. Eine wichtige Massnahme wird sein, dass wir Weiterlesen…

Cognos TM1

Ideen, wie Sie Ihre Berichtserstellung mit TM1 optimieren können: Relative Zeiträume!

Berichtserstellung mit TM1 optimieren: Verbringen Sie jeden Monat Zeit damit, den richtigen Zeitraum in der richtigen Spalte anzuzeigen (d. h. Vorjahr, Vorquartal, gleicher Zeitraum des letzten Jahres usw.)? Fällt es Ihnen schwer, Daten in einer Cube-Ansicht Weiterlesen…