Cell-Element (MDDataSet) (XMLA)
Enthält Informationen zu einer einzelnen Zelle, die in einem übergeordneten CellData-Element enthalten ist.
Syntax
<CellData>
<Cell CellOrdinal="unsignedInt">
<!-- Zero or more cell property values -->
<!-- or -->
<Error>...</Error>
</Cell>
</CellData>
Elementmerkmale
Merkmal | BESCHREIBUNG |
---|---|
Datentyp und -länge | Keine |
Standardwert | Keine |
Kardinalität | 0-n: Optionales Element, das mehr als einmal auftreten kann. |
Elementbeziehungen
Beziehung | Element |
---|---|
Übergeordnete Elemente | CellData |
Untergeordnete Elemente | Null oder mehr Zelleigenschaftswerte oder Fehler |
Attribute
Attribut | BESCHREIBUNG |
---|---|
CellOrdinal | Erforderliches unsignedInt-Attribut . Die Ordnungsposition der Zelle innerhalb des mehrdimensionalen Datasets. |
Hinweise
Im übergeordneten Stammelement folgt auf das Axes-Element das CellData-Element , eine Auflistung von Cell-Elementen , die die Eigenschaftswerte für jede Zelle enthalten, die im mehrdimensionalen Dataset zurückgegeben wird. Das Cell-Element enthält das CellOrdinal-Attribut , das die nullbasierte Ordnungsposition der Zelle innerhalb des mehrdimensionalen Datasets angibt, und ein Element für jeden Zelleneigenschaftswert, der der Zelle zugeordnet ist. Jeder Zelleigenschaftswert im Cell-Element wird durch ein separates XML-Element definiert. Der Wert der Zelleigenschaft ist die im XML-Element enthaltenen Daten, und der Name der Zelleneigenschaft, wie im CellInfo-Element des übergeordneten Stammelements definiert, entspricht dem Namen des XML-Elements.
Die folgende Syntax beschreibt einen Zelleneigenschaftswert:
<CellProperty xsi:type="string">value</CellProperty>
Der Datentyp eines Zelleneigenschaftswerts wird nur für die VALUE-Zelleneigenschaft angegeben. Die Datentypen anderer Zelleigenschaften werden durch die Im CellInfo-Element enthaltene Zelleigenschaftendefinition bestimmt. Ein Zelleneigenschaftswertelement kann ausgeschlossen werden, wenn ein Standardwert (durch Einschließen eines Default-Elements für eine im CellInfo-Element enthaltene Zelleigenschaftendefinition) für eine Zelleneigenschaft angegeben wurde oder wenn kein Standardwert angegeben wurde und der Wert der Zelleneigenschaft NULL ist.
Zelleneigenschaftsfehler
Wenn eine Zelleneigenschaft aufgrund eines Fehlers, der auf der Instanz von Analysis Services auftritt, nicht zurückgegeben werden kann, z. B. ein Berechnungsfehler, der verhindert, dass der Wert für eine bestimmte Zelle zurückgegeben wird, ersetzt ein Error-Element den Inhalt der betreffenden Zelleneigenschaft. Das folgende XML-Beispiel beschreibt einen Zelleneigenschaftsfehler:
<Cell CellOrdinal="0">
<Value xsi:type="xsd:double">
<Error>
<ErrorCode>2148497527</ErrorCode>
<Description>Unknown error</Description>
</Error>
</Value>
</Cell>
Berechnen der Ordinalwerte der Zelle
Der Achsenverweis für eine Zelle kann basierend auf einem CellOrdinal-Attributwert berechnet werden. Konzeptionell werden Zellen in einem Dataset nummeriert, als wäre das Dataset ein p-dimensionales Array, wobei p die Anzahl der Achsen ist. Die Zellen werden in zeilengerichteter Reihenfolge adressiert.
Hier wird angenommen, dass eine Anforderung vier Measures auf den Spalten und einen Crossjoin mit zwei Status mit vier Quartalen auf den Zeilen anfordert. Im Anschluss an das Datasetergebnis ist die CellOrdinal-Eigenschaft für den Teil des Datasetergebnisses, der fett formatiert angezeigt wird, der Satz {9, 10, 11, 13, 14, 15, 17, 18, 19}. Dies ist die Menge, da die Zellen in Zeilen-Hauptreihenfolge nummeriert sind, beginnend mit cellOrdinal von 0 für die obere linke Zelle.
State | Quarter | Unit Sales | Store-Cost | Store-Sales | Sales-Count |
---|---|---|---|---|---|
Kalifornien | Q1 | 16890 | 14431.09 | 36175.2 | 5498 |
Q2 | 18052 | 15332.02 | 38396.75 | 5915 | |
Q3 | 18370 | 15672.83 | 39394.05 | 6014 | |
Q4 | 21436 | 18094.5 | 45201.84 | 7015 | |
Oregon | Q1 | 19287 | 16081.07 | 40170.29 | 6.184 |
Q2 | 15079 | 12678.96 | 31772.88 | 4799 | |
Q3 | 16940 | 14273.78 | 35880.46 | 5432 | |
Q4 | 16353 | 13738.68 | 34453.44 | 5196 | |
Washington | Q1 | 30114 | 25240.08 | 63282.86 | 9906 |
Q2 | 29479 | 24953.25 | 62496.64 | 9654 | |
Q3 | 30538 | 25958.26 | 64997.38 | 10007 | |
Q4 | 34235 | 29172.72 | 73016.34 | 11217 |
Wenn die in der Abbildung gezeigte Formel angewendet wird, hat die Achse k = 0 Uk = 4 Elemente und die Achse k = 1 Uk = 8 Tupel. P = 2 ist die Gesamtzahl der Achsen in der Abfrage. Wenn man die Zelle mit dem Inhalt {Kalifornien, Q3, Speicherkosten} als S0 nimmt, ist die ursprüngliche Summe i = 0 bis 1. Für i = 0 ist die Tupelordinalzahl auf Achse 0 auf {Speicherkosten} 1. Für i = 1 ist die Tupelordinalzahl von {CA, Q3} 2.
Für i = 0 Ei = 1, daher ist die Summe für i = 0 gleich 1 * 1 = 1, und die Summe für i = 1 ist 2 (Tupelordinalzahl) mal 4 (der Wert von Ei berechnet als 1 * 4) oder 8. Die Summe von 1 + 8 ist dann 9, die Zellenordinalzahl für diese Zelle.
Beispiel
Im folgenden Beispiel wird die Struktur des Cell-Elements veranschaulicht, einschließlich value, FORMATTED_VALUE und FORMAT_STRING für jede Zelle.
<CellData>
<Cell CellOrdinal="0">
<Value xsi:type="xsd:double">16890</Value>
<FmtValue>16,890.00</FmtValue>
<FormatString>Standard</FormatString>
</Cell>
<Cell CellOrdinal="1">
<Value xsi:type="xsd:int">50</Value>
<FmtValue>50</FmtValue>
<FormatString>Standard</FormatString>
</Cell>
<Cell CellOrdinal="2">
<Value xsi:type="xsd:double">36175.2</Value>
<FmtValue>$36,175.20</FmtValue>
<FormatString>Currency</FormatString>
</Cell>
</CellData>