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>