# Dimensionality - diagramfunktion

Dimensionality() returnerar antalet dimensioner för den aktuella raden. Vad gäller pivottabeller returnerar funktionen det totala antalet dimensionskolumner som har icke-aggregerat innehåll, d.v.s. inte innehåller delsummor eller dolda aggregeringar.

Syntax:

Dimensionality ( )

Returnerad datatyp: heltal

Begränsningar:

Funktionen är endast tillgänglig i diagram. För alla diagramtyper utom pivottabeller returnerar den antalet dimensioner i alla rader utom summan, som blir 0.

Sortering på y-värden i diagram, eller sortering efter uttryckskolumner i tabeller, är inte tillåtet när denna diagramfunktion används i något av diagrammets uttryck. Dessa sorteringsalternativ är därför automatiskt inaktiverade. När du använder den här diagramfunktion i en visualisering eller tabell kommer sorteringen av visualiseringen att återgå till den sorterade inmatningen av den här funktionen.

## Exempel: diagramuttryck som använder Dimensionality

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

#### Diagramuttryck

Översikt

Använd funktionen `Dimensionality` i en pivottabell som ett diagramuttryck där du vill använda olika cellformatering beroende på antalet dimensioner i en rad som har icke-aggregerade data. Det här exemplet tillämpar en bakgrundsfärg till tabellceller som motsvarar ett visst tillstånd.

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* En datauppsättning som läses in i en datatabell som heter `Example`.

* Följande fält i datatabellen:

  * `Country`

  * `Product`

  * `Sales`

  * `Budget`

Laddningsskript

```
Example:
Load * inline [
Country, Product, Sales, Budget
Sweden, AA, 100000, 50000
Germany, AA, 125000, 175000
Canada, AA, 105000, 98000
Norway, AA, 74850, 68500
Ireland, AA, 49000, 48000
Sweden, BB, 98000, 99000
Germany, BB, 115000, 175000
Norway,BB,71850,68500
Ireland,BB,31000,48000
] (delimiter is ',');
```

Mer information om hur du använder inline-laddningar finns i [Använda inline-laddningar för att ladda data](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm).

Resultat

Ladda data och öppna ett ark. Skapa en ny pivottabell och lägg till dessa fält som raddimensioner:

* `Country`

* `Product`

Skapa följande mått:

* `=Sum(Sales)`, för att beräkna summan av `Sales`-värdena.

* `=Sum(Budget)`, för att beräkna summan av `Budget`-värdena.

* `=Dimensionality()`, för att ange antalet dimensioner för aktuell rad.

I panelen Egenskaper för mätvärdet `Sum(Sales)` anger du följande uttryck som Bakgrundsfärguttryck:

```
=If(Dimensionality()=1 and Sum(Sales)<Sum(Budget),RGB(255,156,156),
  If(Dimensionality()=2 and Sum(Sales)<Sum(Budget),RGB(178,29,29)
  )
 )
```

Utdata från bakgrundsfärgsuttrycket ger en ljusröd eller mörkröd cellbakgrund till tabellcellerna när de tillämpliga villkoren är uppfyllda.

Pivottabell som visar resultat för radens dimensioner: CountryCountry, ProductProduct

| Country |  |  |  |
| --- | --- | --- | --- |
| Product |  |  |  |
|  | Sum(Sales) | Sum(Budget) | Dimensionality() |
| (+) Canada | 105000 | 98000 | 1 |
| (-) Germany | 240000 | 350000 | 1 |
| AA | 125000 | 175000 | 2 |
| BB | 115000 | 175000 | 2 |
| (+) Ireland | 80000 | 96000 | 1 |
| (+) Norway | 146700 | 137000 | 1 |
| (+) Sweden | 198000 | 149000 | 1 |

När den första radens dimension (`Country`) visas, returnerar funktionen `Dimensionality` `1`. När du expanderar en raddimension, t.ex. `Germany`, för att visa den andra raddimensionen (`Product`), returnerar funktionen `2`.

