SolveOrder ist eine Metadateneigenschaft, die entweder für eine Dimension oder ein Element, das die Reihenfolge der Elementauswertung definiert, festgelegt werden kann. Die Lösungsreihenfolge wird bei jeder Ausführung angewendet.
SolveOrder kann die Performance der Abfrage beeinflussen. Der Wert der SolveOrder-Eigenschaft bestimmt die Priorität für die Berechnung der Elementformel. Die Formeln der Elemente, für die eine Lösungsreihenfolge angegeben ist, werden von der niedrigsten zur höchsten Lösung berechnet. Wenn eine Elementformel von dem Wert eines anderen Elements mit dynamischer Berechnung abhängig ist, muss das Element mit der Formel eine höhere Lösungsreihenfolge als das Element mit dynamischer Berechnung, von dem es abhängig ist, haben.
Tabelle 12-15 Standardeinstellungen für Lösungsreihenfolge
Dimensionstyp | Standardwert für SolveOrder |
---|---|
Gespeichertes Element | 0 |
Sparse-Dimension | 10 |
Dense-Dimension - Konto | 30 |
Dense-Dimension - Zeit | 40 |
Dense-Dimension - Zweistufiges Konto | 60 |
Dense-Dimension - Zweistufige Zeit | 70 |
Zweistufig | 100 |
Attribute-Dimension | 90 |
Wenn eine Formel für ein Sparse-Element ein Dense-Element mit einer DynamicCalc-Datenspeicherung referenziert, wird die Referenz ignoriert, weil Sparse-Dimensionen standardmäßig zuerst berechnet werden (Standard-solveOrder, dünn besetzt – 10, Konto für Standard-SolveOrder, dicht besetzt - 30). Dieses Verhalten kann geändert werden, indem eine benutzerdefinierte Lösungsreihenfolge der Sparse-Dimension, die höher als die Lösungsreihenfolge der Dense-Dimension ist, zugewiesen wird.
Beispiel:
Beachten Sie das folgende Beispiel mit Elementen der unterschiedlichen SolveOrders und der entsprechenden Auswertung.
Dimension1:
Konten
A1
A2
Verhältnis – Elementformel [A1 / A2]
Dimension2:
DataSource
DataInput
CustomInput
Abweichung – Elementformel [DataInput - CustomInput]
Beachten Sie das folgende Dataset für die Schnittmengen für die Januar-Periode:
Berechnungen mit unterschiedlichen SolveOrders für Verhältnis und Abweichung
Fall 1: Verhältnis mit einer höheren SolveOrder als Abweichung
In diesem Fall wird zuerst die Abweichung und dann das entsprechende Verhältnis berechnet.
Abweichungsverhältnis wird wie folgt berechnet: (Abweichung->A1)/(Abweichung->A2).
Fall 2: Verhältnis mit einer niedrigeren SolveOrder als Abweichung
In diesem Fall wird zuerst das Verhältnis und dann die entsprechende Abweichung berechnet.
Verhältnisabweichung wird wie folgt berechnet: (Verhältnis->DataInput) – (Verhältnis->CustomInput).