Quick BI memungkinkan integrasi laporan (dashboard, workbook) dari ruang grup ke dalam sistem eksternal, sehingga menyederhanakan proses bisnis. Panduan ini menjelaskan cara menyematkan laporan ke dalam sistem pihak ketiga dan relevan untuk Edisi Pro dan Edisi Profesional.
Batasan
Edisi Dasar hanya mendukung penyematan dashboard dan workbook.
Beberapa browser mungkin memblokir iframe penyematan lintas asal saat menyematkan halaman pelaporan workbook ke dalam lingkungan pihak ketiga. Hal ini dapat mencegah penulisan cookie dan menyebabkan kegagalan pengiriman data pada halaman pelaporan workbook yang kompleks. Sebagai contoh, browser bawaan WeCom pada sistem iOS mungkin mengalami masalah pengiriman data setelah menyematkan halaman pelaporan workbook yang kompleks dan mencoba mengirimkan data.
Oleh karena itu, disarankan untuk menggunakan fitur pelaporan workbook langsung di platform Quick BI.
Informasi latar belakang
Untuk menyematkan dan memanfaatkan laporan Quick BI dalam sistem Anda, Anda harus menyiapkan fungsi penyematan laporan.
Dengan Quick BI Pro, penyematan laporan pihak ketiga tidak membedakan izin database. Setelah penyematan, izin tingkat baris tidak berlaku, dan izin default menjadi milik pembuat laporan. Solusi peningkatan keamanan tidak didukung.
Sebaliknya, Quick BI Professional Edition memungkinkan izin database yang berbeda saat menyematkan laporan ke dalam sistem pihak ketiga. Edisi ini memungkinkan pengguna yang berbeda untuk melihat laporan yang sama dengan data yang bervariasi dan mendukung solusi peningkatan keamanan untuk penyematan. Untuk informasi lebih lanjut, lihat Solusi Peningkatan Keamanan untuk Kontrol Izin Data dan Transmisi Parameter dalam Laporan Tersemat.
Ada lima situs internasional, masing-masing dengan nama domain sendiri:
Singapura: bi-ap-southeast-1.data.aliyun.com
Hong Kong (Tiongkok): bi-cn-hongkong.data.aliyun.com
Kuala Lumpur, Malaysia: bi-ap-southeast-3.data.aliyun.com
Frankfurt, Jerman: bi-eu-central-1.data.aliyun.com
Indonesia: bi-ap-southeast-5.data.aliyun.com
Panduan ini menggunakan nama domain Hong Kong (Tiongkok) sebagai contoh untuk penggabungan tautan. Gantilah dengan nama domain situs yang sesuai untuk lokasi lainnya.
Langkah 1: Aktifkan laporan untuk disematkan
Penyematan laporan hanya didukung untuk laporan dalam status diterbitkan.
Untuk mengaktifkan penyematan laporan, akses modul platform terbuka:
Navigasikan ke halaman laporan tersemat dari halaman utama produk Quick BI seperti yang ditunjukkan pada gambar di bawah ini.

