Gegevenstoegang verwerken

Gegevensbronfuncties

Met een gegevensconnector wordt het gedrag van een gegevensbronfunctie in de M-bibliotheekverpakt en aangepast. Een extensie voor een REST API maakt bijvoorbeeld gebruik van de functie Web.Contents om HTTP-aanvragen te maken. Op dit moment is een beperkte set gegevensbronfuncties ingeschakeld ter ondersteuning van de extensibility.

Voorbeeld:

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

Soort gegevensbron

Functies die zijn gemarkeerd als in uw extensie kunnen worden gekoppeld aan een specifieke gegevensbron door een metagegevensrecord op te nemen in de functie met de naam van een shared DataSource.Kind gegevensbrondefinitierecord. De gegevensbronrecord definieert de verificatietypen die worden ondersteund door uw gegevensbron en basisinformatie over de huisstijl (zoals de weergavenaam/het label). De naam van de record wordt een unieke id.

Functies die zijn gekoppeld aan een gegevensbron moeten dezelfde vereiste functieparameters hebben (inclusief naam, type en volgorde). Functies voor een specifiek soort gegevensbron kunnen alleen referenties gebruiken die zijn gekoppeld aan dat type. Referenties worden tijdens runtime geïdentificeerd door een opzoekactie uit te voeren op basis van de combinatie van de vereiste parameters van de functie. Zie Gegevensbronpaden voor meer informatie over hoe referenties worden geïdentificeerd.

Voorbeeld:

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

Eigenschappen

De volgende tabel bevat de velden voor uw gegevensbrondefinitierecord.

Veld Type Details
Verificatie opnemen Hiermee geeft u een of meer typen verificatie op die worden ondersteund door uw gegevensbron. Er is ten minste één soort vereist. Elk type wordt weergegeven als een optie in de Power Query referentieprompt. Zie Verificatiemethoden voor meer informatie.
Label tekst (optioneel) Gebruiksvriendelijke weergavenaam voor deze extensie in referentiedialoogvensters.
SupportsEncryption logisch (optioneel) Indien waar, biedt de gebruikersinterface de optie om verbinding te maken met de gegevensbron met behulp van een versleutelde verbinding. Dit wordt doorgaans gebruikt voor gegevensbronnen met een niet-versleuteld terugvalmechanisme (in het algemeen ODBC of ADO.NET bronnen).

Publiceren naar de gebruikersinterface

Net als bij de definitierecord (gegevensbron)[#data-source-kind] biedt de record Publish de Power Query-gebruikersinterface de informatie die nodig is om deze extensie beschikbaar te maken in het dialoogvenster Gegevens verkrijgen.

Voorbeeld:

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

Eigenschappen

De volgende tabel bevat de velden voor uw Publish-record.

Veld Type Details
ButtonText list Lijst met tekstitems die wordt weergegeven naast het pictogram van de gegevensbron in het dialoogvenster Power BI gegevens op te halen.
Categorie tekst Waar de extensie moet worden weergegeven in het dialoogvenster Gegevens verzamelen. Momenteel zijn en de enige categoriewaarden met speciale Azure Database handing. Alle andere waarden komen onder de categorie Overige te staan.
Bèta logisch (optioneel) Als deze is ingesteld op true, wordt in de gebruikersinterface een preview-/bèta-id weergegeven naast de naam van de connector en wordt er een waarschuwingsvenster weergegeven dat er wijzigingen in de implementatie van de connector kunnen worden aangebracht.
LearnMoreUrl tekst (optioneel) URL naar website met meer informatie over deze gegevensbron of connector.
OndersteuntDirectQuery logisch (optioneel) Hiermee schakelt u Direct Query in voor uw extensie.
Dit wordt momenteel alleen ondersteund voor ODBC-extensies.
SourceImage opnemen (optioneel) Een record met een lijst met binaire afbeeldingen (afkomstig uit het extensiebestand met behulp van de methode Extension.Contents). De record bevat twee velden (Icon16, Icon32), elk met een eigen lijst. Elk pictogram moet een andere grootte hebben.
SourceTypeImage opnemen (optioneel) Vergelijkbaar met SourceImage, maar de conventie voor veel van de box-connectors is het weergeven van een bladpictogram met het bronspecifieke pictogram in de rechteronderhoek. Een andere set pictogrammen voor SourceTypeImage is optioneel. Veel extensies gebruiken gewoon dezelfde — set pictogrammen voor beide velden opnieuw.