# Функции таблиц

Функции таблиц извлекают информацию о таблице данных, из которой в настоящее время производится считывание. Если имя таблицы не указано, и функция используется в операторе LOAD, то рассматривается текущая таблица.

Все функции можно использовать в скрипте загрузки, но только функцию NoOfRows можно использовать в выражении диаграммы.

Пользуйтесь информацией из раскрывающегося списка по каждой функции, чтобы увидеть краткое описание и синтаксис каждой функции. По некоторым функциям можно получить дополнительные сведения. Для этого щелкните имя нужной функции в описании синтаксиса.

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

#### FieldName

Функция скрипта FieldName возвращает имя поля с указанным номером в ранее загруженной таблице. Если функция используется в операторе LOAD, то она не должна ссылаться на таблицу, загружаемую в настоящее время.

[**FieldName**](https://help.qlik.com/ru-RU/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/FieldName.htm)(field\_number ,table\_name)

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

#### FieldNumber

Функция скрипта FieldNumber возвращает номер указанного поля в ранее загруженной таблице. Если функция используется в операторе LOAD, то она не должна ссылаться на таблицу, загружаемую в настоящее время.

[**FieldNumber**](https://help.qlik.com/ru-RU/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/FieldNumber.htm)(field\_name ,table\_name)

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

#### NoOfFields

Функция скрипта NoOfFields возвращает число полей в ранее загруженной таблице. Если функция используется в операторе LOAD, то она не должна ссылаться на таблицу, загружаемую в настоящее время.

[**NoOfFields**](https://help.qlik.com/ru-RU/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/NoOfFields.htm)(table\_name)

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

#### NoOfRows

Функция скрипта NoOfRows возвращает число строк (записей) в ранее загруженной таблице. Если функция используется в операторе LOAD, то она не должна ссылаться на таблицу, загружаемую в настоящее время.

[**NoOfRows**](https://help.qlik.com/ru-RU/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/NoOfRows.htm)(table\_name)

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

#### NoOfTables

Эта функция скрипта возвращает число ранее загруженных таблиц.

NoOfTables()

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

#### TableName

Эта функция скрипта возвращает имя таблицы с указанным номером.

TableName(table\_number)

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

#### TableNumber

Эта функция скрипта возвращает номер указанной таблицы. Первая таблица имеет число 0.

Если table\_name не существует, никакое значение не возвращается. Если функция настроена для возврата функционального значения, данная переменная не будет инициализирована. В качестве обходного пути можно указать `LET vImaginaryTabNum = If(TableNumber('NotExistingTable')>=0,TableNumber('NotExistingTable'),'NULL') ;`

TableNumber(table\_name)

Пример:

В этом примере мы хотим создать таблицу с информацией о загруженных таблицах и полях.

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

```
Characters: Load Chr(RecNo()+Ord('A')-1) as Alpha, RecNo() as Num autogenerate 26;  ASCII: Load   if(RecNo()>=65 and RecNo()<=90,RecNo()-64) as Num,  Chr(RecNo()) as AsciiAlpha,   RecNo() as AsciiNum autogenerate 255  Where (RecNo()>=32 and RecNo()<=126) or RecNo()>=160 ;
```

```
 
```

Далее мы повторяем это во всех таблицах, загруженных с помощью функции NoOfTables, и во всех полях каждой таблицы с помощью функции NoOfFields, затем мы загружаем информацию с помощью функций таблицы.

```
//Iterate through the loaded tables For t = 0 to NoOfTables() - 1  //Iterate through the fields of table  For f = 1 to NoOfFields(TableName($(t)))   Tables:   Load     TableName($(t)) as Table,    TableNumber(TableName($(t))) as TableNo,    NoOfRows(TableName($(t))) as TableRows,    FieldName($(f),TableName($(t))) as Field,     FieldNumber(FieldName($(f),TableName($(t))),TableName($(t))) as FieldNo    Autogenerate 1;  Next f Next t;
```

Результирующая таблица Tables будет выглядеть так:

Tables table

| Table | TableNo | TableRows | Field | FieldNo |
| --- | --- | --- | --- | --- |
| Characters | 0 | 26 | Alpha | 1 |
| Characters | 0 | 26 | Num | 2 |
| ASCII | 1 | 191 | Num | 1 |
| ASCII | 1 | 191 | AsciiAlpha | 2 |
| ASCII | 1 | 191 | AsciiNum | 3 |