Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
API unduhan file memungkinkan pengguna mengunduh data dari visual kustom ke dalam file di perangkat penyimpanan mereka. Mengunduh visual memerlukan persetujuan pengguna dan izin admin yang disediakan dalam sakelar global admin. Pengaturan ini terpisah dari dan tidak terpengaruh oleh pembatasan unduhan yang diterapkan dalam pengaturan penyewa ekspor dan berbagi organisasi Anda.
Catatan
API unduhan file memiliki tiga metode:
exportVisualsContenttersedia dari API versi 4.5statustersedia dari API versi 4.6.exportVisualsContentExtendedtersedia dari API versi 5.3.- Untuk mengetahui versi mana yang Anda gunakan, periksa
apiVersiondi file pbiviz.json .
Gunakan API unduhan file untuk mengekspor ke file dari jenis berikut:
- .txt
- .csv
- .json
- .tmplt
- .xml
- .xlsx
Sebelum unduhan dimulai, jendela muncul meminta untuk mengonfirmasi bahwa visual berasal dari sumber tepercaya.
Cara menggunakan API unduhan file
Untuk menggunakan API unduhan file, tambahkan deklarasi ke array hak istimewa dalam kemampuan visual.
API unduhan file memiliki tiga metode:
- status: tersedia dari API versi 4.6
exportVisualsContent: tersedia dari API versi 4.5exportVisualsContentExtended: tersedia dari API versi 5.3.
Perbedaan antara kedua metode adalah nilai pengembalian.
Metode status
Metode status mengembalikan status API unduhan file:
- PrivilegeStatus.DisabledByAdmin: sakelar admin penyewa nonaktif
- PrivilegeStatus.NotDeclared: visual tidak memiliki deklarasi untuk penyimpanan lokal dalam array hak istimewa
- PrivilegeStatus.NotSupported: API tidak didukung. Lihat batasan untuk informasi selengkapnya.
- PrivilegeStatus.Allowed: API didukung dan diizinkan.
Metode exportVisualsContent
Metode exportVisualsContent membutuhkan dua parameter:
- konten: string
- nama file: string
- fileType: string - Saat mengekspor ke file .pdf atau .xlsx ,
fileTypeparameter harusbase64 - fileDescription: string
Metode ini mengembalikan janji yang akan diselesaikan untuk nilai Boolean.
Metode exportVisualsContentExtended
Metode ini exportVisualsContentExtended juga memiliki empat parameter:
- konten: string
- nama file: string
- fileType: string - Saat mengekspor ke file .pdf atau .xlsx ,
fileTypeparameter harusbase64 - fileDescription: string
Metode ini mengembalikan janji, yang akan diselesaikan dengan hasil jenis ExportContentResultInfo yang berisi parameter berikut:
- downloadCompleted – jika pengunduhan berhasil diselesaikan.
- filename – nama file yang diekspor.
Contoh: API pengunduhan file
Berikut adalah contoh cara mengunduh konten visual kustom ke dalam file excel dan file teks.
import IDownloadService = powerbi.extensibility.IDownloadService;
...
export class Visual implements IVisual {
...
private downloadService: IDownloadService;
...
constructor(options: VisualConstructorOptions) {
this.downloadService = options.host.downloadService;
...
const downloadBtn: HTMLElement = document.createElement("button");
downloadBtn.onclick = () => {
let contentXlsx: string = ...;//content in base64
let contentTxt: string = ...;
this.downloadService.exportVisualsContent(contentTxt, "mytxt.txt", "txt", "txt file").then((result) => {
if (result) {
//do something
}
}).catch(() => {
//handle error
});
this.downloadService.exportVisualsContent(contentXlsx, "myfile.xlsx", "base64", "xlsx file").then((result) => {
if (result) {
//do something
}
}).catch(() => {
//handle error
});
this.downloadService.exportVisualsContentExtended(contentXlsx, "myfile.xlsx", "base64", "xlsx file").then((result) => {
if (result.downloadCompleted) {
//do something
console.log(result.fileName);
}
}).catch(() => {
//handle error
});
};
// if you are using API version > 4.6.0
downloadBtn.onclick = async () => {
try {
const status: powerbi.PrivilegeStatus = await this.downloadService.exportStatus();
if (status === powerbi.PrivilegeStatus.Allowed) {
const result = await this.downloadService.exportVisualsContent('aaaaa','a.txt', 'text/plain', 'aa');
// handle result
} else {
// handle if the API is not allowed
}
} catch (err) {
//handle error
}
}
}
}
Pertimbangan dan batasan
- API hanya didukung di desktop layanan Power BI dan Power BI
- Batas ukuran untuk file yang diunduh adalah 30 MB.
- API ini adalah API istimewa.