Hantera dataåtkomst

Datakällans funktioner

En dataanslutning omsluter och anpassar beteendet för en datakällsfunktion i M-biblioteket. Ett tillägg för ett REST-API skulle till exempel använda funktionen Web.Contents för att göra HTTP-begäranden. För närvarande har en begränsad uppsättning funktioner för datakällor aktiverats för att stödja utökningsbarhet.

Example:

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

Typ av datakälla

Funktioner som är markerade som shared i tillägget kan associeras med en specifik datakälla genom att inkludera ett DataSource.Kind literalattribut på funktionen med namnet på en datakällas definitionspost. Datakällans post definierar de autentiseringstyper som stöds av din datakälla, samt grundläggande varumärkesprofil (som visningsnamn/etikett). Namnet på posten blir dess unika identifierare.

Varje funktion som är associerad med samma datakälla måste ha samma obligatoriska funktionsparametrar, inklusive namn, typ och ordning. (För datakällans typ anses inte en parameter vara obligatorisk om den är markerad optional eller om dess metadata innehåller DataSource.Path = false.)

Funktioner för en specifik typ av datakälla kan bara använda autentiseringsuppgifter som är associerade med den typen. Inloggningsuppgifter identifieras under körning genom att utföra en sökning baserat på kombinationen av funktionens obligatoriska parametrar. Mer information om hur autentiseringsuppgifter identifieras finns i Sökvägar för datakälla.

Example:

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

Egenskaper

I följande tabell visas fälten för definitionsposten för din datakälla.

Fält Typ Detaljer
Authentication rekord Anger en eller flera typer av autentisering som stöds av datakällan. Minst en typ krävs. Varje typ visas som ett alternativ i Power Query-autentiseringsprompten. Mer information finns i Autentiseringstyper.
Etikett texten (valfritt) Eget visningsnamn för det här tillägget i dialogrutor för autentiseringsuppgifter.
SupportsEncryption logisk (valfritt) När det är sant visar användargränssnittet alternativet att ansluta till datakällan med hjälp av en krypterad anslutning. Detta används vanligtvis för datakällor med en icke-krypterad återställningsmekanism (vanligtvis ODBC eller ADO.NET baserade källor).

Publicera i användargränssnittet

På samma sätt som datakällans definitionspost ger publiceringsposten Power Query-användargränssnittet den information som behövs för att exponera det här tillägget i dialogrutan Hämta data .

Example:

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

Egenskaper

I följande tabell visas fälten för din publiceringspost.

Fält Typ Detaljer
Knapptext list Lista över textobjekt. Det första objektet definierar namnet som visas bredvid datakällans ikon i dialogrutan Hämta data i Power BI. Det andra objektet (valfritt) definierar verktygstipset som ska visas när muspekaren är över föregående namn.
Kategori texten Var tillägget ska visas i dialogrutan Hämta data . För närvarande är de enda kategorivärdena med särskild hantering Azure och Database. Alla andra värden hamnar under kategorin Övrigt.
Beta-version logisk (valfritt) När värdet är true visar användargränssnittet en förhandsgransknings-/betaidentifierare bredvid anslutningsappens namn och en varningsdialogruta om att implementeringen av anslutningsappen kan komma att ändras.
LearnMoreUrl texten (valfritt) Url till webbplats som innehåller mer information om den här datakällan eller anslutningsappen.
SupportsDirectQuery logisk (valfritt) Aktiverar Direct Query för ditt tillägg.
SourceImage rekord (valfritt) En post som innehåller en lista över binära bilder (hämtas från filnamnstillägget med metoden Extension.Contents ). Posten innehåller två fält (Icon16, Icon32), som vardera har en egen lista. Varje ikon bör ha en annan storlek.
SourceTypeImage rekord (valfritt) Liknar SourceImage, förutom att konventionen för många standardkopplingar är att visa en arkikon med den källspecifika ikonen i det nedre högra hörnet. Det är valfritt att ha en annan uppsättning ikoner för SourceTypeImage– många tillägg återanvänder helt enkelt samma uppsättning ikoner för båda fälten.