Integrazione con PowerBI Desktop

Prev Next

Integra le tabelle Tulip con PowerBI Desktop per analisi ottimizzate

Link alla pagina della libreria

Panoramica

Questo modello .pbix allegato mostra come interrogare facilmente le tabelle Tulip inPowerBI. Scarica il modello PowerBI

Tulip Analytics funzionerà molto meglio sia con le analisi dei soli dati Tulip che con i dati in streaming. Per analisi che richiedono un modello di dati complesso, frequenze di aggiornamento più lunghe e una portata più ampia, questo approccio può essere utilizzato per mettere i dati Tulip a disposizione dei dirigenti

Script PowerQuery

In alternativa, di seguito è riportato lo script PowerQuery incluso nel modello 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```

Integrazione con il servizio Power BI

Nota

Sebbene lo script sopra riportato funzioni in Power BI Desktop, l’aggiornamento automatico nel cloud (Servizio Power BI) richiede particolare attenzione. Per evitare l’errore "Dynamic Data Source", lo script deve utilizzare le funzioni RelativePath e Query all’interno di Web.Contents.

Ciò consente a Power BI di identificare l’URL radice di Tulip instance come origine dati statica, abilitando gli aggiornamenti pianificati e la gestione sicura delle credenziali API una volta pubblicato il report.

Utilizzare il seguente script Power Query (M) per garantire la compatibilità con Power BI Service:

(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", tipo testo}}), 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" ] ]) ) in Table.FromRecords(Response) )in TulipTable Questa guida all’integrazione con Power BI Service è stata fornita da ATS.

Istruzioni

Scaricare il modello .pbix e seguire le istruzioni all’interno dell’app (mostrate di seguito)

  1. Esamina il modello PowerQuery nella sezione: "Home >>> Trasforma dati" per aprire PowerQuery
  2. Esamina la query "Tulip Query" e sostituisci Tulip TableID con l’ID della tabella desiderata e instance con l’URL dell’istanza (ad es., company.tulip.co)
  3. Fare clic su “Invoca” e inserire le credenziali API (utilizzare l’autenticazione “Basic”)
  4. Specificare il livello di privacy quando richiesto (l’impostazione predefinita è “Organizzazione” per la maggior parte dei casi d’uso)
  5. Fai clic sulle frecce di divisione a destra della colonna dei record
  6. Modifica la tabella secondo necessità; fai clic su "Chiudi e applica"

Ulteriori riferimenti

  • [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=)