Jika laporan berisi filter dan konektor komunitas menampilkan data yang tidak difilter untuk semua kolom yang diminta, Looker Studio akan menerapkan filter ke konektor yang dihasilkan. Namun, filter dapat diterapkan di tingkat konektor komunitas, yang dapat meningkatkan performa secara signifikan dalam beberapa kasus. Informasi filter adalah diteruskan objek permintaan getData(), dan konektor dapat menggunakan objek ini informasi untuk memfilter data sebelum mengirimkannya kembali ke Looker Studio.
Misalnya, jika Anda terhubung ke database SQL, menerapkan filter
langsung di klausa WHERE
(B3 dalam diagram di bawah) dapat secara drastis mengurangi
jumlah baris yang ditampilkan ke Looker Studio. Pada akhirnya, hal ini akan membatasi jumlah
data yang harus diproses dan dikirim ke Looker Studio (B5).
Aturan penerapan filter
- Terapkan semua filter, atau tidak satu pun filter. Lihat Filter yang tidak didukung
- Jangan sertakan kolom
forFilterOnly
dalam respons. AND
bersama-sama setiap entri dalam arrayrequest.dimensionsFilters
.Misalnya, untuk filter berikut, konektor hanya boleh menyertakan nilai yang memiliki
country
dariUSA
DANsource
dariSocial
.{ "dimensionsFilters": [ [{ "fieldName": "country", "values": ["USA"], "type": "INCLUDE", "operator": "EQUALS" }], [{ "fieldName": "source", "values": ["Social"], "type": "INCLUDE", "operator": "EQUALS" }] ] }
OR
bersama-sama setiap sub-array dalam arrayrequest.dimensionsFilters
.Misalnya, untuk filter berikut, konektor hanya boleh menyertakan nilai yang memiliki
country
dariUSA
ATAUcountry
dariCanada
.{ "dimensionsFilters": [ [{ "fieldName": "country", "values": ["Canada"], "type": "INCLUDE", "operator": "EQUALS" }, { "fieldName": "country", "values": ["USA"], "type": "INCLUDE", "operator": "EQUALS" }] ] }
Contoh
Contoh berikut mengilustrasikan alur end-to-end dari pengguna laporan penentuan filter ke konektor komunitas yang menampilkan data yang difilter.
Pengguna laporan telah mengonfigurasi dua filter:
country
adalahIN_LIST
dariCanada, USA
source
adalahIN_LIST
dariSocial, Organic
Pengguna laporan telah mengonfigurasi komponen diagram dengan dimensi
source
dansessions
metrikgetData()
dijalankan oleh Looker Studio dengan objek permintaan berikut:{ "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" }] ] }
Konektor merespons dengan data yang difilter.
Untuk permintaan contoh, tampilkan
source
dansessions
dengancountry
adalah"Canada"
atau"USA"
DANsource
adalah"Social"
atau"Organic"
. SetelfiltersApplied
ketrue
karena semua filter dapat berhasil diterapkan.
Data asli
source | sesi | country |
---|---|---|
Sosial | 60 | AS |
Sosial | 50 | Kanada |
Sosial | 40 | Inggris Raya |
Organik | 90 | AS |
Organik | 80 | Kanada |
Organik | 70 | Inggris Raya |
Koran | 30 | AS |
Koran | 20 | Kanada |
Koran | 10 | Inggris Raya |
Data yang difilter
source | sesi |
---|---|
Sosial | 60 |
Sosial | 50 |
Organik | 90 |
Organik | 80 |
getData()
tanggapan
{
"schema": [
{"name": "source", "dataType": "STRING"},
{"name": "sessions", "dataType": "NUMBER"},
],
"rows": [
{"values": ["Social", 60]},
{"values": ["Social", 50]},
{"values": ["Organic", 90]},
{"values": ["Organic", 80]}
],
"filtersApplied": true
}
Filter yang tidak didukung
Jika konektor tidak dapat menerapkan semua filter dalam permintaan, pemfilteran tidak boleh
dilaksanakan. Tampilkan semua kolom yang diminta (termasuk forFilterOnly
kolom) dan setel kunci filtersApplied
dalam respons Anda terhadap false
.
Contoh:
{
"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
}