Integracja z PowerBI Desktop

Prev Next

Zintegruj tabele Tulip z PowerBI Desktop w celu usprawnienia analiz

Link do strony biblioteki

Przegląd

Załączony szablon .pbix pokazuje, jak w prosty sposób wysyłać zapytania do tabel Tulipw PowerBI. Pobierz szablon PowerBI

Tulip Analytics znacznie lepiej radzi sobie z analizą zarówno samych danych Tulip, jak i danych strumieniowych. W przypadku analiz wymagających złożonego modelu danych, dłuższych częstotliwości odświeżania i szerszego zasięgu, podejście to pozwala przedstawić dane Tulip kierownictwu

Skrypt PowerQuery

Alternatywnie, poniżej znajduje się skrypt PowerQuery zawarty w szablonie PowerBI```(TulipTableId as text, instance as text) as table=>

letQuery = #table( type table [#"table" = text], { {TulipTableId}}),

Function = Table.AddColumn(Query, "Offset", Number.Round(Json.Document(Web.Contents("https://"&instance&"/api/v3/tables/"& TulipTableId &"/count"))/100)),

ExpandedOffset = Table.ExpandListColumn(Function, „Offset”),

NbLoop = Number.Round(Json.Document(Web.Contents("https://"&instance&"/api/v3/tables/"& TulipTableId &"/count"))/100),

TableOffset = Table.FromList(List.Transform({0..NbLoop}, each Number.ToText(_*100))),

TableOffset1 = Table.RenameColumns(TableOffset, {{"Column1", "Offset"}}),

TulipTable = Table.AddColumn(TableOffset1, „Records”, each Table.FromRecords(Json.Document(Web.Contents("https://"&instance&"/api/v3/tables/" & TulipTableId & "/records?limit=100&offset="& [Offset] &"&sortBy=_sequenceNumber&sortDir=asc"))))

inTulipTable```

Integracja z usługą Power BI

:::(Informacja) (Uwaga)
Chociaż powyższy skrypt działa w Power BI Desktop, automatyczne odświeżanie w chmurze (usługa Power BI) wymaga szczególnej uwagi. Aby uniknąć błędu „Dynamiczne źródło danych”, skrypt musi wykorzystywać funkcje RelativePath i Query w ramach Web.Contents.

Dzięki temu Power BI może zidentyfikować adres URL katalogu głównego Tulip instance jako statyczne źródło danych, co umożliwia zaplanowane odświeżanie oraz bezpieczne zarządzanie poświadczeniami API po opublikowaniu raportu.
:::

Aby zapewnić zgodność z usługą Power BI, należy użyć następującego skryptu Power Query (M):

(TulipTableId as text, instance as text) as table =>let BaseUrl = "https://" & instance, CountPath = "api/v3/tables/" & TulipTableId & "/count", NbRecords = Json.Document(Web.Contents(BaseUrl, [RelativePath = CountPath])), NbLoop = Number.RoundUp(NbRecords / 100), Offsets = List.Transform({0..NbLoop-1}, each _ * 100), TableOffset = Table.FromList(Offsets, Splitter.SplitByNothing(), {"Offset"}), TableOffset1 = Table.TransformColumnTypes(TableOffset, {{"Offset", type text}}), TulipTable = Table.AddColumn(TableOffset1, „Records”, each let RecordsPath = „api/v3/tables/” & TulipTableId & „/records”, Response = Json.Document( Web.Contents(BaseUrl, [ RelativePath = RecordsPath, Query = [ limit = "100", offset = [Offset], sortBy = "_sequenceNumber", sortDir = "asc" ] ]) ) w Table.FromRecords(Response) )w TulipTableNiniejsze wytyczne dotyczące integracji z usługą Power BI zostały opracowane przez firmę ATS.

Instrukcje

Pobierz szablon .pbix i postępuj zgodnie z instrukcjami wyświetlanymi w aplikacji (przedstawionymi poniżej)

  1. Przejrzyj szablon PowerQuery w sekcji: „Strona główna >>> Przekształć dane”, aby otworzyć PowerQuery
  2. Przejrzyj zapytanie „Tulip Query” i zastąp Tulip TableID żądanym identyfikatorem tabeli, a instance adresem URL instancji (np. company.tulip.co)
  3. Kliknij „Invoke” i wprowadź poświadczenia API (użyj uwierzytelniania „Basic”)
  4. Po wyświetleniu monitu określ poziom prywatności (w większości przypadków domyślnym ustawieniem jest „organizacja”)
  5. Kliknij strzałki rozdzielające po prawej stronie kolumny rekordów
  6. Zmodyfikuj tabelę zgodnie z potrzebami; kliknij „Close and Apply”

Dalsze materiały referencyjne

  • [microsoft.com/en-us/power-bi/transform-model/desktop-query-overview">PowerBI Desktop Support](https://learn.<span translate=)
  • [microsoft.com/en-us/power-bi/connect-data/refresh-data#refresh-and-dynamic-data-sources">Microsoft Documentation on Dynamic Data Sources](https://learn.<span translate=)