Elemento Cell (MDDataSet) (XMLA)
Contiene informazioni su una singola cella contenuta in un elemento CellData padre.
Sintassi
<CellData>
<Cell CellOrdinal="unsignedInt">
<!-- Zero or more cell property values -->
<!-- or -->
<Error>...</Error>
</Cell>
</CellData>
Caratteristiche degli elementi
| Caratteristica | Descrizione |
|---|---|
| Tipo di dati e lunghezza | Nessuno |
| Valore predefinito | Nessuno |
| Cardinalità | 0-n: Elemento facoltativo che può ricorrere più di una volta. |
Relazioni tra elementi
| Relazione | Elemento |
|---|---|
| Elementi padre | CellData |
| Elementi figlio | Zero o più valori di proprietà della cella o Errore |
Attributi
| Attributo | Descrizione |
|---|---|
| CellOrdinal | Attributo unsignedInt obbligatorio. La posizione ordinale della cella all'interno del dataset multidimensionale. |
Commenti
Nell'elemento radice padre, l'elemento Axes è seguito dall'elemento CellData, una raccolta di elementi Cell che contengono i valori delle proprietà per ogni cella restituita nel set di dati multidimensionale. L'elemento Cell contiene l'attributo CellOrdinal, che indica la posizione ordinale in base zero della cella all'interno del set di dati multidimensionale e un elemento per ogni valore della proprietà della cella associato alla cella. Ogni valore della proprietà cell nell'elemento Cell è definito da un elemento XML separato. Il valore della proprietà della cella corrisponde ai dati contenuti nell'elemento XML e il nome della proprietà della cella, come definito nell'elemento CellInfo dell'elemento radice padre, corrisponde al nome dell'elemento XML.
Nella sintassi seguente viene descritto un valore della proprietà della cella:
<CellProperty xsi:type="string">value</CellProperty>
Il tipo di dati del valore proprietà della cella viene specificato solo per la proprietà VALORE della cella. I tipi di dati di altre proprietà della cella sono determinati dalla definizione della proprietà della cella inclusa nell'elemento CellInfo. Un elemento valore proprietà cella può essere escluso se è stato specificato un valore predefinito (includendo un elemento Default per una definizione di proprietà cella contenuta nell'elemento CellInfo) per una proprietà della cella o se non è stato specificato alcun valore predefinito e il valore della proprietà della cella è Null.
Errori proprietà cella
Se non è possibile restituire una proprietà della cella a causa di un errore che si verifica nell'istanza di Analysis Services, ad esempio un errore di calcolo che impedisce la restituire il valore per una determinata cella, un elemento Error sostituisce il contenuto della proprietà della cella in questione. Nell'esempio XML seguente è descritto un errore di proprietà della cella:
<Cell CellOrdinal="0">
<Value xsi:type="xsd:double">
<Error>
<ErrorCode>2148497527</ErrorCode>
<Description>Unknown error</Description>
</Error>
</Value>
</Cell>
Calcolo dei valori ordinali di cella
Il riferimento all'asse per una cella può essere calcolato in base a un valore dell'attributo CellOrdinal. Concettualmente, le celle vengono numerate in un set di dati come se il set di dati fosse una matrice p-dimensionale, dove p è il numero di assi. Le celle sono indirizzate in ordine di riga.
Si suppone che una query richieda quattro misure su colonne e una crossjoin di due stati con quattro trimestri sulle righe. Dopo il risultato del set di dati, la proprietà CellOrdinal per la parte del risultato del set di dati visualizzata in grassetto è il set {9, 10, 11, 13, 14, 15, 17, 18, 19}. Questo è il set perché le celle sono numerate in ordine principale di riga, a partire da cellOrdinal di 0 per la cella superiore sinistra.
| State | Quarter | Vendite unità | Costo magazzino | Vendite magazzino | Conto vendite |
|---|---|---|---|---|---|
| California | T1 | 16890 | 14431.09 | 36175.2 | 5498 |
| T2 | 18052 | 15332.02 | 38396.75 | 5915 | |
| T3 | 18370 | 15672.83 | 39394.05 | 6014 | |
| T4 | 21436 | 18094.5 | 45201.84 | 7015 | |
| Oregon | T1 | 19287 | 16081.07 | 40170.29 | 6184 |
| T2 | 15079 | 12678.96 | 31772.88 | 4799 | |
| T3 | 16940 | 14273.78 | 35880.46 | 5432 | |
| T4 | 16353 | 13738.68 | 34453.44 | 5196 | |
| Washington | T1 | 30114 | 25240.08 | 63282.86 | 9906 |
| T2 | 29479 | 24953.25 | 62496.64 | 9654 | |
| T3 | 30538 | 25958.26 | 64997.38 | 10007 | |
| T4 | 34235 | 29172.72 | 73016.34 | 11217 |
Applicando la formula nella figura, l’asse k = 0 ha Uk = 4 membri e l’asse k = 1 ha Uk = 8 tuple P = 2 è il numero complessivo di assi nella query. Prendendo la cella {California, Q3 Archivia Costato} come S0, la sommatoria iniziale è i = 0 a 1. Per i = 0, l'ordinale della tupla su asse 0 di {Costo Magazzino} è 1. Per i = 1, l'ordinale della tupla di {CA, Q3} è 2.
Per i = 0, Ei = 1, quindi per i = 0 la somma è 1 * 1 = 1 e per i = 1, la somma è 2 (ordinale di tupla) per 4 (il valore di Ei calcolato come 1 * 4) o 8. La somma di 1 + 8 è quindi 9, l'ordinale della cella per quella cella.
Esempio
Nell'esempio seguente viene illustrata la struttura dell'elemento Cell, inclusi i valori della proprietà VALUE, FORMATTED_VALUE e FORMAT_STRING della cella per ogni cella.
<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>