Di halaman Add Embedded Report, pilih ruang kerja dan tipe objek data yang diinginkan, lalu pilih nama objek data dari daftar dan klik Enable Embedding. Gunakan fungsi pencarian nama laporan untuk dengan cepat menemukan laporan yang ingin Anda sematkan.
CatatanBeberapa browser mungkin memblokir iframe penyematan lintas asal saat menyematkan halaman pelaporan workbook ke dalam lingkungan pihak ketiga. Hal ini dapat mencegah penulisan cookie dan menyebabkan kegagalan pengiriman data pada halaman pelaporan workbook. Oleh karena itu, disarankan untuk menggunakan fitur pelaporan workbook langsung di platform Quick BI.
Konfigurasi Penyematan
Fitur debugging untuk konfigurasi penyematan laporan dimaksudkan untuk solusi yang ditingkatkan.
PentingDebugging ini hanya untuk pengujian fitur. Untuk penyebaran sebenarnya, harap selesaikan Langkah 2: Dapatkan accessTicket melalui antarmuka HTTPS dan Langkah 3: Gabungkan URL single sign-on.
Setelah mengaktifkan penyematan, kemampuan skema dasar dan skema ditingkatkan berbeda selama integrasi sebenarnya. Lihat tabel di bawah ini untuk detailnya:
Kemampuan
Skema dasar
Skema ditingkatkan
Pengikatan pengguna
Pemilik laporan, tidak dapat diubah
Mendukung penyesuaian, dipersonalisasi untuk setiap pengguna
Permintaan akses
Maksimal 100.000 kali per tiket
Tanpa Batas, mendukung pengaturan kustom
Watermark
Tidak didukung
Didukung
(Kecuali layar besar yang tidak mendukung watermark)
Masa berlaku
Maksimum 240 menit
Mendukung penyesuaian
Parameter global
Tidak didukung
Didukung
Blok penyematan
Tidak didukung
Didukung
Jumlah lompatan
CatatanLaporan yang akan dilompati juga perlu mengaktifkan penyematan.
Hanya bisa melompat sekali
Contoh: Setelah laporan A melompat ke laporan B, laporan B tidak dapat melompat ke laporan C.
Mendukung lompatan tanpa batas
Contoh: Setelah laporan A melompat ke laporan B, laporan B masih dapat melompat ke laporan C, dan C dapat terus melompat lebih jauh, dan seterusnya.
Langkah 2: Dapatkan accessTicket melalui antarmuka HTTPS
Bab ini menggunakan contoh penyematan dashboard dari ruang grup ke dalam sistem pihak ketiga.
Jika akun yang mengaktifkan akses dashboard memiliki izin pengembang atau analisis, maka hanya dapat mengaktifkan akses untuk dashboard yang dibuat oleh akun tersebut.
Jika akun memiliki izin manajemen, maka dapat mengaktifkan akses untuk semua laporan dalam ruang kerja tersebut.
Ikuti langkah-langkah berikut untuk mendapatkan ID AccessKey dan AccessKey Secret Anda, yang disebut sebagai accessId dan accessKey.
Masuk ke Konsol Quick BI.
Di halaman utama Quick BI, ikuti petunjuk pada gambar di bawah ini untuk mendapatkan ID AccessKey dan AccessKey Secret Anda.

Dapatkan ID akun Alibaba Cloud Anda, yang juga dikenal sebagai aliyunUid.
Masuk ke akun Alibaba Cloud Anda, lalu klik foto profil di sudut kanan atas untuk melihat ID akun.

Di halaman pengeditan laporan, dapatkan ID laporan, juga dikenal sebagai worksId:

Dapatkan accessTicket
Gabungkan parameter accessId, accessKey, aliyunUid, dan worksId yang diperoleh di langkah sebelumnya ke dalam alamat permintaan berikut dan kirim permintaan GET untuk mendapatkan accessTicket.
CatatanAliyunUid digunakan hanya untuk menghasilkan accessTicket dan memverifikasi apakah peran saat ini memiliki izin untuk mengaktifkan Single Sign-On (SSO) untuk laporan organisasi. Ini tidak mengikat identitas laporan tersemat pihak ketiga.
ValidityTime adalah parameter opsional dengan rentang nilai 1 hingga 240, secara default 240. Satuannya adalah menit.
Untuk segera membatalkan accessTicket, kirim permintaan POST dengan nilai aliyunUid, accessId, accessKey, dan accessTicket yang sesuai.
http://bi-cn-hongkong.data.aliyun.com//openapi/ac3rd/ticket/invalid?aliyunUid=xx&accessId=xx&accessKey=xx&accessTicket=xx
Langkah 3: Gabungkan URL single sign-on
Skema ini tidak mendukung pengikatan otentikasi pengguna. Secara default, laporan diakses seolah-olah oleh pemilik laporan.
Lihat tabel di bawah ini untuk proses penggabungan dan contohnya.
Proses | Contoh Dashboard | Contoh Workbook |
|
| |
|
| |
|
| |
|
|
Format untuk penggabungan dan URL laporan adalah sebagai berikut:
Untuk dashboard, format penggabungan adalah
https://<Nama Domain Quick BI>/<URL Pratinjau Laporan>?pageId=<ID Laporan>&accessTicket=<AccessTicket>. URL yang dihasilkan adalah:https://bi-cn-hongkong.data.aliyun.com//token3rd/dashboard/view/pc.htm?pageId=dd0****83f&accessTicket=fd138bcb-****-4fde-b413-81bcee59bdb6Untuk workbook, format penggabungan adalah
https://<Nama Domain Quick BI>/<URL Pratinjau Laporan>?id=<ID Laporan>&accessTicket=<AccessTicket>. URL yang dihasilkan adalah:https://bi-cn-hongkong.data.aliyun.com//token3rd/report/view.htm?id=<42****18ef6>&accessTicket=fd138bcb-****-4fde-b413-81bcee59bdb6
Tentukan nama domain Quick BI.
Sebagai contoh, nama domain untuk situs Quick BI Hong Kong (Tiongkok) adalah
bi-cn-hongkong.data.aliyun.com/. Gunakan nama domain spesifik untuk lingkungan Anda.Identifikasi URL pratinjau laporan.
URL untuk halaman pratinjau yang sesuai dengan jenis laporan tercantum di bawah ini. Pilih sesuai kebutuhan Anda.
Untuk Dashboard:
token3rd/dashboard/view/pc.htmUntuk Workbook:
token3rd/report/view.htm
Dapatkan ID laporan di halaman pengeditan laporan.
Untuk ID Dashboard
Di halaman pengeditan dashboard, temukan nilai pageId dashboard di bilah alamat.

