Gestione del supporto del gateway

Test connessione

Il supporto di Connessione or personalizzato è disponibile in modalità Personale e Standard del gateway dati locale. Entrambe le modalità gateway supportano l'importazione. Direct Query è supportato solo in modalità Standard. OAuth per i connettori personalizzati tramite gateway è attualmente supportato solo per gli amministratori del gateway, ma non per altri utenti dell'origine dati.

È probabile che il metodo per l'implementazione della funzionalità Test Connessione ion cambi mentre la funzionalità di Connessione or dei dati personalizzati di Power BI è in anteprima.

Per supportare l'aggiornamento pianificato tramite il gateway dati locale, il connettore deve implementare un gestore test Connessione ion. La funzione viene chiamata quando l'utente configura le credenziali per l'origine e viene usata per assicurarsi che siano valide. Il gestore Test Connessione ion viene impostato nel record Tipo origine dati e ha la firma seguente:

(dataSourcePath) as list => ...

Dove dataSourcePath è il valore Percorso origine dati per la funzione e il valore restituito è un elenco composto da:

  • Nome della funzione da chiamare (questa funzione deve essere contrassegnata come #sharede in genere è la funzione di origine dati primaria).
  • Uno o più argomenti da passare alla funzione.

Se la chiamata della funzione genera un errore, Test Connessione ion viene considerata non riuscita e le credenziali non verranno mantenute.

Nota

Come indicato in precedenza, il nome della funzione fornito da Test Connessione ion deve essere un shared membro.

Esempio: Connessione or senza argomenti obbligatori

Il frammento di codice seguente implementa Test Connessione ion per un'origine dati senza parametri obbligatori , ad esempio quello presente nell'esercitazione TripPin. Connessione ors senza parametri obbligatori (denominati "Singletons") non necessitano di alcun input fornito dall'utente per testare una connessione (ad eccezione delle credenziali). In questo caso, il dataSourcePath valore sarà uguale al nome del tipo di origine dati e può essere ignorato. La TripPin.Contents funzione viene richiamata senza parametri aggiuntivi.

TripPin = [
    TestConnection = (dataSourcePath) => { "TripPin.Contents" },
    Authentication = [
        Anonymous = []
    ],
    Label = "TripPin"
];

Esempio: Connessione or con un parametro URL

Se la funzione dell'origine dati ha un singolo parametro obbligatorio del tipo Uri.Type, sarà dataSourcePath uguale all'URL fornito dall'utente. Il frammento di codice seguente mostra l'implementazione test Connessione ion dell'esempio github.

GithubSample = [
    TestConnection = (dataSourcePath) => {"GithubSample.Contents", dataSourcePath},
    Authentication = [
        OAuth = [
            StartLogin = StartLogin,
            FinishLogin = FinishLogin,
            Label = Extension.LoadString("AuthenticationLabel")
        ]
    ]
];

Esempio: Connessione or con parametri obbligatori

Se la funzione dell'origine dati ha più parametri o un singolo parametro non URL, il dataSourcePath valore sarà una stringa JSON contenente i parametri. Il frammento di codice seguente proviene dall'esempio 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"
];