レポートにフィルタが含まれていて、コミュニティ コネクタがフィルタされていないデータを返す場合 リクエストされたすべてのフィールドに対してフィルタが適用されると、コネクタにフィルタが適用されます。 レスポンスが返されます。ただし、コミュニティ コネクタレベルでフィルタを適用すると、場合によってはパフォーマンスが大幅に向上します。フィルタ情報: getData() リクエスト オブジェクトで渡され、コネクタはこのオブジェクトを使用して 情報を使用してデータをフィルタし、Looker Studio に返送します。
たとえば、SQL データベースに接続する場合は、
WHERE
句(下の図の B3)に直接追加すると、
Looker Studio に返される行数ですその結果、
処理して Looker Studio(B5)に送信する必要があります
フィルタを適用するルール
- すべてのフィルタが適用されるか、まったく適用されないかのいずれかです。詳しくは、サポートされていないフィルタを参照してください
- レスポンスに
forFilterOnly
フィールドを含めないでください。 request.dimensionsFilters
配列の各エントリをAND
でつなぎます。たとえば、次のフィルタの場合、コネクタには
country
がUSA
かつsource
がSocial
の値。{ "dimensionsFilters": [ [{ "fieldName": "country", "values": ["USA"], "type": "INCLUDE", "operator": "EQUALS" }], [{ "fieldName": "source", "values": ["Social"], "type": "INCLUDE", "operator": "EQUALS" }] ] }
request.dimensionsFilters
配列の各サブ配列をOR
でつなぎます。たとえば、次のフィルタの場合、コネクタには
country
がUSA
またはcountry
がCanada
の値。{ "dimensionsFilters": [ [{ "fieldName": "country", "values": ["Canada"], "type": "INCLUDE", "operator": "EQUALS" }, { "fieldName": "country", "values": ["USA"], "type": "INCLUDE", "operator": "EQUALS" }] ] }
例
次の例は、レポート ユーザーがフィルタを定義するときから、コミュニティ コネクタがフィルタ処理されたデータを返すときまでのフロー全体を示しています。
レポート ユーザーは 2 つのフィルタを作成しました。
country
は、Canada, USA
のIN_LIST
になります。source
は、Social, Organic
のIN_LIST
になります。
レポート ユーザーは、
source
ディメンションでグラフ コンポーネントを設定しました およびsessions
指標getData()
は、次のリクエスト オブジェクトを使用して Looker Studio によって実行されます。{ "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" }] ] }
コネクタはフィルタ処理されたデータでレスポンスします。
このリクエスト例では、
source
とsessions
を返します。country
"Canada"
または"USA"
であり、かつsource
が"Social"
または"Organic"
である。 すべてのフィルタが使用可能になったため、filtersApplied
をtrue
に設定しました 適用されました。
元のデータ
source | sessions | country |
---|---|---|
Social | 60 | USA |
Social | 50 | Canada |
Social | 40 | UK |
Organic | 90 | USA |
Organic | 80 | Canada |
Organic | 70 | UK |
Newspaper | 30 | USA |
Newspaper | 20 | Canada |
Newspaper | 10 | UK |
フィルタされたデータ
source | sessions |
---|---|
Social | 60 |
Social | 50 |
Organic | 90 |
Organic | 80 |
getData()
レスポンス
{
"schema": [
{"name": "source", "dataType": "STRING"},
{"name": "sessions", "dataType": "NUMBER"},
],
"rows": [
{"values": ["Social", 60]},
{"values": ["Social", 50]},
{"values": ["Organic", 90]},
{"values": ["Organic", 80]}
],
"filtersApplied": true
}
サポートされていないフィルタ
コネクタがリクエスト内のフィルタをひとつでも適用できない場合、フィルタは実行されません。リクエストされたすべてのフィールド(forFilterOnly
を含む)を返す
レスポンスの filtersApplied
キーを false
に設定します。
例:
{
"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
}