# WRank — funkcja skryptu

Funkcja WRank() oblicza wartości wierszy tabeli w skrypcie ładowania i dla każdego wiersza zwraca względną pozycję wartości pola obliczanego w skrypcie ładowania. Obliczając wartość tabeli, funkcja porównuje wynik z wynikiem dla innych wierszy zawierających bieżącą partycję i zwraca klasyfikację bieżącego wiersza w ramach segmentu.

Partycje w tabeli

Partycje w tabeli

Partycje w tabeli ![Tabela przedstawiająca segmenty kolumn](https://help.qlik.com/pl-PL/qlikview/September2025/Subsystems/Client/Content/Resources/Images/table_column_segments.png)

WRank można użyć tylko w funkcji Window. Funkcja Window musi zawierać typ i wyrażenie sortowania. Klasyfikacja jest stosowana do wyrażenia sortowania.

Składnia:

WRank ([mode[, fmt]])

Typ zwracanych danych: wartość podwójna

Argumenty:

Argumenty

| Argument | Opis |
| --- | --- |
| mode | Opcjonalnie określa reprezentację liczbową wyniku funkcji. |
| fmt | Opcjonalnie określa reprezentację liczbową wyniku funkcji. |

Klasyfikacja jest zwracana jako wartość podwójna, która w sytuacji, gdy każdy wiersz ma niepowtarzalną klasyfikację, będzie liczbą całkowitą z zakresu od 1 do liczby wierszy w bieżącej partycji.

Jeśli kilka wierszy ma tę samą klasyfikację, reprezentację tekstową i liczbową można kontrolować za pomocą argumentów mode i fmt.

###### mode

Pierwszy argument, mode, może mieć następujące wartości:

Wartości modemode

| Wartość | Opis |
| --- | --- |
| 0 (domyślnie) | Jeśli wszystkie klasyfikacje w grupie o takich samych klasyfikacjach należą do dolnego zakresu wartości środkowej całej klasyfikacji, wówczas wszystkie wiersze uzyskują najniższą klasyfikację w tej grupie.<br><br>Jeśli wszystkie klasyfikacje w grupie o takich samych klasyfikacjach należą do górnego zakresu wartości środkowej całej klasyfikacji, wówczas wszystkie wiersze uzyskują najwyższą klasyfikację w tej grupie.<br><br>Jeśli klasyfikacje w grupie o takich samych klasyfikacjach obejmują środek zakresu całej klasyfikacji, wszystkie wiersze otrzymują wartość odpowiadającą średniej klasyfikacji górnej i dolnej w całej partycji. |
| 1 | Najniższa klasyfikacja we wszystkich wierszach. |
| 2 | Średnia klasyfikacja we wszystkich wierszach. |
| 3 | Najwyższa klasyfikacja we wszystkich wierszach. |
| 4 | Najniższa klasyfikacja w pierwszym wierszu, następnie zwiększana o jeden dla każdego wiersza. |

###### fmt

Drugi argument, fmt, może mieć następujące wartości:

Wartości fmtfmt

| Wartość | Opis |
| --- | --- |
| 0 (domyślnie) | Niska wartość - wysoka wartość we wszystkich wierszach (na przykład 3–4). |
| 1 | Niska wartość we wszystkich wierszach. |
| 2 | Niska wartość w pierwszym wierszu, pusta w kolejnych wierszach. |

Kolejność wierszy dla argumentów mode 4 i fmt 2 jest określona przez kolejność ładowania pól tabeli.

## Przykład — dodawanie pola z klasyfikacją

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/WindowFunctions/wrank.htm)

#### Przykład: dodawanie pola z klasyfikacją

Skrypt ładowania

Utwórz nową kartę w edytorze ładowania danych, a następnie załaduj następujące dane jako ładowanie wbudowane. Utwórz tabelę poniżej w Qlik Sense, aby zobaczyć wyniki.

```
Transactions:
Load
*,
Window(WRank(0),customer_id, 'Desc', transaction_amount) as TransactionRanking;

Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, customer_id, size, color_code
3750, 20180830, 23.56, 2, 2038593, L, Red
3751, 20180907, 556.31, 6, 203521, M, Orange
3752, 20180916, 5.75, 1, 5646471, S, Blue
3753, 20180922, 125.00, 7, 3036491, L, Black
3754, 20180922, 484.21, 13, 049681, XS, Red
3756, 20180922, 59.18, 2, 2038593, M, Blue
3757, 20180923, 177.42, 21, 203521, XL, Black
3758, 20180924, 153.42, 14, 2038593, L, Red
3759, 20180925, 7.42, 5, 203521, M, Orange
3760, 20180925, 80.12, 18, 5646471, M, Blue
3761, 20180926, 3.42, 7, 3036491, XS, Black
3763, 20180926, 63.55, 12, 049681, S, Red
3763, 20180927, 177.56, 10, 2038593, L, Blue
3764, 20180927, 325.95, 8, 203521, XL, Black
];
 
```

