Si un rapport contient des filtres et qu'un connecteur de communauté affiche des données non filtrées pour tous les champs demandés, Looker Studio appliquera des filtres au connecteur de réponse. Toutefois, les filtres peuvent être appliqués au niveau du connecteur de communauté, peut améliorer significativement les performances dans certains cas. Les informations de filtre sont transmis dans l'objet de requête getData(). Le connecteur peut alors utiliser ce pour filtrer les données avant de les renvoyer à Looker Studio.
Par exemple, si vous vous connectez à une base de données SQL, appliquez les filtres
directement dans la clause WHERE
(B3 dans le diagramme ci-dessous) peut réduire considérablement
le nombre de lignes renvoyées dans Looker Studio. Cela limite, à son tour, la quantité
de données à traiter et à envoyer à Looker Studio (B5).
Règles d'application des filtres
- Appliquer tous les filtres, ou aucun. Voir Filtres incompatibles
- N'incluez pas de champs
forFilterOnly
dans la réponse. AND
ensemble chaque entrée du tableaurequest.dimensionsFilters
.Par exemple, pour le filtre suivant, le connecteur ne doit inclure que valeurs dont l'
country
estUSA
ET l'source
deSocial
.{ "dimensionsFilters": [ [{ "fieldName": "country", "values": ["USA"], "type": "INCLUDE", "operator": "EQUALS" }], [{ "fieldName": "source", "values": ["Social"], "type": "INCLUDE", "operator": "EQUALS" }] ] }
OR
ensemble chaque sous-tableau du tableaurequest.dimensionsFilters
.Par exemple, pour le filtre suivant, le connecteur ne doit inclure que les valeurs dont l'
country
estUSA
OU lacountry
deCanada
.{ "dimensionsFilters": [ [{ "fieldName": "country", "values": ["Canada"], "type": "INCLUDE", "operator": "EQUALS" }, { "fieldName": "country", "values": ["USA"], "type": "INCLUDE", "operator": "EQUALS" }] ] }
Exemple
L'exemple suivant illustre un flux de bout en bout généré par l'utilisateur du rapport définir des filtres vers le connecteur de communauté renvoyant des données filtrées.
L'utilisateur du rapport a configuré deux filtres:
country
estIN_LIST
surCanada, USA
source
estIN_LIST
surSocial, Organic
L'utilisateur du rapport a configuré un composant de graphique avec la dimension
source
etsessions
métriquegetData()
est exécuté par Looker Studio avec l'objet de requête suivant:{ "fields": [ {"name": "source"}, {"name": "sessions"}, {"name": "country", "forFilterOnly": true} ], "dimensionsFilters": [ [{ "fieldName": "country", "values": ["Canada", "USA"], "type": "INCLUDE", "operator": "IN_LIST" }], [{ "fieldName": "source", "values": ["Social", "Organic"], "type": "INCLUDE", "operator": "IN_LIST" }] ] }
Le connecteur renvoie des données filtrées.
Pour l'exemple de requête, renvoyez
source
etsessions
, oùcountry
est"Canada"
ou"USA"
ETsource
est"Social"
ou"Organic"
.filtersApplied
étant défini surtrue
, tous les filtres ont pu être appliqué avec succès.
Données d'origine
source | sessions | country |
---|---|---|
Réseau social | 60 | USA |
Réseau social | 50 | Canada |
Réseau social | 40 | Royaume-Uni |
Bio | 90 | USA |
Bio | 80 | Canada |
Bio | 70 | Royaume-Uni |
Journal | 30 | USA |
Journal | 20 | Canada |
Journal | 10 | Royaume-Uni |
Données filtrées
source | sessions |
---|---|
Réseau social | 60 |
Réseau social | 50 |
Bio | 90 |
Bio | 80 |
getData()
réponse
{
"schema": [
{"name": "source", "dataType": "STRING"},
{"name": "sessions", "dataType": "NUMBER"},
],
"rows": [
{"values": ["Social", 60]},
{"values": ["Social", 50]},
{"values": ["Organic", 90]},
{"values": ["Organic", 80]}
],
"filtersApplied": true
}
Filtres non compatibles
Si le connecteur ne peut pas appliquer tous les filtres de la requête, aucun filtrage ne doit être
d'exécution. Renvoyer tous les champs demandés (y compris forFilterOnly
)
) et définissez la clé filtersApplied
dans votre réponse à false
.
Exemple :
{
"schema": [
{"name": "source", "dataType": "STRING"},
{"name": "sessions", "dataType": "NUMBER"},
{"name": "country", "dataType": "STRING"}
],
"rows": [
{"values": ["Social", 60, "USA"]},
{"values": ["Social", 50, "Canada"]},
{"values": ["Social", 40, "UK"]},
{"values": ["Organic", 90, "USA"]},
{"values": ["Organic", 80, "Canada"]},
{"values": ["Organic", 70, "UK"]},
{"values": ["Newspaper", 30, "USA"]},
{"values": ["Newspaper", 20, "Canada"]},
{"values": ["Newspaper", 10, "UK"]},
],
"filtersApplied": false
}