# EmptyIsNull funkcja skryptu i funkcja wykresu

Funkcja EmptyIsNull konwertuje puste ciągi na NULL. W związku z tym zwraca NULL, jeśli parametr jest pustym ciągiem. W przeciwnym razie zwraca parametr.

Składnia:

EmptyIsNull(exp )

Typ zwracanych danych: NULL, jeśli parametr jest pustym ciągiem. W przeciwnym razie zwraca parametr.

Argumenty

| Argument | Opis |
| --- | --- |
| expr | Wyrażenie lub pole zawierające mierzone dane. |

Przykład: wyrażenia wykresu

| Przykład | Wynik |
| --- | --- |
| `EmptyIsNull(AdditionalComments)` | To wyrażenie zwróci NULL w przypadku wszystkich pustych wartości ciągu pola `AdditionalComments` zamiast pustych ciągów. Zwracane są niepuste ciągi i liczby. |
| `EmptyIsNull(PurgeChar(PhoneNumber, ' -()'))` | To wyrażenie usunie wszelkie myślniki, spacje i nawiasy z pola `PhoneNumber`. Jeśli nie pozostaną już żadne znaki, funkcja `EmptyIsNull` zwraca pusty ciąg jako NULL. Pusty phone number jest tym samym co brakujący phone number. |

## Przykład — podstawy EmptyIsNull

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/NULLFunctions/EmptyIsNull.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:

  * `CustomerID`

  * `OrderID`

  * `Product`

  * `Status`

  * `PhoneNumber`

Skrypt ładowania

```
Example:
LOAD * inline [
CustomerID, OrderID, Product, Status, PhoneNumber
1, 1001, Widget,, (0123) 456 789
2, 1002, Gizmo, Open,-
3, 1003, Gadget, Closed,()
4, 1004, Widget,,678-9888
];
```

Wyniki

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

* `CustomerID`

* `OrderID`

* `Product`

* `Status`

Utwórz następujące wymiary wyliczane:

* `=EmptyIsNull(Status)` w celu zwrócenia jako NULL wszelkich wartości pustych ciągów znaków w polu `Status`.

* `=EmptyIsNull(PurgeChar(PhoneNumber, ' -()'))` w celu usunięcia wszelkich myślników, spacji i nawiasów z pola `PhoneNumber`. Jeśli nie pozostaną już żadne znaki, funkcja `EmptyIsNull` zwraca pusty ciąg jako NULL. Pusty numer telefonu jest tym samym co brak numeru telefonu.

InformacjaNastępująca tabela zawiera puste komórki, aby zademonstrować użycie funkcji `EmptyIsNull`.

Results table

| CustomerID | OrderID | Product | Status | EmptyIsNull(Status) | EmptyIsNull(PurgeChar(PhoneNumber, ' -()')) |
| --- | --- | --- | --- | --- | --- |
| 1 | 1001 | Widget |  | - | 0123456789 |
| 2 | 1002 | Gizmo | Open | Open | - |
| 3 | 1003 | Gadget | Closed | Closed | - |
| 4 | 1004 | Widget |  | - | 6789888 |

W kolumnie `Status` można zauważyć, że rekordy z pustymi wartościami są wyświetlane jako puste komórki z domyślnym przezroczystym kolorem tła. Dane wyjściowe miary `EmptyIsNull(Status)` zwracają NULL dla tych pustych wartości, na co wskazuje znak myślnika (-) na szarym tle komórki.

