Share via


Gestione dell'accesso ai dati

Funzioni origine dati

Un Connessione or dati esegue il wrapping e personalizza il comportamento di una funzione dell'origine dati nella libreria M. Ad esempio, un'estensione per un'API REST userebbe la funzione Web.Contents per effettuare richieste HTTP. Attualmente, è stato abilitato un set limitato di funzioni di origine dati per supportare l'estendibilità.

Esempio:

[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;

Tipologia di origine dati

Le funzioni contrassegnate come shared nell'estensione possono essere associate a un'origine dati specifica includendo un DataSource.Kind attributo letterale nella funzione con il nome di un record di definizione dell'origine dati. Il record origine dati definisce i tipi di autenticazione supportati dall'origine dati e le informazioni di personalizzazione di base, ad esempio il nome visualizzato/etichetta. Il nome del record diventa l'identificatore univoco.

Ogni funzione associata alla stessa origine dati deve avere gli stessi parametri di funzione richiesti, tra cui nome, tipo e ordine. Ai fini del tipo di origine dati, un parametro non viene considerato obbligatorio se è contrassegnato optional o se i relativi metadati contengono DataSource.Path = false.

Le funzioni per un tipo di origine dati specifico possono usare solo le credenziali associate a tale tipo. Le credenziali vengono identificate in fase di esecuzione eseguendo una ricerca in base alla combinazione dei parametri obbligatori della funzione. Per altre informazioni sulla modalità di identificazione delle credenziali, vedere Percorsi origine dati.

Esempio:

HelloWorld = [
    Authentication = [
        Implicit = []
    ],
    Label = Extension.LoadString("DataSourceLabel")
];

Proprietà

Nella tabella seguente sono elencati i campi per il record di definizione dell'origine dati.

Campo Type Details
Autenticazione registra Specifica uno o più tipi di autenticazione supportati dall'origine dati. È necessario almeno un tipo. Ogni tipo verrà visualizzato come opzione nel prompt delle credenziali di Power Query. Per altre informazioni, vedere Tipi di autenticazione.
Label Testo (facoltativo) Nome visualizzato descrittivo per questa estensione nelle finestre di dialogo delle credenziali.
SupportsEncryption logico (facoltativo) Se true, l'interfaccia utente presenterà l'opzione per connettersi all'origine dati usando una connessione crittografata. Viene in genere usato per le origini dati con un meccanismo di fallback non crittografato (in genere ODBC o origini basate su ADO.NET).

Pubblica nell'interfaccia utente

Analogamente al record di definizione dell'origine dati, il record Publish fornisce all'interfaccia utente di Power Query le informazioni necessarie per esporre questa estensione nella finestra di dialogo Recupera dati.

Esempio:

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") }
];

Proprietà

Nella tabella seguente sono elencati i campi per il record publish.

Campo Type Details
ButtonText list Elenco di elementi di testo. Il primo elemento definisce il nome visualizzato accanto all'icona dell'origine dati nella finestra di dialogo Recupera dati di Power BI. Il secondo elemento (facoltativo) definisce la descrizione comando che verrà visualizzata quando il nome precedente è posizionato con il mouse.
Category Testo Posizione in cui deve essere visualizzata l'estensione nella finestra di dialogo Recupera dati . Attualmente gli unici valori di categoria con la mano speciale sono Azure e Database. Tutti gli altri valori verranno visualizzati nella categoria Altro.
Beta logico (facoltativo) Se impostato su true, l'interfaccia utente visualizzerà un identificatore Preview/Beta accanto al nome del connettore e una finestra di dialogo di avviso che l'implementazione del connettore è soggetta a modifiche di rilievo.
LearnMoreUrl Testo (facoltativo) URL del sito Web contenente altre informazioni su questa origine dati o connettore.
SupportsDirectQuery logico (facoltativo) Abilita Direct Query per l'estensione.
SourceImage registra (facoltativo) Record contenente un elenco di immagini binarie (originate dal file di estensione usando il metodo Extension.Contents ). Il record contiene due campi (Icon16, Icon32), ognuno con un proprio elenco. Ogni icona deve avere dimensioni diverse.
SourceTypeImage registra (facoltativo) Analogamente a SourceImage, tranne la convenzione per molti connettori predefiniti consiste nel visualizzare un'icona del foglio con l'icona specifica dell'origine nell'angolo in basso a destra. La presenza di un set diverso di icone per SourceTypeImage è facoltativa. Molte estensioni riutilizzano semplicemente lo stesso set di icone per entrambi i campi.