Jika laporan berisi filter dan konektor komunitas menampilkan data yang tidak difilter untuk semua kolom yang diminta, Looker Studio akan menerapkan filter ke respons konektor. Namun, filter dapat diterapkan di tingkat konektor komunitas yang dapat meningkatkan performa secara signifikan dalam beberapa kasus. Informasi filter diteruskan dalam objek permintaan getData(), dan konektor dapat menggunakan informasi ini untuk memfilter data sebelum mengirimkannya kembali ke Looker Studio.
Misalnya, jika Anda terhubung ke database SQL, menerapkan filter
secara langsung dalam klausa WHERE
(B3 dalam diagram di bawah) dapat mengurangi
jumlah baris yang ditampilkan ke Looker Studio secara drastis. 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. Lihat Filter yang tidak didukung
- Jangan sertakan kolom
forFilterOnly
dalam respons. AND
menggabungkan setiap entri dalam arrayrequest.dimensionsFilters
.Misalnya, untuk filter berikut, konektor hanya boleh menyertakan nilai yang memiliki
country
USA
DANsource
dariSocial
.{ "dimensionsFilters": [ [{ "fieldName": "country", "values": ["USA"], "type": "INCLUDE", "operator": "EQUALS" }], [{ "fieldName": "source", "values": ["Social"], "type": "INCLUDE", "operator": "EQUALS" }] ] }
OR
menggabungkan setiap sub-array dalam arrayrequest.dimensionsFilters
.Misalnya, untuk filter berikut, konektor hanya boleh menyertakan nilai yang memiliki
country
USA
ATAUcountry
dariCanada
.{ "dimensionsFilters": [ [{ "fieldName": "country", "values": ["Canada"], "type": "INCLUDE", "operator": "EQUALS" }, { "fieldName": "country", "values": ["USA"], "type": "INCLUDE", "operator": "EQUALS" }] ] }
Contoh
Contoh berikut mengilustrasikan alur menyeluruh dari filter yang menentukan pengguna 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
dan metriksessions
getData()
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 contoh permintaan, tampilkan
source
dansessions
dengancountry
adalah"Canada"
atau"USA"
DANsource
adalah"Social"
atau"Organic"
. TetapkanfiltersApplied
ketrue
karena semua filter dapat berhasil diterapkan.
Data asli
source | sessions | 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 | sessions |
---|---|
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 tidak didukung
Jika konektor tidak dapat menerapkan semua filter dalam permintaan, pemfilteran tidak boleh dilakukan. Tampilkan semua kolom yang diminta (termasuk kolom forFilterOnly
) dan tetapkan 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
}