FieldIndex - fonction de script et fonction de graphique
FieldIndex() renvoie la position de la valeur de champ value du champ field_name (dans l'ordre de chargement).
FieldIndex(field_name , value)
entier
Argument | Description |
---|---|
field_name | Nom du champ pour lequel l'indice est requis. Par exemple, la colonne dans une table. À fournir sous forme de valeur de chaîne. Autrement dit, le nom du champ doit être placé entre guillemets simples. |
value | Valeur du champ field_name. |
-
Si value est introuvable parmi les valeurs de champ du champ field_name, 0 est renvoyé.
-
Le tri sur les valeurs des ordonnées dans les graphiques ou le tri par colonnes d'expressions dans les tableaux n'est pas autorisé lors de l'utilisation de cette fonction de graphique dans l'une des expressions du graphique. Ces options de tri sont donc automatiquement désactivées. Lorsque vous utilisez cette fonction de graphique dans une visualisation ou un tableau, le tri de la visualisation revient à l'entrée triée via cette fonction. Cette restriction ne s'applique pas à la fonction de script équivalente.
Les exemples suivants utilisent le champ : First name provenant de la tableNames.
Exemples | Résultats |
---|---|
Ajoutez l'exemple de données à votre application et exécutez cette dernière. |
La table Names est chargée, comme dans les échantillons de données. |
Fonction de graphique : dans une table contenant la dimension First name, ajoutez comme mesure : |
|
FieldIndex ('First name','John') |
1, car 'John' apparaît en premier dans l'ordre de chargement du champ First name. En revanche, dans un volet de filtre, John figurerait en 2e position en commençant par le haut, car le contenu de la liste est trié par ordre alphabétique et pas selon l'ordre de chargement. |
FieldIndex ('First name','Peter') |
4, car FieldIndex() renvoie une seule valeur, la première occurrence dans l'ordre de chargement. |
Fonction de script : étant donné que la table Names est chargée, comme dans les échantillons de données : |
|
John1: Load FieldIndex('First name','John') as MyJohnPos Resident Names; |
MyJohnPos=1, car 'John' apparaît en premier dans l'ordre de chargement du champ First name. En revanche, dans un volet de filtre, John figurerait en 2e position en commençant par le haut, car le contenu de la liste est trié par ordre alphabétique et pas selon l'ordre de chargement. |
Peter1: Load FieldIndex('First name','Peter') as MyPeterPos Resident Names; |
MyPeterPos=4, car FieldIndex() renvoie une seule valeur, la première occurrence dans l'ordre de chargement. |
Données utilisées dans l'exemple :
Names:
LOAD * inline [
First name|Last name|Initials|Has cellphone
John|Anderson|JA|Yes
Sue|Brown|SB|Yes
Mark|Carr|MC|No
Peter|Devonshire|PD|No
Jane|Elliot|JE|Yes
Peter|Franc|PF|Yes ] (delimiter is '|');
John1:
Load FieldIndex('First name','John') as MyJohnPos
Resident Names;
Peter1:
Load FieldIndex('First name','Peter') as MyPeterPos
Resident Names;