Delen via


Gegevenstoegang verwerken

Functies voor gegevensbronnen

Een data Verbinding maken or verpakt en past het gedrag van een gegevensbronfunctie in de M-bibliotheek aan. 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 uitbreidbaarheid.

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 shared in uw extensie, kunnen worden gekoppeld aan een specifieke gegevensbron door een DataSource.Kind letterlijk kenmerk op de functie op te nemen met de naam van een definitierecord voor de gegevensbron. 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 de unieke id.

Elke functie die aan dezelfde gegevensbron is gekoppeld, moet dezelfde vereiste functieparameters hebben, waaronder de naam, het type en de volgorde. (Voor gegevensbrontype wordt een parameter niet als vereist beschouwd als deze is gemarkeerd optional of als de metagegevens ervan DataSource.Path = false.)

Functies voor een specifiek gegevensbrontype kunnen alleen referenties gebruiken die aan dat type zijn gekoppeld. Referenties worden tijdens runtime geïdentificeerd door een zoekactie uit te voeren op basis van de combinatie van de vereiste parameters van de functie. Zie Gegevensbronpaden voor meer informatie over de identificatie van referenties.

Voorbeeld:

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

Eigenschappen

De volgende tabel bevat de velden voor de definitierecord van de gegevensbron.

Veld Type DETAILS
Verificatie Record 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 Verificatietypen voor meer informatie.
Etiket sms verzenden (optioneel) Beschrijvende weergavenaam voor deze extensie in referentiedialoogvensters.
SupportsEncryption Logische (optioneel) Wanneer waar, biedt de gebruikersinterface de optie om verbinding te maken met de gegevensbron met behulp van een versleutelde verbinding. Dit wordt meestal gebruikt voor gegevensbronnen met een niet-versleuteld terugvalmechanisme (over het algemeen ODBC of ADO.NET op basis van bronnen).

Publiceren naar gebruikersinterface

Net als bij de definitierecord van de gegevensbron biedt de publicatierecord de Power Query-gebruikersinterface de informatie die nodig is om deze extensie beschikbaar te maken in het dialoogvenster Gegevens ophalen.

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 publicatierecord.

Veld Type DETAILS
ButtonText lijst Lijst met tekstitems. Het eerste item definieert de naam die wordt weergegeven naast het pictogram van de gegevensbron in het dialoogvenster Gegevens ophalen in Power BI. Het tweede item (optioneel) definieert de knopinfo die wordt weergegeven wanneer de voorgaande naam met de muis wordt overgezet.
Categorie sms verzenden Waar de extensie moet worden weergegeven in het dialoogvenster Gegevens ophalen. Momenteel zijn Azure de enige categoriewaarden met speciale handing en Database. Alle andere waarden komen terecht in de categorie Overige.
Bèta Logische (optioneel) Als deze optie is ingesteld op true, wordt in de gebruikersinterface een preview-/bèta-id weergegeven naast de naam van uw connector en een waarschuwingsdialoogvenster waarin wordt aangegeven dat de implementatie van de connector onderhevig is aan wijzigingen die fouten veroorzaken.
LearnMoreUrl sms verzenden (optioneel) Url naar website met meer informatie over deze gegevensbron of connector.
OndersteuntDirectQuery Logische (optioneel) Hiermee schakelt u Direct Query in voor uw extensie.
SourceImage Record (optioneel) Een record met een lijst met binaire installatiekopieën (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 Record (optioneel) Vergelijkbaar met SourceImage, behalve de conventie voor veel standaardconnectors, is het weergeven van een bladpictogram met het bronspecifieke pictogram in de rechterbenedenhoek. Het gebruik van een andere set pictogrammen voor SourceTypeImage is optioneel. Veel extensies gebruiken gewoon dezelfde set pictogrammen voor beide velden.