Bagikan melalui


Menangani Akses Data

Fungsi Sumber Data

Data Koneksi or membungkus dan menyesuaikan perilaku fungsi sumber data di Pustaka M. Misalnya, ekstensi untuk REST API akan menggunakan fungsi Web.Contents untuk membuat permintaan HTTP. Saat ini, sekumpulan fungsi sumber data terbatas telah diaktifkan untuk mendukung ekstensibilitas.

Contoh:

[DataSource.Kind="HelloWorld", Publish="HelloWorld.Publish"]
shared HelloWorld.Contents = (optional message as text) =>
    let
        message = if (message <> null) then message else "Hello world"
    in
        message;

Jenis Sumber Data

Fungsi yang ditandai sebagai shared dalam ekstensi Anda dapat dikaitkan dengan sumber data tertentu dengan menyertakan DataSource.Kind atribut harfiah pada fungsi dengan nama rekaman definisi Sumber Data. Rekaman Sumber Data menentukan jenis autentikasi yang didukung oleh sumber data Anda, dan informasi merek dasar (seperti nama tampilan /label). Nama rekaman menjadi pengidentifikasi uniknya.

Setiap fungsi yang terkait dengan sumber data yang sama harus memiliki parameter fungsi yang diperlukan yang sama, termasuk nama, jenis, dan urutan. (Untuk tujuan Jenis Sumber Data, parameter tidak dianggap diperlukan jika ditandai optional atau jika metadatanya berisi DataSource.Path = false.)

Fungsi untuk Jenis Sumber Data tertentu hanya dapat menggunakan kredensial yang terkait dengan Jenis tersebut. Kredensial diidentifikasi pada runtime dengan melakukan pencarian berdasarkan kombinasi parameter fungsi yang diperlukan. Untuk informasi selengkapnya tentang bagaimana kredensial diidentifikasi, lihat Jalur Sumber Data.

Contoh:

HelloWorld = [
    Authentication = [
        Implicit = []
    ],
    Label = Extension.LoadString("DataSourceLabel")
];

Properti

Tabel berikut mencantumkan bidang untuk rekaman definisi Sumber Data Anda.

Bidang Jenis Detail
Autentikasi record Menentukan satu atau beberapa jenis autentikasi yang didukung oleh sumber data Anda. Setidaknya diperlukan satu jenis. Setiap jenis akan ditampilkan sebagai opsi dalam perintah kredensial Power Query. Untuk informasi selengkapnya, lihat Jenis Autentikasi.
Label text (opsional) Nama tampilan yang mudah diingat untuk ekstensi ini dalam dialog kredensial.
SupportsEncryption logis (opsional) Jika benar, UI akan menyajikan opsi untuk menyambungkan ke sumber data menggunakan koneksi terenkripsi. Ini biasanya digunakan untuk sumber data dengan mekanisme fallback yang tidak dienkripsi (umumnya ODBC atau sumber berbasis ADO.NET).

Terbitkan ke UI

Mirip dengan rekaman definisi Sumber Data, catatan Terbitkan menyediakan UI Power Query informasi yang diperlukan untuk mengekspos ekstensi ini dalam dialog Dapatkan Data .

Contoh:

HelloWorld.Publish = [
    Beta = true,
    ButtonText = { Extension.LoadString("FormulaTitle"), Extension.LoadString("FormulaHelp") },
    SourceImage = HelloWorld.Icons,
    SourceTypeImage = HelloWorld.Icons
];

HelloWorld.Icons = [
    Icon16 = { Extension.Contents("HelloWorld16.png"), Extension.Contents("HelloWorld20.png"), Extension.Contents("HelloWorld24.png"), Extension.Contents("HelloWorld32.png") },
    Icon32 = { Extension.Contents("HelloWorld32.png"), Extension.Contents("HelloWorld40.png"), Extension.Contents("HelloWorld48.png"), Extension.Contents("HelloWorld64.png") }
];

Properti

Tabel berikut ini mencantumkan bidang untuk catatan Terbitkan Anda.

Bidang Jenis Detail
Teks Tombol list Daftar item teks. Item pertama menentukan nama yang ditampilkan di samping ikon sumber data dalam dialog Dapatkan Data Power BI. Item kedua (opsional) mendefinisikan tip alat yang akan ditampilkan saat nama sebelumnya ditetikkan.
Category text Di mana ekstensi harus ditampilkan dalam dialog Dapatkan Data . Saat ini satu-satunya nilai kategori dengan handing khusus adalah Azure dan Database. Semua nilai lain akan berakhir di bawah kategori Lainnya.
Beta logis (opsional) Ketika diatur ke true, UI akan menampilkan pengidentifikasi Pratinjau/Beta di samping nama konektor Anda dan dialog peringatan bahwa implementasi konektor tunduk pada perubahan yang melanggar.
LearnMoreUrl text (opsional) Url ke situs web yang berisi informasi selengkapnya tentang sumber data atau konektor ini.
MendukungDirectQuery logis (opsional) Mengaktifkan Kueri Langsung untuk ekstensi Anda.
SourceImage record (opsional) Rekaman yang berisi daftar gambar biner (bersumber dari file ekstensi menggunakan metode Extension.Contents ). Rekaman berisi dua bidang (Icon16, Icon32), masing-masing dengan daftarnya sendiri. Setiap ikon harus berukuran berbeda.
SourceTypeImage record (opsional) Mirip dengan SourceImage, kecuali konvensi untuk banyak konektor out of the box adalah menampilkan ikon lembar dengan ikon spesifik sumber di sudut kanan bawah. Memiliki serangkaian ikon yang berbeda untuk SourceTypeImage bersifat opsional—banyak ekstensi hanya menggunakan kembali kumpulan ikon yang sama untuk kedua bidang.