Druga miara używa funkcji `EmptyIsNull` z [PurgeChar funkcja skryptu i funkcja wykresu](https://help.qlik.com/pl-PL/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/PurgeChar.htm), aby usunąć wszelkie myślniki (-), spacje i nawiasy () z pola `PhoneNumber`, a następnie zwrócić wszelkie pozostałe puste ciągi jako NULL. Komórki z wartościami zerowymi są teraz wyświetlane z myślnikiem (-) i szarym tłem formatowania.

## Przykład — zastąpienie wartości null tekstem i dodanie formatowania warunkowego

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

#### Wyrażenie wykresu

Przegląd

Menedżer sprzedaży chce analizować dane sprzedaży i łatwo identyfikować rekordy zawierające brakujące wartości.

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:

  * `ID`

  * `Name`

  * `Age`

  * `Email`

  * `Sales`

  * `Region`

  * `OrderStatus`

Skrypt ładowania

```
Example:
LOAD * inline [
ID,Name, Age, Email, Sales, Region, OrderStatus
1, John Smith, 30, john@email.com, 1000, North, Active
2, Jane Doe, '', jane@email.com, 1500, South, Active
3, Bob Johnson, 45, '', 800, East, Inactive
4, Alice Brown, 28, alice@email.com, '', West, Active
5, Charlie Lee, '', charlie@email.com, 1200, '', Active
6, Eva Green, 35, eva@email.com, 950, North, ''
7, David White, 50, '', '', South, Inactive
8, Fiona Black, 42, fiona@email.com, 1100, East, Active
];
```

Wyniki

Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj to pole jako wymiar:

* `ID`

Utwórz następujące wymiary wyliczane:

* `=If(IsNull(EmptyIsNull(Age)), 'NULL', EmptyIsNull(Age))` w celu zwrócenia jako NULL wszelkich wartości pustego ciągu w polu `Age`, a następnie zidentyfikowania i wypełnienia wszystkich wartości null wartością `NULL` zamiast znaku myślnika (`-`).

* `=If(IsNull(EmptyIsNull(Email)), 'NULL', EmptyIsNull(Email))` w celu zwrócenia jako NULL wszelkich wartości pustego ciągu w polu `Email`, a następnie zidentyfikowania i wypełnienia wszystkich wartości null wartością `NULL` zamiast znaku myślnika (`-`).

* `=If(IsNull(EmptyIsNull(Sales)), 'NULL', EmptyIsNull(Sales))` w celu zwrócenia jako NULL wszelkich wartości pustego ciągu w polu `Sales`, a następnie zidentyfikowania i wypełnienia wszystkich wartości null wartością `NULL` zamiast znaku myślnika (`-`).

* `=If(IsNull(EmptyIsNull(Region)), 'NULL', EmptyIsNull(Region))` w celu zwrócenia jako NULL wszelkich wartości pustego ciągu w polu `Region`, a następnie zidentyfikowania i wypełnienia wszystkich wartości null wartością `NULL` zamiast znaku myślnika (`-`).

* `=If(IsNull(EmptyIsNull(OrderStatus)), 'NULL', EmptyIsNull(OrderStatus))` w celu zwrócenia jako NULL wszelkich wartości pustego ciągu w polu `OrderStatus`, a następnie zidentyfikowania i wypełnienia wszystkich wartości null wartością `NULL` zamiast znaku myślnika (`-`).

Ustaw formatowanie warunkowe komórek, aby zmienić kolor tła na czerwony dla wartości `NULL` i zielony dla wszystkich innych wartości. W panelu Właściwości każdego wymiaru i miary wprowadź następujące wyrażenie jako Wyrażenie koloru tła:

* `ID` (wymiar): `=RGB(200,255,200)`

* `Age` (miara): `=If(IsNull(EmptyIsNull(Age)), RGB(255,200,200), RGB(200,255,200))`

* `Email` (miara): `=If(IsNull(EmptyIsNull(Email)), RGB(255,200,200), RGB(200,255,200))`

* `Sales` (miara): `=If(IsNull(EmptyIsNull(Sales)), RGB(255,200,200), RGB(200,255,200))`

* `Region` (miara): `=If(IsNull(EmptyIsNull(Region)), RGB(255,200,200), RGB(200,255,200))`

* `OrderStatus` (miara): `=If(IsNull(EmptyIsNull(OrderStatus)), RGB(255,200,200), RGB(200,255,200))`

Results table

| ID | If(IsNull(EmptyIsNull(Age)), 'NULL', EmptyIsNull(Age)) | If(IsNull(EmptyIsNull(Email)), 'NULL', EmptyIsNull(Email)) | If(IsNull(EmptyIsNull(Sales)), 'NULL', EmptyIsNull(Sales)) | If(IsNull(EmptyIsNull(Region)), 'NULL', EmptyIsNull(Region)) | If(IsNull(EmptyIsNull(OrderStatus)), 'NULL', EmptyIsNull(OrderStatus)) |
| --- | --- | --- | --- | --- | --- |
| 1 | 30 | john@email.com | 1000 | North | Active |
| 2 | NULL | jane@email.com | 1500 | South | Active |
| 3 | 45 | NULL | 800 | East | Inactive |
| 4 | 28 | alice@email.com | NULL | West | Active |
| 5 | NULL | charlie@email.com | 1200 | NULL | Active |
| 6 | 35 | eva@email.com | 950 | North | NULL |
| 7 | 50 | NULL | NULL | South | Inactive |
| 8 | 42 | fiona@email.com | 1100 | East | Active |

Wyniki pokazują, że korzystając z funkcji `EmptyIsNull` i dodając formatowanie warunkowe, można łatwo zidentyfikować rekordy z brakującymi wartościami.