Untuk ID Workbook
Di halaman pengeditan workbook, temukan nilai ID workbook di bilah alamat.

Gabungkan nama domain Quick BI, URL pratinjau laporan, ID laporan, dan parameter AccessTicket yang diperoleh di Langkah 2 ke dalam alamat permintaan di bawah ini.
Untuk dashboard, gunakan format
https://<Nama Domain Quick BI>/<URL Pratinjau Laporan>?pageId=<ID Laporan>&accessTicket=<AccessTicket>Untuk workbook, gunakan format
https://<Nama Domain Quick BI>/<URL Pratinjau Laporan>?id=<ID Laporan>&accessTicket=<AccessTicket>
Kelola laporan tersemat
Untuk laporan pihak ketiga yang telah disematkan, Anda dapat melakukan operasi berikut:
Untuk memeriksa laporan tersemat, masukkan kata kunci nama laporan di kotak pencarian di halaman daftar laporan dan klik ikon
.Anda dapat mempersempit pencarian dengan memilih ruang kerja atau tipe laporan.
Untuk melihat jumlah laporan tersemat, lihat Lihat Jumlah Laporan Tersemat.
Untuk menghapus laporan tersemat, klik ikon
di sebelah laporan.
Lihat jumlah laporan tersemat
Di halaman utama produk Quick BI, klik Platform Terbuka.
Di panel navigasi sisi kiri, klik Analisis Tersemat.
Di halaman Penyematan Laporan, jumlah laporan yang disematkan ke dalam sistem pihak ketiga ditampilkan.

