處理閘道支援
測試連接
內部部署資料閘道 的個人和標準模式 都提供自訂連線or 支援。 這兩種閘道模式都支援 匯入 。 只有標準模式才支援直接查詢 。 透過閘道的自訂連接器 OAuth 目前僅支援閘道系統管理員,但不支援其他資料來源使用者。
當 Power BI 自訂資料連線或功能處於預覽狀態時,實作 Test連線ion 功能的方法可能會變更。
若要支援透過內部部署資料閘道排程重新整理,連接器 必須 實作 Test連線ion 處理常式。 當使用者設定來源的認證,並用來確保它們有效時,就會呼叫 函式。 Test連線ion 處理常式是在資料來源種類 記錄中 設定,且具有下列簽章:
(dataSourcePath) as list => ...
其中 dataSourcePath
是函式的 資料來源路徑 值,而傳回值是由下列專案所組成的清單:
- 要呼叫的函式名稱(此函式必須標示為
#shared
,而且通常是您的主要資料來源函式)。 - 要傳遞至函式的一或多個引數。
如果函式的叫用造成錯誤,則 Test連線ion 會被視為失敗,而且不會保存認證。
注意
如上所述,Test連線ion 所提供的函式名稱必須是 shared
成員。
範例:沒有必要引數連線or
下列程式碼片段會針對沒有必要參數的資料來源實作 Test連線ion(例如 TripPin 教學 課程中找到 的參數)。 沒有必要參數(稱為'Singletons') 的連線器不需要任何使用者提供的輸入來測試連線(認證以外的)。 在此情況下, dataSourcePath
值會等於資料來源種類的名稱,而且可以忽略。
未使用其他參數叫用函 TripPin.Contents
式。
TripPin = [
TestConnection = (dataSourcePath) => { "TripPin.Contents" },
Authentication = [
Anonymous = []
],
Label = "TripPin"
];
範例:使用 URL 參數連線or
如果您的資料來源函式具有類型的 Uri.Type
單一必要參數,則其 dataSourcePath
會等於使用者提供的 URL。 下列程式碼片段顯示 Github 範例 中的 Test連線ion 實作。
GithubSample = [
TestConnection = (dataSourcePath) => {"GithubSample.Contents", dataSourcePath},
Authentication = [
OAuth = [
StartLogin = StartLogin,
FinishLogin = FinishLogin,
Label = Extension.LoadString("AuthenticationLabel")
]
]
];
範例:具有必要參數連線or
如果您的資料來源函式有多個參數或單一非 URL 參數,則 dataSourcePath
值會是包含參數的 JSON 字串。 下列程式碼片段來自 DirectQueryForSQL 範例。
DirectSQL = [
TestConnection = (dataSourcePath) =>
let
json = Json.Document(dataSourcePath),
server = json[server],
database = json[database]
in
{ "DirectSQL.Database", server, database },
Authentication = [
Windows = [],
UsernamePassword = []
],
Label = "Direct Query for SQL"
];