Del via


Håndtering af dataadgang

Datakildefunktioner

En data Forbind eller ombryder og tilpasser funktionsmåden for en datakildefunktion i M-biblioteket. En udvidelse til en REST-API vil f.eks. gøre brug af funktionen Web.Contents til at foretage HTTP-anmodninger. I øjeblikket er et begrænset sæt datakildefunktioner blevet aktiveret til at understøtte udvidelse.

Eksempel:

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

Type af datakilde

Funktioner, der er markeret som shared i din udvidelse, kan knyttes til en bestemt datakilde ved at inkludere en DataSource.Kind konstantattribut i funktionen med navnet på en datakildedefinitionspost. Posten Datakilde definerer de godkendelsestyper, der understøttes af datakilden, og grundlæggende brandingoplysninger (f.eks. det viste navn/mærkat). Navnet på posten bliver det entydige id.

Hver funktion, der er knyttet til den samme datakilde, skal have de samme påkrævede funktionsparametre, herunder navn, type og rækkefølge. (Med henblik på datakildetypen anses en parameter ikke for påkrævet, hvis den er markeret optional , eller hvis dens metadata indeholder DataSource.Path = false.)

Funktioner for en bestemt datakildetype kan kun bruge legitimationsoplysninger, der er knyttet til denne type. Legitimationsoplysninger identificeres på kørselstidspunktet ved at udføre et opslag baseret på kombinationen af funktionens påkrævede parametre. Du kan få flere oplysninger om, hvordan legitimationsoplysninger identificeres, under Datakildestier.

Eksempel:

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

Egenskaber

I følgende tabel vises felterne for datakildedefinitionsposten.

Felt Skriv Detaljer
Godkendelse Post Angiver en eller flere godkendelsestyper, der understøttes af datakilden. Der kræves mindst én type. Hver type vises som en indstilling i prompten om legitimationsoplysninger til Power Query. Du kan få flere oplysninger under Godkendelsestyper.
Mærkat tekst (valgfrit) Brugervenligt vist navn for denne udvidelse i dialogboksen med legitimationsoplysninger.
SupportsEncryption Logiske (valgfrit) Når sand, viser brugergrænsefladen muligheden for at oprette forbindelse til datakilden ved hjælp af en krypteret forbindelse. Dette bruges typisk til datakilder med en ikke-krypteret reservemekanisme (generelt ODBC- eller ADO.NET-baserede kilder).

Udgiv til brugergrænseflade

På samme måde som med datakildedefinitionsposten giver publiceringsposten brugergrænsefladen i Power Query de oplysninger, den skal bruge for at vise denne udvidelse i dialogboksen Hent data.

Eksempel:

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

Egenskaber

I følgende tabel vises felterne for din publiceringspost.

Felt Skriv Detaljer
Knaptekst list Liste over tekstelementer. Det første element definerer det navn, der vises ud for datakildens ikon i dialogboksen Hent data i Power BI. Det andet element (valgfrit) definerer det værktøjstip, der vises, når det foregående navn holdes over musen.
Kategori tekst Hvor udvidelsen skal vises i dialogboksen Hent data . I øjeblikket er Azure de eneste kategoriværdier med speciallevering og Database. Alle andre værdier ender under kategorien Andet.
Beta Logiske (valgfrit) Når den er angivet til true, viser brugergrænsefladen et eksempel-/beta-id ud for connectornavnet og en advarselsdialogboks om, at implementeringen af connectoren kan ændres.
LearnMoreUrl tekst (valgfrit) URL-adresse til websted, der indeholder flere oplysninger om denne datakilde eller connector.
SupportsDirectQuery Logiske (valgfrit) Aktiverer Direct Query for din udvidelse.
SourceImage Post (valgfrit) En post, der indeholder en liste over binære billeder (hentet fra filtypenavnsfilen ved hjælp af metoden Extension.Contents ). Posten indeholder to felter (Icon16, Icon32), der hver især har sin egen liste. Hvert ikon skal have en anden størrelse.
SourceTypeImage Post (valgfrit) På samme måde som SourceImage er konventionen for mange out of the box-connectors at vise et arkikon med det kildespecifikke ikon i nederste højre hjørne. Det er valgfrit at have et andet sæt ikoner til SourceTypeImage – mange udvidelser genbruger blot det samme sæt ikoner til begge felter.