Merk
Tilgang til denne siden krever autorisasjon. Du kan prøve å logge på eller endre kataloger.
Tilgang til denne siden krever autorisasjon. Du kan prøve å endre kataloger.
tilkoblingstest
Både personlige og standardmoduser av den lokale datagatewayen støtter tilpassede koblinger.
Begge gateway-modusene støtter import. Direct Query støttes kun i Standardmodus. OAuth for tilpassede koblinger gjennom gateways støtter for øyeblikket kun gateway-administratorer, ikke andre datakildebrukere.
For å støtte planlagt oppdatering gjennom den lokale datagatewayen, må kontakten din implementere en TestConnection-håndterer. Funksjonen kalles når brukeren konfigurerer legitimasjoner for kilden din, og brukes for å sikre at de er gyldige. Data Source Type setter TestConnection-håndtereren i posten. Den har følgende signatur:
(dataSourcePath) as list => ...
Hvor dataSourcePath er verdien for datakildestien for funksjonen din, og returverdien er en liste bestående av:
- Navnet på funksjonen du skal kalle (denne funksjonen må være merket som
#shared, og er vanligvis din primære datakildefunksjon). - Ett eller flere argumenter å videreformidle til din funksjon.
Hvis anropet av funksjonen resulterer i en feil, feiler TestConnection, og legitimasjonen opprettholdes ikke.
Note
Som nevnt tidligere må funksjonsnavnet som oppgis av TestConnection være et shared medlem.
Eksempel: Kobling uten nødvendige argumenter
Følgende kodeutdrag implementerer TestConnection for en datakilde uten nødvendige parametere (slik som den som finnes i TripPin-veiledningen). Kontakter uten nødvendige parametere (kalt Singletons) trenger ingen brukerinndata for å teste en tilkobling (annet enn legitimasjon). I dette tilfellet dataSourcePath er verdien lik navnet på Data Source Type, og du kan ignorere den.
Funksjonen TripPin.Contents kalles uten andre parametere.
TripPin = [
TestConnection = (dataSourcePath) => { "TripPin.Contents" },
Authentication = [
Anonymous = []
],
Label = "TripPin"
];
Eksempel: Connector med en URL-parameter
Hvis datakildefunksjonen din har én enkelt nødvendig parameter av typen Uri.Type, er den dataSourcePath lik URL-en som brukeren oppgir. Følgende utdrag viser TestConnection-implementeringen fra GitHub-eksempelet.
GithubSample = [
TestConnection = (dataSourcePath) => {"GithubSample.Contents", dataSourcePath},
Authentication = [
OAuth = [
StartLogin = StartLogin,
FinishLogin = FinishLogin,
Label = Extension.LoadString("AuthenticationLabel")
]
]
];
Eksempel: Kobling med nødvendige parametere
Hvis datakildefunksjonen din har flere parametere, eller en enkelt ikke-URL-parameter, er verdien dataSourcePath en JSON-streng som inneholder parameterne. Følgende utdrag kommer fra eksempelet 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"
];