# SecondaryDimensionality - função de gráfico

SecondaryDimensionality() retorna o número de linhas da tabela dinâmica da dimensão que têm conteúdo não-agregado, isto é, não contêm somas parciais ou agregações contraídas. Essa função é a equivalente da função dimensionality() para dimensões horizontais de tabela dinâmica.

Sintaxe:

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/secondarydimensionality.htm)SecondaryDimensionality( )

Tipo de dados de retorno: inteiro

Limitações:

* A menos que usada em tabelas dinâmicas, a função SecondaryDimensionality sempre retorna 0.

* A classificação por valores y em gráficos ou por colunas de expressão em tabelas não é permitida quando essa função de gráfico é usada em qualquer uma das expressões do gráfico. Essas alternativas de classificação estão, portanto, automaticamente desabilitadas. Quando você usar essa função de gráfico em uma visualização ou tabela, a classificação da visualização será revertida para a entrada classificada dessa função.

## Exemplo - Fundamentos de SecondaryDimensionality

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/secondarydimensionality.htm)

#### Expressão de gráfico

Visão geral

Abra o editor da carga de dados e adicione o script de carregamento abaixo em uma nova seção.

O script de carregamento contém:

* Um conjunto de dados que é carregado em uma tabela de dados denominada `Example`.

* Os campos a seguir na tabela de dados:

  * `Date`

  * `Product`

  * `Category`

  * `Sales`

Script de carregamento

```
Example:
Load * inline [
Date, Product, Category, Sales
2024-01-01, Apple, Fruit, 100
2024-01-01, Banana, Fruit, 80
2024-02-01, Apple, Fruit, 120
2024-02-01, Banana, Fruit, 90
2024-03-01, Apple, Fruit, 110
2024-03-01, Banana, Fruit, 85
];
```

Resultados

Carregue os dados e abra uma pasta. Crie uma nova tabela dinâmica e adicione esse campo como uma dimensão de linha:

* ` Date
                                       `

Adicione estes campos como dimensões de coluna:

* `Category`

* `Product`

Crie as seguintes medidas:

* `=Sum(Sales)` para calcular o total de vendas.

* `=SecondaryDimensionality()` para retornar o número da dimensão para demonstrar o uso desta função.

Pivot table showing results for the dimension: Category

|  | (+) Fruit |  |
| --- | --- | --- |
| Date | Sum(Sales) | SecondaryDimensionality() |
| 2024-01-01 | 180 | 1 |
| 2024-02-01 | 120 | 1 |
| 2024-03-01 | 110 | 1 |

Os resultados da tabela dinâmica mostram apenas a dimensão `Category` exibida como uma coluna. Portanto, a função `SecondaryDimensionality` retorna o valor 1.

Se você expandir a dimensão `Category`, `Fruit`, os resultados da tabela agora incluirão os valores da dimensão `Product`, `Apple` e `Banana`.

Pivot table showing results for two dimensions: Category, Product

| Date | (-) Fruit |  |  |  |
| --- | --- | --- | --- | --- |
| Apple | Banana |  |  |  |
| Sum(Sales) | SecondaryDimensionality() | Sum(Sales) | SecondaryDimensionality() |  |
| 2024-01-01 | 100 | 2 | 80 | 2 |
| 2024-02-01 | 120 | 2 | 90 | 2 |
| 2024-03-01 | 110 | 2 | 85 | 2 |

A função `SecondaryDimensionality` agora retorna um valor de `2`, pois há valores exibidos para duas dimensões na tabela dinâmica: `Category` e `Product`.

## Exemplo - Usando SecondaryDimensionality para aplicar formatação condicional em uma expressão de gráfico

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/secondarydimensionality.htm)

#### Expressão de gráfico

Visão geral

Este exemplo usa a função em uma expressão de gráfico em uma tabela dinâmica para aplicar formatação de célula condicional dependendo de qual nível de dimensão é exibido.

Abra o editor da carga de dados e adicione o script de carregamento abaixo em uma nova seção.

O script de carregamento contém:

* Um conjunto de dados que é carregado em uma tabela de dados denominada `Example`.

* Os campos a seguir na tabela de dados:

  * `Year`

  * `Quarter`

  * `Product Category`

  * `Sales`

Script de carregamento

```
Example:
Load * inline [
Year, Quarter, Product Category, Sales
2023, Q1, Electronics, 5000
2023, Q1, Furniture, 3000
2023, Q2, Electronics, 4000
2023, Q2, Furniture, 3500
2023, Q3, Electronics, 6000
2023, Q3, Furniture, 4500
2023, Q4, Electronics, 7000
2023, Q4, Furniture, 5000
];
```

Resultados

Carregue os dados e abra uma pasta. Crie uma nova tabela dinâmica e adicione esse campo como uma dimensão de linha:

* ` Product Category
                                       `

Adicione estes campos como dimensões de coluna:

* `Year`

* `Quarter`

Crie a seguinte medida:

* `=Sum(Sales)` para calcular o total de vendas.

No painel Propriedades da medida `Sum(Sales)`, insira a seguinte expressão como a Expressão de cor de fundo:

```
IF(SecondaryDimensionality() = 1,
RGB(144, 238, 144),  // Green for Year-level
RGB(173, 216, 230),  // Blue for Quarter-level
)
```

A expressão aplicará um fundo verde às células da tabela quando a função `SecondaryDimensionality` retornar 1 e um fundo azul quando a função retornar qualquer outro resultado.

Tabela dinâmica mostrando os resultados de uma dimensão: AnoAno com fundo de célula verde

| Categoria do produto | (+) 2023 |
| --- | --- |
| Eletrônicos | 22000 |
| Móveis | 16000 |

Os resultados mostram que, quando apenas a dimensão `Year` é exibida - portanto o valor `SecondaryDimensionality` é 1 - as células `Sum(Sales)` aparecem com um fundo verde. Quando você expande a tabela para mostrar a `Sum(Sales)` por `Quarter`, o fundo agora aparece em azul porque há duas dimensões exibidas, `Year` e `Quarter`, e o valor de `SecondaryDimensionality` agora é `2`.

Pivot table showing results for two dimensions: YearYear and QuarterQuarter with blue cell background

| Product Category | (-) 2023 |  |  |  |
| --- | --- | --- | --- | --- |
| Q1 | Q2 | Q3 | Q4 |  |
| Electronics | 5000 | 4000 | 6000 | 7000 |
| Furniture | 3000 | 3500 | 4500 | 5000 |