Obsługa dostępu do danych
Funkcje źródła danych
Obiekt Data Połączenie or opakowuje i dostosowuje zachowanie funkcji źródła danych w bibliotece języka M. Na przykład rozszerzenie interfejsu API REST będzie używać funkcji Web.Contents do tworzenia żądań HTTP. Obecnie włączono ograniczony zestaw funkcji źródła danych, aby obsługiwać rozszerzalność.
Przykład:
[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;
Rodzaj źródła danych
Funkcje oznaczone jako shared
w rozszerzeniu mogą być skojarzone z określonym źródłem danych przez dołączenie DataSource.Kind
atrybutu literału w funkcji o nazwie rekordu definicji źródła danych.
Rekord źródła danych definiuje typy uwierzytelniania obsługiwane przez źródło danych oraz podstawowe informacje o znakowaniu (takie jak nazwa wyświetlana/etykieta).
Nazwa rekordu staje się jego unikatowym identyfikatorem.
Każda funkcja skojarzona z tym samym źródłem danych musi mieć te same wymagane parametry funkcji, w tym nazwę, typ i kolejność. (Na potrzeby rodzaju źródła danych parametr nie jest uznawany za wymagany, jeśli jest oznaczony optional
lub jeśli jego metadane zawierają DataSource.Path = false
.
Funkcje dla określonego typu źródła danych mogą używać tylko poświadczeń skojarzonych z tym rodzajem. Poświadczenia są identyfikowane w czasie wykonywania, wykonując wyszukiwanie na podstawie kombinacji wymaganych parametrów funkcji. Aby uzyskać więcej informacji na temat identyfikowania poświadczeń, zobacz Ścieżki źródła danych.
Przykład:
HelloWorld = [
Authentication = [
Implicit = []
],
Label = Extension.LoadString("DataSourceLabel")
];
Właściwości
W poniższej tabeli wymieniono pola rekordu definicji źródła danych.
Pole | Typ | Szczegóły |
---|---|---|
Uwierzytelnianie | Rekord | Określa co najmniej jeden typ uwierzytelniania obsługiwany przez źródło danych. Wymagany jest co najmniej jeden rodzaj. Każdy rodzaj będzie wyświetlany jako opcja w wierszu polecenia poświadczeń dodatku Power Query. Aby uzyskać więcej informacji, zobacz Typy uwierzytelniania. |
Etykieta | text | (opcjonalnie) Przyjazna nazwa wyświetlana dla tego rozszerzenia w oknach dialogowych poświadczeń. |
SupportsEncryption | Logiczne | (opcjonalnie) Jeśli to prawda, interfejs użytkownika wyświetli opcję łączenia ze źródłem danych przy użyciu szyfrowanego połączenia. Jest to zwykle używane w przypadku źródeł danych z nieszyfrowanym mechanizmem rezerwowym (zazwyczaj ODBC lub ADO.NET źródłami). |
Publikowanie w interfejsie użytkownika
Podobnie jak w przypadku rekordu definicji źródła danych, rekord Publikuj udostępnia interfejs użytkownika dodatku Power Query informacje potrzebne do uwidocznienia tego rozszerzenia w oknie dialogowym Pobieranie danych .
Przykład:
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") }
];
Właściwości
W poniższej tabeli wymieniono pola dla rekordu Publikuj.
Pole | Typ | Szczegóły |
---|---|---|
Buttontext | lista | Lista elementów tekstowych. Pierwszy element definiuje nazwę wyświetlaną obok ikony źródła danych w oknie dialogowym Pobieranie danych w usłudze Power BI. Drugi element (opcjonalnie) definiuje poradę narzędzia, która będzie wyświetlana, gdy poprzednia nazwa jest za pomocą myszy. |
Kategoria | text | Gdzie rozszerzenie powinno być wyświetlane w oknie dialogowym Pobieranie danych . Obecnie jedynymi wartościami kategorii ze specjalnym przekazywaniem są Azure i Database . Wszystkie inne wartości zostaną zakończone w kategorii Inne. |
Beta | Logiczne | (opcjonalnie) Po ustawieniu wartości true interfejs użytkownika wyświetli identyfikator wersji zapoznawczej/beta obok nazwy łącznika i okno dialogowe ostrzeżenia, że implementacja łącznika podlega zmianom powodującym niezgodność. |
LearnMoreUrl | text | (opcjonalnie) Adres URL witryny sieci Web zawierający więcej informacji o tym źródle danych lub łączniku. |
SupportsDirectQuery | Logiczne | (opcjonalnie) Włącza zapytanie bezpośrednie dla rozszerzenia. |
SourceImage | Rekord | (opcjonalnie) Rekord zawierający listę obrazów binarnych (pochodzący z pliku rozszerzenia przy użyciu metody Extension.Contents ). Rekord zawiera dwa pola (Icon16, Icon32), z których każda ma własną listę. Każda ikona powinna mieć inny rozmiar. |
SourceTypeImage | Rekord | (opcjonalnie) Podobnie jak SourceImage, z wyjątkiem konwencji dla wielu łączników poza pudełkiem jest wyświetlenie ikony arkusza z ikoną specyficzną dla źródła w prawym dolnym rogu. Posiadanie innego zestawu ikon dla parametru SourceTypeImage jest opcjonalne — wiele rozszerzeń po prostu używa tego samego zestawu ikon dla obu pól. |