Wyniki

Wyniki dodania pola klasyfikowanego

| transaction\_id | transaction\_date | transaction\_amount | transaction\_quantity | customer\_id | size | color\_code | TransactionRanking |
| --- | --- | --- | --- | --- | --- | --- | --- |
| 3750 | 20180830 | 23.56 | 2 | 2038593 | L | Czerwony | 4-4 |
| 3751 | 20180907 | 556.31 | 6 | 203521 | M | Orange | 1-1 |
| 3752 | 20180916 | 5.75 | 1 | 5646471 | S | Niebieski | 2-2 |
| 3754 | 20180922 | 484.21 | 13 | 049681 | XS | Czerwony | 1-1 |
| 3756 | 20180922 | 59.18 | 2 | 2038593 | M | Niebieski | 3-3 |
| 3753 | 20180922 | 125.00 | 7 | 3036491 | L | Black | 1-1 |
| 3757 | 20180923 | 177.42 | 21 | 203521 | XL | Black | 3-3 |
| 3758 | 20180924 | 153.42 | 14 | 2038593 | L | Czerwony | 2-2 |
| 3759 | 20180925 | 7.42 | 5 | 203521 | M | Orange | 4-4 |
| 3760 | 20180925 | 80.12 | 18 | 5646471 | M | Niebieski | 1-1 |
| 3763 | 20180926 | 63.55 | 12 | 049681 | S | Czerwony | 2-2 |
| 3761 | 20180926 | 3.42 | 7 | 3036491 | XS | Black | 2-2 |
| 3764 | 20180927 | 325.95 | 8 | 203521 | XL | Black | 2-2 |
| 3763 | 20180927 | 177.56 | 10 | 2038593 | L | Niebieski | 1-1 |

## Przykład — dodawanie pola z klasyfikacją przy użyciu fmt w celu uzyskania wyniku jednocyfrowego

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/WindowFunctions/wrank.htm)

#### Przykład: dodawanie pola z klasyfikacją przy użyciu fmt w celu uzyskania wyniku jednocyfrowego

Skrypt ładowania

Utwórz nową kartę w edytorze ładowania danych, a następnie załaduj następujące dane jako ładowanie wbudowane. Utwórz tabelę poniżej w Qlik Sense, aby zobaczyć wyniki.

```
Transactions:
Load
*,Window(WRank(0,1),customer_id, 'Desc', transaction_amount) as TransactionRanking;

Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, customer_id, size, color_code
3750, 20180830, 23.56, 2, 2038593, L, Red
3751, 20180907, 556.31, 6, 203521, M, Orange
3752, 20180916, 5.75, 1, 5646471, S, Blue
3753, 20180922, 125.00, 7, 3036491, L, Black
3754, 20180922, 484.21, 13, 049681, XS, Red
3756, 20180922, 59.18, 2, 2038593, M, Blue
3757, 20180923, 177.42, 21, 203521, XL, Black
3758, 20180924, 153.42, 14, 2038593, L, Red
3759, 20180925, 7.42, 5, 203521, M, Orange
3760, 20180925, 80.12, 18, 5646471, M, Blue
3761, 20180926, 3.42, 7, 3036491, XS, Black
3763, 20180926, 63.55, 12, 049681, S, Red
3763, 20180927, 177.56, 10, 2038593, L, Blue
3764, 20180927, 325.95, 8, 203521, XL, Black
];
 
```

Wyniki

Wyniki dodawania pola klasyfikowanego z fmtfmt jako wynikiem jednocyfrowym