Bakgrundsfärguttrycken för måtte `Sum(Sales)` utför beräkningar baserade på dimensionalitet och försäljning för att lyfta fram olika resultat. När dimensionen är `1` visas alla `Country` med `Sum(Sales)` som är mindre än `Sum(Budget)` i ljusrött, i det här exemplet `Germany` och `Ireland`. När dimensionen är `2` visas alla `Product` med `Sum(Sales)` som är mindre än `Sum(Budget)` i mörkrött, i det här exemplet `AA` och `BB` för `Germany`.

## Exempel – Dimensionality-scenario

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

#### Diagramuttryck

Översikt

I det här exemplet används funktionen `Dimensionality` för att tillämpa detaljer på en rapport och markera tabellceller för vissa dimensioner.

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* En datauppsättning som läses in i en datatabell som heter `Example`.

* Följande fält i datatabellen:

  * `Region`

  * `SalesProduct`

  * `Year`

  * `SalesValue`

  * `Quantity`

  * `Product`

Laddningsskript

```
Example:
LOAD * INLINE [
Region, SalesProduct, Year, SalesValue, Quantity, Profit
North, Laptop, 2023, 20000, 15, 4000
North, Mobile, 2023, 15000, 25, 3000
North, Laptop, 2022, 18000, 20, 3500
North, Mobile, 2022, 14000, 22, 2800
South, Laptop, 2023, 22000, 18, 4500
South, Mobile, 2023, 16000, 27, 3200
South, Laptop, 2022, 19000, 19, 3800
South, Mobile, 2022, 15000, 23, 3100
East, Laptop, 2023, 21000, 16, 4200
East, Mobile, 2023, 15500, 24, 3100
East, Laptop, 2022, 18500, 18, 3900
East, Mobile, 2022, 14500, 21, 2950
West, Laptop, 2023, 23000, 17, 4700
West, Mobile, 2023, 16500, 26, 3300
West, Laptop, 2022, 19500, 20, 4000
West, Mobile, 2022, 15500, 24, 3100
North, Tablet, 2023, 12000, 10, 2500
South, Tablet, 2023, 13000, 12, 2700
East, Tablet, 2023, 12500, 11, 2600
West, Tablet, 2023, 13500, 13, 2800
];
```

Resultat

Ladda data och öppna ett ark. Skapa en ny pivottabell och lägg till dessa fält som raddimensioner:

* `Year`

* `SalesProduct`

* `Region`

Skapa följande mått:

* `=If(Dimensionality()=1, 'Total', 'Detail')`, för att ange om det är en `Total`- eller `Detail`-rad.

* `=If(Dimensionality()=3, 'Region-Level', If(Dimensionality()=2, 'Product-Level', 'Summary-Level'))`, för att ange vilken dimension som visas.

* `=Sum(SalesValue)`, för att beräkna summan av försäljningen.

I panelen Egenskaper för mätvärdet `Sum(SalesValue)` anger du följande uttryck som Bakgrundsfärguttryck:

```
=If(Dimensionality()=1, LightGray())
```

Utdata från bakgrundsfärgsuttrycket ger en ljusgrå cellbakgrund till tabellcellerna när dimensionen är `1`.

Pivottabell som visar resultat för radens dimensioner: CountryCountry, ProductProduct

| År |  |  |  |
| --- | --- | --- | --- |
| Försäljningsprodukt |  |  |  |
| Region |  |  |  |
|  | Om(Dimensionality()=1, 'Totalt', 'Detalj') | Om(Dimensionality()=3, 'Regionnivå', Om(Dimensionality()=2, 'Produktnivå', 'Sammanfattningsnivå')) | Summa(Försäljningsvärde) |
| (+) 2022 | Totalt | Sammanfattningsnivå | 134000 |
| (-) 2023 | Totalt | Sammanfattningsnivå | 200000 |
| (-)Bärbar dator | Detaljerad | Produktnivå | 86000 |
| Öst | Detaljerad | Regionsnivå | 21000 |
| Nord | Detaljerad | Regionsnivå | 20000 |
| Syd | Detaljerad | Regionsnivå | 22000 |
| Väst | Detaljerad | Regionsnivå | 23000 |
| (-) Mobil | Detaljerad | Produktnivå | 63000 |
| (-) Surfplatta | Detaljerad | Produktnivå | 51000 |

Du kan se hur funktionen `Dimensionality` kan användas för att förbättra rapportens detaljnivå och lyfta fram alla dimensioner på den översta raden.