資料來源功能
資料連接器用來包裝並自訂 M 函式庫中資料來源函式的行為。 例如,REST API 的擴充功能會利用 Web.Contents 函式來發送 HTTP 請求。 目前,已啟用有限的資料來源函式以支援擴充性。
Example:
[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;
資料來源類型
標示為 shared 的函式可在函式上加入 DataSource.Kind 一個帶有資料來源定義記錄名稱的字面屬性,與特定資料來源相關聯。
資料來源紀錄定義了資料來源支援的認證類型,以及基本品牌資訊(例如顯示名稱/標籤)。
紀錄名稱即為其唯一識別碼。
每個與同一資料來源相關的函式必須具備相同的函式參數,包括名稱、類型與順序。 就資料來源類型而言,如果參數已標記為 optional 或其元資料包含 DataSource.Path = false,則該參數不被視為必填項。
特定資料來源類別的功能只能使用該類別相關的憑證。 憑證可於執行時根據函式所需參數組合進行查詢來識別。 欲了解更多關於憑證如何識別的資訊,請參閱 資料來源路徑。
Example:
HelloWorld = [
Authentication = [
Implicit = []
],
Label = Extension.LoadString("DataSourceLabel")
];
屬性
下表列出您的資料來源定義紀錄欄位。
| 領域 | 類型 | 詳細資訊 |
|---|---|---|
| Authentication | 資料列 | 指定由資料來源支援的一種或多種認證方式。 至少需要一種。 每種類型都會在 Power Query 憑證提示中顯示為一個選項。 欲了解更多資訊,請參閱 認證類型。 |
| 標籤 | 收發簡訊 | (可選) 在憑證對話框中,該擴充功能的顯示名稱將以友善方式呈現。 |
| 支援加密 | 合乎邏輯 | (可選) 當為真時,介面會顯示使用加密連線連接資料來源的選項。 這通常用於具有非加密備援機制的資料來源(通常是基於 ODBC 或 ADO.NET 的來源)。 |
發佈到使用者介面
與 資料來源 定義記錄類似,發佈記錄提供 Power Query UI 所需的資訊,以便在 「取得資料 」對話框中揭露此擴充功能。
Example:
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") }
];
屬性
下表列出您的發佈記錄欄位。
| 領域 | 類型 | 詳細資訊 |
|---|---|---|
| ButtonText | list | 文字項目列表。 第一個項目定義了 Power BI 取得資料 對話框中資料來源圖示旁顯示的名稱。 第二個項目(可選)定義了當滑鼠移到前一個名稱時會顯示的工具提示。 |
| 類別 | 收發簡訊 | 擴充功能應該顯示在 「取得資料 」對話框中。 目前唯一具有特殊處理的類別值是 Azure 和 Database。 其他所有數值都會歸入「其他」類別。 |
| Beta | 合乎邏輯 | (可選) 當設定為 true 時,介面會在你的連接器名稱旁顯示預覽/Beta 識別碼,並跳出警告對話框,說明連接器的實作可能會有破壞性變更。 |
| 學習更多網址 | 收發簡訊 | (可選) 網址為包含更多關於此資料來源或連接器資訊的網站。 |
| 支援DirectQuery | 合乎邏輯 | (可選) 啟用 Direct Query 以供您的擴充功能使用。 |
| 來源圖片 | 資料列 | (可選) 一個包含二進位影像清單的記錄(來源為使用 Extension.Contents 方法的副檔名檔案)。 該紀錄包含兩個欄位(Icon16、Icon32),每個欄位都有自己的清單。 每個圖示應該有不同的大小。 |
| SourceTypeImage | 資料列 | (可選) 類似 SourceImage,但許多現成連接器的慣例是右下角顯示一個圖示,並顯示出來源專屬圖示。 SourceTypeImage 可選擇使用不同圖示集合——許多擴充功能只是重複使用同一組圖示來處理兩個欄位。 |