# Ord — функция скриптa и диаграммы

Ord() возвращает числовое значение (ASCII или Unicode) первого символа строки. Эта функция полезна для оценки или сравнения строк на основе их базовых кодов символов, например, при сортировке или фильтрации строк с нестандартными символами.

Синтаксис:

Ord(text)

Возвращаемые типы данных: целое

Аргументы

| Аргумент | Описание |
| --- | --- |
| text | Оригинальная строка. |

Пример: выражения диаграммы

| Пример | Результат |
| --- | --- |
| `Ord( 'A' )` | Возвращает целое число `65` |
| `Ord( 'Ab' )` | Возвращает целое число `65` |

## Пример. Основы использования функции Ord

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

#### Выражение диаграммы

Обзор

Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки в новый раздел.

Скрипт загрузки содержит следующее:

* Набор данных, который загружается в таблицу данных под именем `Example`.

* Следующие поля в таблице данных:

  * `Chinese`

  * `Western`

Скрипт загрузки

```
Example:
Load * inline [
Chinese, Western
古琴, Guqin
];
```

Результаты

Загрузите данные и откройте лист. Создайте новую таблицу и добавьте эти поля как измерения:

* ` Chinese
                                   `

* `Western`

Создайте следующие вычисляемые измерения:

* `=ord(Chinese)`, чтобы вернуть числовую часть значения в поле с именем `Chinese`.

* `=ord(Western)`, чтобы вернуть числовую часть значения в поле с именем `Western`.

Результирующая таблица

| Chinese | Western | ord(Chinese) | ord(Western) |
| --- | --- | --- | --- |
| `古琴` | `Guqin` | 21476 | 71 |

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

#### Скрипт загрузки

Следующий код показывает, как использовать эту функцию в скрипте загрузки.

```
Example:
Load *,
ord(Chinese) as OrdUnicode,
ord(Western) as OrdASCII;
Load * inline [
Chinese, Western
古琴, Guqin ];
```

Результирующая таблица

| Chinese | Western | OrdUnicode | OrdASCII |
| --- | --- | --- | --- |
| 古琴 | Guqin | 21476 | 71 |

## Пример. Сценарий использования функции Ord

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

#### Выражение диаграммы

Обзор

В наборе данных кодов продуктов имеются коды, которые считаются недопустимыми, поскольку начинаются со специального символа, а не с буквенно-цифрового символа. С помощью функции `Ord` для выявления недопустимых кодов продуктов создается новая мера, чтобы пометить записи как Valid (Допустимо) или Invalid (Недопустимо).

Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки в новый раздел.

Скрипт загрузки содержит следующее:

* Набор данных, который загружается в таблицу данных под именем `Products`.

* Одно поле в таблице данных под именем `ProductCode`.

Скрипт загрузки

```
Products:
Load * inline [
ProductCode
AB123
#EX45
12XY9
DEF456
*KLM78
GH789
];
```

Результаты

Загрузите данные и откройте лист. Создайте новую таблицу и добавьте это поле как измерение:

* ` ProductCode
                                   `

Создайте следующие вычисляемые измерения:

* `=Ord(ProductCode)`, чтобы вернуть числовое значение первого символа.

* `=If(Ord(ProductCode) < 48 OR (Ord(ProductCode) > 57 AND Ord(ProductCode) < 65) OR Ord(ProductCode) > 122, 'Invalid Product Code', 'Valid Product Code')`, чтобы проверить, является ли порядковое значение кода буквенно-цифровым. Если это не так, то эта запись помечается как `Not Valid`.

Результирующая таблица

| Код товара | Ord(ProductCode) | If(Ord(ProductCode) &lt; 48 OR (Ord(ProductCode) &gt; 57 AND Ord(ProductCode) &lt; 65) OR Ord(ProductCode) &gt; 122, 'Invalid Product Code', 'Valid Product Code') |
| --- | --- | --- |
| \*KLM78 | 42 | Invalid Product Code |
| #EX45 | 35 | Invalid Product Code |
| 12XY9 | 49 | Valid Product Code |
| AB123 | 65 | Valid Product Code |
| DEF456 | 68 | Valid Product Code |
| GH789 | 71 | Valid Product Code |

Сравнивая вывод функции `Ord` с диапазоном допустимых буквенно-цифровых значений, можно определить, какие коды продуктов являются недопустимыми.