Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Verbindung testen
Sowohl der Persönliche Modus als auch der Standardmodus des lokalen Datengateways unterstützen benutzerdefinierte Konnektoren.
Beide Gatewaymodi unterstützen den Import. Direct Query wird nur im Standardmodus unterstützt. OAuth für benutzerdefinierte Connectors über Gateways unterstützt derzeit nur Gatewayadministratoren, nicht andere Datenquellenbenutzer.
Um die geplante Aktualisierung über das lokale Datengateway zu unterstützen, muss Ihr Connector einen TestConnection-Handler implementieren. Die Funktion wird aufgerufen, wenn der Benutzer Anmeldeinformationen für Ihre Quelle konfiguriert und verwendet, um sicherzustellen, dass sie gültig sind. Der Datenquellentyp legt den TestConnection-Handler im Datensatz fest. Sie hat die folgende Signatur:
(dataSourcePath) as list => ...
Hierbei dataSourcePath handelt es sich um den Datenquellenpfad-Wert für Ihre Funktion, und der Rückgabewert besteht aus:
- Der Name der funktion, die aufgerufen werden soll (diese Funktion muss als
#sharedgekennzeichnet sein und ist in der Regel Ihre primäre Datenquellenfunktion). - Ein oder mehrere Argumente, die an Ihre Funktion übergeben werden sollen.
Wenn der Aufruf der Funktion zu einem Fehler führt, schlägt TestConnection fehl, und die Anmeldeinformationen bleiben nicht erhalten.
Hinweis
Wie bereits erwähnt, muss der von TestConnection angegebene Funktionsname ein shared-Member sein.
Beispiel: Verbinder ohne erforderliche Argumente
Der folgende Codeausschnitt implementiert TestConnection für eine Datenquelle ohne erforderliche Parameter (z. B. die im TripPin-Lernprogramm gefundene). Connectors ohne erforderliche Parameter (als Singletons bezeichnet) benötigen keine vom Benutzer bereitgestellten Eingaben, um eine Verbindung (außer Anmeldeinformationen) zu testen. In diesem Fall ist der dataSourcePath Wert gleich dem Namen der Datenquellenart, und Sie können ihn ignorieren.
Die TripPin.Contents Funktion wird ohne andere Parameter aufgerufen.
TripPin = [
TestConnection = (dataSourcePath) => { "TripPin.Contents" },
Authentication = [
Anonymous = []
],
Label = "TripPin"
];
Beispiel: Connector mit einem URL-Parameter
Wenn die Datenquellenfunktion über einen einzelnen erforderlichen Parameter des Typs Uri.Typeverfügt, entspricht sie dataSourcePath der url, die vom Benutzer bereitgestellt wird. Der folgende Codeausschnitt zeigt die TestConnection-Implementierung aus dem GitHub-Beispiel.
GithubSample = [
TestConnection = (dataSourcePath) => {"GithubSample.Contents", dataSourcePath},
Authentication = [
OAuth = [
StartLogin = StartLogin,
FinishLogin = FinishLogin,
Label = Extension.LoadString("AuthenticationLabel")
]
]
];
Beispiel: Connector mit erforderlichen Parametern
Wenn die Datenquellenfunktion mehrere Parameter oder einen einzelnen Parameter ohne URL aufweist, handelt es sich bei dem dataSourcePath Wert um eine JSON-Zeichenfolge, die die Parameter enthält. Der folgende Codeausschnitt stammt aus dem DirectQueryForSQL-Beispiel .
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"
];