| transaction\_id | transaction\_date | transaction\_amount | transaction\_quantity | customer\_id | size | color\_code | TransactionRanking |
| --- | --- | --- | --- | --- | --- | --- | --- |
| 3750 | 20180830 | 23.56 | 2 | 2038593 | L | Czerwony | 4 |
| 3751 | 20180907 | 556.31 | 6 | 203521 | M | Orange | 1 |
| 3752 | 20180916 | 5.75 | 1 | 5646471 | S | Niebieski | 2 |
| 3754 | 20180922 | 484.21 | 13 | 049681 | XS | Czerwony | 1 |
| 3756 | 20180922 | 59.18 | 2 | 2038593 | M | Niebieski | 3 |
| 3753 | 20180922 | 125.00 | 7 | 3036491 | L | Black | 1 |
| 3757 | 20180923 | 177.42 | 21 | 203521 | XL | Black | 3 |
| 3758 | 20180924 | 153.42 | 14 | 2038593 | L | Czerwony | 2 |
| 3759 | 20180925 | 7.42 | 5 | 203521 | M | Orange | 4 |
| 3760 | 20180925 | 80.12 | 18 | 5646471 | M | Niebieski | 1 |
| 3763 | 20180926 | 63.55 | 12 | 049681 | S | Czerwony | 2 |
| 3761 | 20180926 | 3.42 | 7 | 3036491 | XS | Black | 2 |
| 3764 | 20180927 | 325.95 | 8 | 203521 | XL | Black | 2 |
| 3763 | 20180927 | 177.56 | 10 | 2038593 | L | Niebieski | 1 |

## Przykład — Dodawanie pola z klasyfikacją z wieloma partycjami

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/WindowFunctions/wrank.htm)

#### Przykład: dodawanie pola z klasyfikacją z wieloma partycjami

Skrypt ładowania

Utwórz nową kartę w edytorze ładowania danych, a następnie załaduj następujące dane jako ładowanie wbudowane. Utwórz tabelę poniżej w Qlik Sense, aby zobaczyć wyniki.

```
Transactions:
Load
*,Window(WRank(0,1),customer_id, size, color_code, 'Desc', transaction_amount) as TransactionRanking;

Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, customer_id, size, color_code
3750, 20180830, 23.56, 2, 2038593, L, Red
3751, 20180907, 556.31, 6, 203521, M, Orange
3752, 20180916, 5.75, 1, 5646471, S, Blue
3753, 20180922, 125.00, 7, 3036491, L, Black
3754, 20180922, 484.21, 13, 049681, XS, Red
3756, 20180922, 59.18, 2, 2038593, M, Blue
3757, 20180923, 177.42, 21, 203521, XL, Black
3758, 20180924, 153.42, 14, 2038593, L, Red
3759, 20180925, 7.42, 5, 203521, M, Orange
3760, 20180925, 80.12, 18, 5646471, M, Blue
3761, 20180926, 3.42, 7, 3036491, XS, Black
3763, 20180926, 63.55, 12, 049681, S, Red
3763, 20180927, 177.56, 10, 2038593, L, Blue
3764, 20180927, 325.95, 8, 203521, XL, Black
];
 
```

Wyniki

Wyniki dodawania pola klasyfikowanego z fmtfmt jako wynikiem jednocyfrowym

| transaction\_id | transaction\_date | transaction\_amount | transaction\_quantity | customer\_id | size | color\_code | TransactionRanking |
| --- | --- | --- | --- | --- | --- | --- | --- |
| 3750 | 20180830 | 23.56 | 2 | 2038593 | L | Czerwony | 2 |
| 3751 | 20180907 | 556.31 | 6 | 203521 | M | Orange | 1 |
| 3752 | 20180916 | 5.75 | 1 | 5646471 | S | Niebieski | 1 |
| 3754 | 20180922 | 484.21 | 13 | 049681 | XS | Czerwony | 1 |
| 3756 | 20180922 | 59.18 | 2 | 2038593 | M | Niebieski | 1 |
| 3753 | 20180922 | 125.00 | 7 | 3036491 | L | Black | 1 |
| 3757 | 20180923 | 177.42 | 21 | 203521 | XL | Black | 2 |
| 3758 | 20180924 | 153.42 | 14 | 2038593 | L | Czerwony | 1 |
| 3759 | 20180925 | 7.42 | 5 | 203521 | M | Orange | 2 |
| 3760 | 20180925 | 80.12 | 18 | 5646471 | M | Niebieski | 1 |
| 3763 | 20180926 | 63.55 | 12 | 049681 | S | Czerwony | 1 |
| 3761 | 20180926 | 3.42 | 7 | 3036491 | XS | Black | 1 |
| 3764 | 20180927 | 325.95 | 8 | 203521 | XL | Black | 1 |
| 3763 | 20180927 | 177.56 | 10 | 2038593 | L | Niebieski | 1 |

## Ograniczenia

WRank ma następujące ograniczenia:

* Jeśli wartość fmt wynosi 0 i chcesz użyć części tekstowej podwójnego wyniku dla WRank, musisz użyć Text() z Window(WRank). Na przykład: Text(Window(WRank(0), Unit, 'DESC', Age)) as UnitWRankedByAgeText.