Partilhar via


Elemento Cell (MDDataSet) (XMLA)

Contém informações sobre uma única célula contida por um elemento pai CellData .

Syntax

  
<CellData>  
   <Cell CellOrdinal="unsignedInt">  
      <!-- Zero or more cell property values -->  
      <!-- or -->  
      <Error>...</Error>  
   </Cell>  
</CellData>  

Características do elemento

Característica Descrição
Comprimento e tipo de dados Nenhum
Valor padrão Nenhum
Cardinalidade 0-n: Elemento opcional que pode ocorrer mais de uma vez.

Relações de elementos

Relação Elemento
Elementos pai CellData
Elementos filho Zero ou mais valores de propriedade de célula ou erro

Atributos

Atributo Descrição
CellOrdinal Atributo unsignedInt necessário. A posição ordinal da célula dentro do conjunto de dados multidimensional.

Comentários

No elemento raiz pai, o elemento Axes é seguido pelo elemento CellData , uma coleção de elementos Cell que contêm os valores de propriedade para cada célula retornada no conjunto de valores multidimensional. O elemento Cell contém o atributo CellOrdinal , que indica a posição ordinal de base zero da célula dentro do conjunto de valores multidimensional e um elemento para cada valor de propriedade de célula associado à célula. Cada valor de propriedade de célula no elemento de célula é definido por um elemento XML separado. O valor da propriedade Cell são os dados contidos pelo elemento XML, e o nome da propriedade Cell, conforme definido no elemento CellInfo do elemento pai root, corresponde ao nome do elemento XML.

A sintaxe a seguir descreve um valor de propriedade de célula.

<CellProperty xsi:type="string">value</CellProperty>  

O tipo de dados de um valor de propriedade de célula só é especificado para a propriedade de célula de VALUE. Os tipos de dados de outras propriedades de célula são determinados pela definição de propriedade de célula incluída no elemento CellInfo . Um elemento de valor de propriedade de célula pode ser excluído se um valor padrão tiver sido especificado (incluindo um elemento padrão para uma definição de propriedade de célula contida no elemento CellInfo ) para uma propriedade de célula, ou se nenhum valor padrão tiver sido especificado e o valor da propriedade de célula for nulo.

Erros de propriedade de célula

Se uma propriedade de célula não puder ser retornada devido a um erro que ocorre na instância do Analysis Services, como um erro de cálculo que impede que o valor seja retornado para uma determinada célula, um elemento de erro substituirá o conteúdo da propriedade de célula em questão. O exemplo de XML a seguir descreve um erro de propriedade de célula:

<Cell CellOrdinal="0">  
   <Value xsi:type="xsd:double">  
      <Error>  
         <ErrorCode>2148497527</ErrorCode>  
         <Description>Unknown error</Description>  
      </Error>  
   </Value>  
</Cell>  

Calculando valores ordinais de células

A referência de eixo para uma célula pode ser calculada com base em um valor de atributo CellOrdinal . Conceitualmente, as células são numeradas em um conjunto de um DataSet como se o conjunto de um fosse uma matriz p-dimensional, em que p é o número de eixos. As células são tratadas em ordem linha-principal.

Suponha que uma consulta solicite quatro medidas em colunas e uma interjunção de quatro estados com quatro quartos de linhas. No seguinte resultado do conjunto de resultados, a propriedade CellOrdinal para a parte do resultado do conjunto de resultados mostrada em negrito é o conjunto {9, 10, 11, 13, 14, 15, 17, 18, 19}. Este é o conjunto porque as células são numeradas na ordem de linha principal, começando com um CellOrdinal de 0 para a célula superior esquerda.

Estado Trimestre Vendas de unidade Custo na loja Vendas da loja Contas de vendas
Califórnia Q1 16890 14431, 9 36175,2 5498
T2 18052 15332, 2 38396,75 5915
T3 18370 15672,83 39394, 5 6014
T4 21436 18094,5 45201,84 7015
Oregon Q1 19287 16081, 7 40170,29 6.184
T2 15079 12678,96 31772,88 4799
T3 16940 14273,78 35880,46 5432
T4 16353 13738,68 34453,44 5196
Washington Q1 30114 25240, 8 63282,86 9906
T2 29479 24953.25 62496.64 9654
T3 30538 25958.26 64997.38 10007
T4 34235 29172.72 73016.34 11217

Aplicando a fórmula mostrada na figura, o eixo k = 0 tem Uk = 4 membros e o exio k = 1 tem Uk = 8 tuplas. P = 2 é o número total de eixos na consulta. Considerando a célula {Califórnia, T3, Custo da Loja} como S0, a soma inicial é i = 0 a 1. Para i = 0, a tupla ordinal no eixo 0 de {Custo da loja} é 1. Para i = 1, a tupla ordinal de {CA, T3} é 2.

Para i = 0, Ei = 1, então, para i = 0, a soma é 1 * 1 = 1, e para i = 1, a soma é 2 (tupla ordinal) vezes 4 (o valor de Ei calculado como 1 * 4) ou 8. A soma de 1 + 8 é então 9, a célula ordinal para essa célula.

Exemplo

O exemplo a seguir demonstra a estrutura do elemento Cell , incluindo os valores de propriedade VALUE, FORMATTED_VALUE e FORMAT_STRING célula para cada célula.

<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>