# GetObjectDimension - diagramfunktion

GetObjectDimension() returnerar namnet på dimensionen. Index är ett valfritt heltal som anger dimensionen som ska returneras.

Anteckning om information

Du kan inte använda den här funktionen i ett diagram på följande platser: titel, underrubrik, fotnot, referenslinjeuttryck och min/max-uttryck.

Anteckning om information

Du kan inte referera till namnet på en dimension eller ett mått i ett annat objekt med Object ID.

Syntax:

GetObjectDimension ([index])

Returnerad datatyp: Sträng

Exempel: diagramuttryck

| Exempel | Resultat |
| --- | --- |
| `GetObjectDimension ()`<br><br>`GetObjectDimension (0)` | Returnerar namnet på den första dimensionen i diagrammet. |
| `GetObjectDimension (1)` | Returnerar namnet på den andra dimensionen i diagrammet. |

## Exempel – grunderna i GetObjectDimension

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

#### Diagramuttryck

Översikt

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

  * `TransactionDate`

  * `CustomerID`

  * `TransactionQuantity`

Laddningsskript

```
Example:
LOAD * INLINE [
TransactionDate, CustomerID, TransactionQuantity
2018/08/30, 049681, 13
2018/08/30, 203521, 6
2018/08/30, 203521, 21
];
```

Resultat

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

* `TransactionDate`

* `CustomerID`

* `TransactionQuantity`

Skapa följande mått:

* `=GetObjectDimension ()`, för att hitta den första dimensionen i tabellen.
* `=GetObjectDimension (0)`, för att hitta den första dimensionen i tabellen.
* `=GetObjectDimension (1)`, för att hitta den andra dimensionen i tabellen.

Resultattabell

| TransactionDate | CustomerID | TransactionQuantity | GetObjectDimension () | GetObjectDimension (0) | GetObjectDimension (1) |
| --- | --- | --- | --- | --- | --- |
| 2018/08/30 | 049681 | 13 | TransactionDate | TransactionDate | CustomerID |
| 2018/08/30 | 203521 | 6 | TransactionDate | TransactionDate | CustomerID |
| 2018/08/30 | 203521 | 21 | TransactionDate | TransactionDate | CustomerID |

När du tittar på resultaten kan du se hur funktionen `GetObjectDimension` returnerar namnet på den dimension som anges i funktionsparametrarna.

## Exempel – GetObjectDimension avancerat scenario

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

#### Diagramuttryck

Översikt

I detta exempel används funktionen `GetObjectDimension` i kombination med filterval. Beräkningen av dimension och mått som visas i diagramobjektet ändras baserat på vilket filter du väljer.

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

Laddningsskriptet innehåller:

* En datauppsättning som läses in i två inlinedatatabeller: `Sales` och `Filter`. Den första tabellen, `Sales`, innehåller försäljningsdata. Den andra tabellen, `Filter`, innehåller en lista med fältnamn som kommer att användas för att växla dimension. Med växlingsfunktionen kan du växla mellan dimensioner i ett diagram och anpassa den måttberäkning som visas beroende på vilken dimension som valts.

* Följande fält i `Sales`-tabellen:

  * `Country`

  * `Salesperson`

  * `SalesValue`

* Följande fält i `Filter`-tabellen: `FilterField`

Laddningsskript

```
Sales:
LOAD * INLINE [
Country, SalesPerson, SalesValue
USA, John, 500
USA, Alice, 700
Canada, Bob, 300
Canada, Carol, 400
Mexico, Dave, 200
];

Filter:
LOAD * INLINE [
FilterField
Country
SalesPerson
];
```

Resultat

1. Ladda data och öppna ett ark. Skapa en ny filterruta och lägg till detta fält som en dimension:

   * `FilterField`

2. Högerklicka på FilterField under Fält i resurspanelen och välj Fältinställningar. Markera kryssrutan Alltid ett värde valt och klicka Spara.

3. Skapa en tabell och lägg till en dimension genom att lägga till följande uttryck:

   * `=$(= FilterField)`

   * Under Etikett anger du följande uttryck för att definiera kolumnnamnet för dimensionen: `='$(= FilterField)'`

4. Skapa följande mått:

   * `=If(GetObjectDimension() = 'Country', Sum(SalesValue), Avg(SalesValue))`, för att summera försäljningsvärdena om den valda dimensionen är `Country`, annars för att returnera genomsnittet av försäljningsvärdet när den valda dimensionen är `SalesPerson`.

   * Under `Label` anger du följande uttryck för att definiera kolumnnamnet för mätvärdet enligt filterurvalet: `=If(GetObjectDimension() = 'Country', 'Sum(SalesValue)', 'Avg(SalesValue)')`

I analysläget, när du växlar mellan `SalesPerson` och `Country` i `FieldFilter`-filtret, ändras tabellen så att den innehåller den valda dimensionen och motsvarande mätvärde för den dimensionen. Om du t.ex. väljer `Country` i filtret visas `Country` som dimension i den första kolumnen i tabellen. Mätvärdet använder sedan funktionen `GetObjectDimension`, likställer den med `Country` och returnerar `Sum(SalesValue)`.

Filterruta och tabellresultat för Country

Filterruta och tabellresultat för Country

Filterruta och tabellresultat för CountryCountry ![Ett ark med en filterruta för att växla mellan land och säljare och visa resultaten för varje dimension i en motsvarande tabell.](https://help.qlik.com/sv-SE/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-GetObjDim-example.png)

Följande tabell visar resultatet när du väljer `Country` i filtret `FilterField`.

Resultattabell för CountryCountry

| Country | Sum(SalesValue) |
| --- | --- |
| Totals | 2100 |
| Canada | 700 |
| Mexico | 200 |
| USA | 1200 |

Följande tabell visar resultatet när du väljer `SalesPerson` i filtret `FilterField`.

Resultattabell för SalesPersonSalesPerson

| SalesPerson | Avg(SalesValue) |
| --- | --- |
| Totals | 420 |
| Alice | 700 |
| Bob | 300 |
| Carol | 400 |
| Dave | 200 |
| John | 500 |