Les fonctions de table renvoient des informations sur la table de données en cours de lecture. Si aucun nom de table n'est spécifié et que la fonction est utilisée dans une instruction LOAD, c'est la table active qui est prise en compte.
Toutes les fonctions s'utilisent dans le script de chargement tandis que seule NoOfRows est admise dans les expressions de graphique.
Pour afficher une description succincte et la syntaxe d'une fonction, utilisez le menu déroulant de chaque fonction. Vous pouvez obtenir des informations complémentaires relatives à certaines fonctions en cliquant sur le nom de la fonction dans la description de la syntaxe.
La fonction de script FieldName renvoie le nom du champ portant le numéro indiqué dans une table déjà chargée. Si la fonction est utilisée dans une instruction LOAD, elle ne doit pas faire référence à la table en cours de chargement.
La fonction de script FieldNumber renvoie le numéro d'un champ donné dans une table déjà chargée. Si la fonction est utilisée dans une instruction LOAD, elle ne doit pas faire référence à la table en cours de chargement.
La fonction de script NoOfFields renvoie le nombre de champs d'une table déjà chargée. Si la fonction est utilisée dans une instruction LOAD, elle ne doit pas faire référence à la table en cours de chargement.
La fonction NoOfRows renvoie le nombre de lignes (d'enregistrements) d'une table déjà chargée. Si la fonction est utilisée dans une instruction LOAD, elle ne doit pas faire référence à la table en cours de chargement.
Cette fonction de script renvoie le nombre de tables précédemment chargées.
NoOfTables()
Cette fonction de script renvoie le nom de la table portant le numéro indiqué.
TableName(table_number)
Cette fonction de script renvoie le numéro de la table spécifiée. La première table porte le numéro 0.
Si table_name n'existe pas, aucune valeur n'est renvoyée. Si une fonction est définie pour renvoyer une valeur fonctionnelle, cette variable n'est pas initialisée. Comme solution de contournement, vous pouvez indiquer LET vImaginaryTabNum = If(TableNumber('NotExistingTable')>=0,TableNumber('NotExistingTable'),'NULL') ;
TableNumber(table_name)
Dans cet exemple, nous souhaitons créer une table contenant des informations sur les tables et les champs qui ont été chargés.
Nous commençons par charger des échantillons de données. Cela a pour effet de créer les deux tables qui serviront à illustrer les fonctions de table décrites dans cette section.
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 ;
Ensuite, nous passons à l'itération au sein des tables déjà chargées, à l'aide de la fonction NoOfTables, puis au sein des champs de chaque table, avec la fonction NoOfFields. Nous chargeons ensuite les informations au moyen des fonctions de table.
//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;
La table résultante Tables a l'aspect suivant :
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
Cette page vous a-t-elle aidé ?
Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !
Rejoignez le Programme de modernisation analytique
Modernisez votre système sans compromettre vos précieuses applications QlikView grâce au Programme de modernisation analytique. Cliquez ici pour plus d'informations ou contactez : ampquestions@qlik.com