Bagaimana cara menyelesaikan kesalahan "akses report_tree tidak sah" saat menyematkan laporan?
Deskripsi masalah
Saat menyematkan laporan ke dalam sistem pihak ketiga, Anda mungkin mengalami pesan kesalahan berikut. 
Penyebab
Kesalahan ini terjadi ketika izin laporan belum diaktifkan di ruang grup yang sesuai.
Solusi
Aktifkan izin laporan dengan mengikuti langkah-langkah yang diilustrasikan di bawah ini. 
Bagaimana cara menyesuaikan ketinggian laporan Quick BI tersemat pihak ketiga secara otomatis (PC)?
Deskripsi masalah
Saat menyematkan dashboard Quick BI menggunakan Iframe, pembatasan keamanan lintas domain browser dapat mencegah mendapatkan ketinggian dashboard, menyebabkan munculnya bilah gulir.
Solusi
Quick BI mentransmisikan ketinggian dashboard ke halaman eksternal menggunakan postMessage saat memuat. Halaman eksternal dapat mendengarkan acara ini untuk mendapatkan ketinggian dan ID dashboard.
Ada dua metode untuk mencapai ini:
Kirim proaktif tinggi konten Iframe ke halaman eksternal.
// Alamat Quick BI, tambahkan alamat lain jika digunakan const quickBIURL = ['https://bi-cn-hongkong.data.aliyun.com/']; function messageListener(event) { if (quickBIURL.includes(event.origin)) { // Tinggi yang ditransmisikan menggunakan postMessage console.log('Tinggi Dashboard Quick BI:', event.data.height); // ID halaman dashboard yang ditransmisikan menggunakan postMessage console.log('ID Dashboard Quick BI:', event.data.pageId); } } // Dengarkan sebelum dashboard dimuat window.addEventListener('message', messageListener);Halaman eksternal mengirim postMessage ke halaman Iframe untuk meminta tinggi dashboard.
Catatan:
Iframe mengacu pada yang menyematkan dashboard Quick BI.
Pesan harus mencakup
{ getDashboardHeight: true }.
Di bawah ini adalah contoh blok kode.
// Alamat Quick BI, tambahkan alamat lain jika digunakan const quickBIURL = ['https://bi-cn-hongkong.data.aliyun.com/']; function messageListener(event) { if (quickBIURL.includes(event.origin)) { // Tinggi yang ditransmisikan menggunakan postMessage console.log('Tinggi Dashboard Quick BI:', event.data.height); // ID halaman dashboard yang ditransmisikan menggunakan postMessage console.log('ID Dashboard Quick BI:', event.data.pageId); } } // Dengarkan sebelum dashboard dimuat window.addEventListener('message', messageListener); // Iframe yang menyematkan dashboard Quick BI const iframe = document.querySelector('iframe'); // Permintaan proaktif tinggi dashboard Quick BI // Data yang dilewatkan dalam pesan harus mencakup { getDashboardHeight: true } iframe.contentWindow.postMessage({getDashboardHeight: true}, '*');CatatanLebar dashboard Quick BI secara otomatis menyesuaikan dengan wadah luar, menghilangkan kebutuhan untuk bilah gulir vertikal dan penyesuaian lebar.
Contoh Lengkap
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
</head>
<body>
<iframe
class="quickbi-iframe-demo"
src="https://bi-cn-hongkong.data.aliyun.com//token3rd/dashboard/view/pc.htm?pageId=dd0****83f&accessTicket=fd138bcb-****-4fde-b413-81bcee59bdb6"
scrolling="no"
frameborder="0"
width="100%"
height="600">
</iframe>
<!-- <useBodyAutoHeight=true> untuk penyesuaian tinggi body otomatis, <page_Id> adalah ID halaman dashboard, accessTicket adalah token akses untuk dashboard -->
<script>
// Alamat Quick BI, tambahkan alamat lain jika digunakan
const quickBIURL = ['https://bi-cn-hongkong.data.aliyun.com'];
function messageListener(event) {
if (quickBIURL.includes(event.origin)) {
// Tinggi yang ditransmisikan menggunakan postMessage
console.log('Tinggi Dashboard Quick BI:', event.data.height);
// ID halaman dashboard yang ditransmisikan menggunakan postMessage
console.log('ID Dashboard Quick BI:', event.data.pageId);
}
}
// Dengarkan sebelum dashboard dimuat
window.addEventListener('message', messageListener);
// Iframe yang menyematkan dashboard Quick BI
const iframe = document.querySelector('iframe');
// Permintaan proaktif tinggi dashboard Quick BI
// Data yang dilewatkan dalam pesan harus mencakup { getDashboardHeight: true }
iframe.contentWindow.postMessage({getDashboardHeight: true}, '*');
</script>
</body>
</html>Bagaimana cara mengatur lebar saat menyematkan ke aplikasi pihak ketiga menggunakan Iframe di halaman seluler?
Deskripsi masalah
Masalah kompatibilitas dengan Iframe pada versi iOS yang lebih lama dapat menyebabkan lebar sebenarnya dari Iframe meluap, mengakibatkan berbagai masalah tampilan seperti dashboard bergeser, tabel daftar tetap tidak dapat digulir, bagan terpotong, dan kotak pop-up kontrol kueri tidak sejajar.
Solusi
Atur gaya Iframe sesuai.
Ikuti kode contoh di bawah ini dengan cermat untuk modifikasi:
iframe {
border-width: 0;
min-width: 100%;
width: 0;
*width: 100%;
height: 667px; /* Tinggi harus menggunakan bidang statis, yang dapat diatur secara dinamis setelah mendapatkan tinggi layar. height: 100% akan memiliki masalah kompatibilitas */
}