GetObjectField - fonction de graphique
GetObjectField() renvoie l'expression de champ de la dimension. Index est un nombre entier facultatif indiquant la dimension à renvoyer.
Il n'est pas possible d'utiliser cette fonction dans un graphique aux emplacements suivants : titre, sous-titre, pied de page, expression de ligne de référence et expression mini./maxi.
Il n'est pas possible de faire référence au nom d'une dimension ou d'une mesure dans un autre objet à l'aide du paramètre Object ID.
GetObjectField ([index])
chaîne
Exemple | Résultat |
---|---|
GetObjectField ()
GetObjectField (0) |
Renvoie l'expression de champ de la première dimension du graphique. |
GetObjectField (1) | Renvoie l'expression de champ de la deuxième dimension du graphique. |
Si vous souhaitez renvoyer le nom d'une mesure, utilisez plutôt la fonction GetObjectMeasure.
Exemple - Les bases de GetObjectField
Vue d'ensemble
Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à une nouvelle section.
Le script de chargement contient :
-
Jeu de données chargé dans une table de données appelée Example.
-
Champs suivants dans la table de données :
-
TransactionDate
-
CustomerID
-
TransactionQuantity
-
Script de chargement
Example:
LOAD * INLINE [
TransactionDate, CustomerID, TransactionQuantity
2018/08/30, 049681, 13
2018/08/30, 203521, 6
2018/08/30, 203521, 21
];
Résultats
Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :
-
TransactionDate
-
CustomerID
-
TransactionQuantity
Créez les mesures suivantes :
- =GetObjectField(), pour trouver la première dimension du tableau.
- =GetObjectField(0), pour trouver la première dimension du tableau.
- =GetObjectField(1), pour trouver la deuxième dimension du tableau.
TransactionDate | CustomerID | TransactionQuantity | GetObjectField () | GetObjectField (0) | GetObjectField (1) |
---|---|---|---|---|---|
2018/08/30 | 049681 | 13 | TransactionDate | TransactionDate | CustomerID |
2018/08/30 | 203521 | 6 | TransactionDate | TransactionDate | CustomerID |
2018/08/30 | 203521 | 21 | TransactionDate | TransactionDate | CustomerID |
En observant les résultats, vous pouvez voir que la fonction GetObjectField renvoie le nom du champ indiqué dans les paramètres de la fonction.
Exemple - Scénario GetObjectField avancé
Vue d'ensemble
Cet exemple utilise la fonction GetObjectField en combinaison avec des sélections de filtre. Le calcul de la dimension et de la mesure qui apparaît dans l'objet de graphique change en fonction du filtre que vous sélectionnez.
Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à une nouvelle section.
Le script de chargement contient :
-
Jeu de données chargé dans deux tables de données inline : Sales et Filter. La première table, Sales, contient les données relatives aux ventes. La deuxième table, Filter, contient une liste de noms de champ qui seront utilisés comme bascule de dimension. La bascule vous permet de passer d'une dimension à une autre dans un graphique et de personnaliser le calcul de la mesure qui apparaît en fonction de la dimension sélectionnée.
-
La table Sales contient les champs suivants :
-
Country
-
Salesperson
-
SalesValue
-
-
La table Filter contient les champs suivants : FilterField.
Script de chargement
Sales:
LOAD * INLINE [
Country, SalesPerson, SalesValue
USA, John, 500
USA, Alice, 700
Canada, Bob, 300
Canada, Carol, 400
Mexico, Dave, 200
];
Filter:
LOAD * INLINE [
FilterField
Country
SalesPerson
];
Résultats
-
Chargez les données et ouvrez une feuille. Créez un nouveau volet de filtre et ajoutez ce champ comme dimension :
-
FilterField
-
-
Dans le panneau des ressources, sous Champs, faites un clic droit sur FilterField et sélectionnez Paramètres de champ. Cochez la case Toujours une valeur sélectionnée, puis cliquez sur Enregistrer.
-
Créez une table et ajoutez une dimension en saisissant l'expression suivante :
-
=$(= FilterField)
-
Sous Étiquette, saisissez l'expression suivante pour définir le nom de colonne de la dimension : ='$(= FilterField)'.
-
-
Créez la mesure suivante :
-
=If(GetObjectField() = 'Country', Sum(SalesValue), Avg(SalesValue)), pour additionner les valeurs des ventes si la dimension sélectionnée est Country, sinon pour renvoyer la moyenne de la valeur des ventes lorsque la dimension sélectionnée est SalesPerson.
-
Sous Label, saisissez l'expression suivante pour définir le nom de colonne qui sera affiché pour la mesure en fonction de la sélection de filtre : =If(GetObjectField() = 'Country', 'Sum(SalesValue)', 'Avg(SalesValue)'). Par exemple, si Country est sélectionné dans le filtre, le nom de la mesure renverra la valeur Sum(SalesValue).
-
En mode d'analyse, lorsque vous passez de SalesPerson à Country dans le filtre FieldFilter, le tableau change de sorte à inclure la dimension sélectionnée et le calcul de la mesure correspondante pour cette dimension. Par exemple, si vous sélectionnez Country dans le filtre, le tableau affiche Country comme dimension dans la première colonne. La mesure utilise alors la fonction GetObjectField, la met en équivalence avec Country et renvoie Sum(SalesValue).
Volet de filtre et résultats du tableau pour Country

Le tableau suivant montre les résultats lorsque vous sélectionnez Country dans le filtre FilterField.
Country | Sum(SalesValue) |
---|---|
Canada | 700 |
Mexico | 200 |
USA | 1200 |
Le tableau suivant montre les résultats lorsque vous sélectionnez SalesPerson dans le filtre FilterField.
SalesPerson | Avg(SalesValue) |
---|---|
Alice | 700 |
Bob | 300 |
Carol | 400 |
Dave | 200 |
John | 500 |