Функции таблиц извлекают информацию о таблице данных, из которой в настоящее время производится считывание. Если имя таблицы не указано, и функция используется в операторе LOAD, то рассматривается текущая таблица.
Все функции можно использовать в скрипте загрузки, но только функцию NoOfRows можно использовать в выражении диаграммы.
Пользуйтесь информацией из раскрывающегося списка по каждой функции, чтобы увидеть краткое описание и синтаксис каждой функции. По некоторым функциям можно получить дополнительные сведения. Для этого щелкните имя нужной функции в описании синтаксиса.
Функция скрипта FieldName возвращает имя поля с указанным номером в ранее загруженной таблице. Если функция используется в операторе LOAD, то она не должна ссылаться на таблицу, загружаемую в настоящее время.
Функция скрипта FieldNumber возвращает номер указанного поля в ранее загруженной таблице. Если функция используется в операторе LOAD, то она не должна ссылаться на таблицу, загружаемую в настоящее время.
Функция скрипта NoOfFields возвращает число полей в ранее загруженной таблице. Если функция используется в операторе LOAD, то она не должна ссылаться на таблицу, загружаемую в настоящее время.
Функция скрипта NoOfRows возвращает число строк (записей) в ранее загруженной таблице. Если функция используется в операторе LOAD, то она не должна ссылаться на таблицу, загружаемую в настоящее время.
Эта функция скрипта возвращает число ранее загруженных таблиц.
NoOfTables()
Эта функция скрипта возвращает имя таблицы с указанным номером.
TableName(table_number)
Эта функция скрипта возвращает номер указанной таблицы. Первая таблица имеет число 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
Помогла ли вам эта страница?
Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!
Присоединяйтесь к программе модернизации аналитики
Модернизируйте ваши важные приложения QlikView без ущерба с помощью программы модернизации аналитики. Щелкните здесь для получения дополнительной информации или свяжитесь с нами: ampquestions@qlik.com