# GetObjectField — funkcja wykresu

Funkcja GetObjectField() zwraca wyrażenie wymiaru. Index jest opcjonalną liczbą całkowitą określającą wymiar, który powinien zostać zwrócony.

Informacja

Tej funkcji nie można używać w wykresie w następujących miejscach: tytuł, podtytuł, stopka, wyrażenie linii odniesienia oraz wyrażenie min./maks.

Informacja

Za pomocą Object ID nie możesz utworzyć w innym obiekcie odniesienia do nazwy wymiaru lub miary.

Składnia:

GetObjectField ([index])

Typ zwracanych danych: ciąg znaków

Przykład: wyrażenia wykresu

| Przykład | Wynik |
| --- | --- |
| `GetObjectField ()`<br><br>`GetObjectField (0)` | Zwraca wyrażenie pola dla pierwszego wymiaru na wykresie. |
| `GetObjectField (1)` | Zwraca wyrażenie pola dla drugiego wymiaru na wykresie. |

W celu zawrócenia nazwy miary zamiast tej funkcji należy użyć funkcji GetObjectMeasure.

## Przykład — podstawy GetObjectField

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/SystemFunctions/GetObjectField.htm)

#### Wyrażenie wykresu

Przegląd

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

Skrypt ładowania zawiera:

* Zestaw danych załadowany do tabeli o nazwie `Example`.

* Tabela zawiera następujące pola:

  * `TransactionDate`

  * `CustomerID`

  * `TransactionQuantity`

Skrypt ładowania

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

Wyniki

Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:

* `TransactionDate`

* `CustomerID`

* `TransactionQuantity`

Utwórz następujące miary:

* `=GetObjectField()`, aby znaleźć pierwszy wymiar w tabeli.
* `=GetObjectField(0)`, aby znaleźć pierwszy wymiar w tabeli.
* `=GetObjectField(1)`, aby znaleźć drugi wymiar w tabeli.

Tabela wynikowa

| TransactionDate | CustomerID | TransactionQuantity | GetObjectField () | GetObjectField (0) | GetObjectField (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 |

Patrząc na wyniki, można zauważyć, że funkcja `GetObjectField` zwraca nazwę pola wskazanego w parametrach funkcji.

## Przykład — zastosowanie zaawansowane GetObjectField

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/SystemFunctions/GetObjectField.htm)

#### Wyrażenie wykresu

Przegląd

W tym przykładzie użyto funkcji `GetObjectField` w połączeniu z wyborami w filtrze. Obliczenia wymiarów i miar wyświetlane w obiekcie wykresu zmieniają się w zależności od wybranego filtra.

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

Skrypt ładowania zawiera:

* Zestaw danych ładowany do dwóch wbudowanych tabel danych: `Sales` i `Filter`. Pierwsza tabela, `Sales`, zawiera dane dotyczące sprzedaży. Druga tabela, `Filter`, zawiera listę nazw pól, które będą używane jako przełącznik wymiarów. Przełącznik umożliwia przełączanie między wymiarami wykresu i dostosowywanie wyświetlanych obliczeń miary w zależności od wybranego wymiaru.

* Następujące pola w tabeli `Sales`:

  * `Country`

  * `Salesperson`

  * `SalesValue`

* Następujące pola w tabeli `Filter`: `FilterField`.

Skrypt ładowania

```
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
];
```

Wyniki

1. Załaduj dane i otwórz arkusz. Utwórz nowy panel filtrowania i dodaj to pole jako wymiar:

   * `FilterField`

2. W panelu zasobów, w sekcji Pola, kliknij prawym przyciskiem myszy FilterField i wybierz Ustawienia pola. Zaznacz pole wyboru Zawsze jedna wartość wybrana i kliknij Zapisz.

3. Utwórz tabelę, a następnie dodaj wymiar, wprowadzając następujące wyrażenie:

   * `=$(= FilterField)`

   * W sekcji Etykieta wprowadź następujące wyrażenie, aby zdefiniować nazwę kolumny dla wymiaru: `='$(= FilterField)'`.

4. Utwórz następującą miarę:

   * `=If(GetObjectField() = 'Country', Sum(SalesValue), Avg(SalesValue))`, aby zsumować wartości sprzedaży, jeśli wybranym wymiarem jest `Country`, w przeciwnym razie, aby zwrócić średnią wartość sprzedaży, jeśli wybranym wymiarem jest `SalesPerson`.

   * W sekcji `Label` wprowadź następujące wyrażenie, aby zdefiniować nazwę kolumny, która będzie wyświetlana dla miary zgodnie z wyborem w filtrze: `=If(GetObjectField() = 'Country', 'Sum(SalesValue)', 'Avg(SalesValue)')` Na przykład, jeśli w filtrze wybrano `Country`, nazwa miary zwróci wartość `Sum(SalesValue)`.

W trybie analizy, po przełączeniu `SalesPerson` i `Country` w filtrze `FieldFilter`, tabela zmienia się, aby uwzględnić wybrany wymiar i odpowiadające mu obliczenia miary dla tego wymiaru. Na przykład, jeśli w filtrze zostanie wybrana opcja `Country`, tabela wyświetli `Country` jako wymiar w pierwszej kolumnie. Następnie miara używa funkcji `GetObjectField`, zrównuje ją z `Country` i zwraca `Sum(SalesValue)`.

Panel filtrowania i wyniki w tabeli dla Country

Panel filtrowania i wyniki w tabeli dla Country

Panel filtrowania i wyniki w tabeli dla CountryCountry ![Arkusz z panelem filtrowania do przełączania między krajem a sprzedawcą i wyświetlania wyników dla każdego z nich w odpowiedniej tabeli.](https://help.qlik.com/pl-PL/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-GetObjDim-example.png)

Poniższa tabela przedstawia wyniki po wybraniu `Country` w filtrze `FilterField`.

Tabela wynikowa dla `Country`Country

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

Poniższa tabela przedstawia wyniki po wybraniu `SalesPerson` w filtrze `FilterField`.

Tabela wynikowa dla `SalesPerson`SalesPerson

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