Az adathozzáférés kezelése

Adatforrásfüggvények

Az adatösszekötők körbefuttatják és testre szabják az adatforrásfüggvények viselkedését az M-kódtárban. Egy REST API-bővítmény például a Web.Contents függvényt használná HTTP-kérések céljából. Jelenleg az adatforrásfüggvények korlátozott halmaza lett engedélyezve a bővíthetőség támogatásához.

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;

Adatforrás típusa

A bővítményben megjelölt shared függvények egy adott adatforráshoz társíthatók úgy, hogy egy konstans attribútumot is belefoglalnak DataSource.Kind a függvénybe egy adatforrásdefiníciós rekord nevével. Az Adatforrás rekord határozza meg az adatforrás által támogatott hitelesítési típusokat, valamint az alapvető arculati információkat (például a megjelenítendő nevet/ címkét). A rekord neve egyedi azonosítóvá válik.

Az adatforráshoz társított összes függvénynek ugyanazokat a szükséges függvényparamétereket kell tartalmaznia, beleértve a nevet, a típust és a sorrendet. (Az adatforrás típusa szempontjából a paraméter nem tekinthető kötelezőnek, ha megjelölve optional van, vagy ha a metaadatai tartalmazzák DataSource.Path = false.)

Egy adott adatforrástípus függvényei csak az adott típushoz társított hitelesítő adatokat használhatják. A hitelesítő adatok futásidőben azonosíthatók a függvény szükséges paramétereinek kombinációján alapuló keresés végrehajtásával. A hitelesítő adatok azonosításáról további információt az adatforrás elérési útjai című témakörben talál.

Example:

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

Tulajdonságok

Az alábbi táblázat az adatforrásdefiníciós rekord mezőit sorolja fel.

szakterület Típus Részletek
Authentication rekord Egy vagy több, az adatforrás által támogatott hitelesítési típust határoz meg. Legalább egy típusra van szükség. Minden típus lehetőségként jelenik meg a Power Query hitelesítőadat-kérésében. További információ: Hitelesítési típusok.
Címke SMS (nem kötelező) A bővítmény barátságos megjelenítési neve a hitelesítési párbeszédablakokban.
Támogatja a Titkosítást logikus (nem kötelező) Ha igaz, a felhasználói felület megjeleníti az adatforráshoz való csatlakozás lehetőségét titkosított kapcsolat használatával. Ezt általában nem titkosított tartalék mechanizmussal (általában ODBC- vagy ADO.NET-alapú adatforrásokhoz) használják.

Közzététel felhasználói felületen

Az Adatforrás definíciós rekordjához hasonlóan a Közzététel rekord biztosítja a Power Query felhasználói felületének azokat az információkat, amelyekre szüksége van a bővítmény közzétételéhez az Adatok lekérése párbeszédpanelen.

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

Tulajdonságok

Az alábbi táblázat a Publish rekord mezőit sorolja fel.

szakterület Típus Részletek
Gombszöveg list Szövegelemek listája. Az első elem határozza meg az adatforrás ikonja mellett megjelenő nevet a Power BI Adatok lekérése párbeszédpanelen. A második elem (nem kötelező) adja meg azt az eszközleírást, amely akkor jelenik meg, amikor a kurzorral az előző név fölé viszik.
Kategória SMS Ahol a bővítménynek meg kell jelennie az Adatok lekérése párbeszédpanelen. Jelenleg az egyetlen kategóriaértékek, amelyek különleges kezelést igényelnek, a Azure és Database. Az összes többi érték az Egyéb kategória alá kerül.
Béta logikus (nem kötelező) Ha igaz értékre van állítva, a felhasználói felület megjelenít egy Preview/Beta jelzést az összekötő neve mellett, valamint egy figyelmeztető párbeszédpanelt, amely figyelmeztet, hogy az összekötő implementációja változásoknak van kitéve, amelyek megtörhetik a kompatibilitást.
LearnMoreUrl SMS (nem kötelező) A webhely URL-címe, amely további információt tartalmaz erről az adatforrásról vagy összekötőről.
Támogatja aDirectQueryt logikus (nem kötelező) Engedélyezi a Direct Queryt a bővítményhez.
SourceImage rekord (nem kötelező) Bináris képek listáját tartalmazó rekord (a bővítményfájlból származik a Extension.Contents metódussal). A rekord két mezőt (Icon16, Icon32) tartalmaz, mindegyiket saját listával. Minden ikonnak más méretűnek kell lennie.
SourceTypeImage rekord (nem kötelező) A SourceImage-hez hasonlóan a dobozon kívüli összekötők közül sok esetében az a konvenció, hogy a jobb alsó sarokban megjelenik egy lapikon, amelyen a forrásspecifikus ikon látható. A SourceTypeImage eltérő ikonkészlete nem kötelező – számos bővítmény egyszerűen ugyanazt az ikonkészletet használja fel mindkét mezőhöz.