Download presentation
Presentation is loading. Please wait.
Published byJanis Woods Modified over 8 years ago
1
Power BI for Developers Rui Romano Slides @ SQLSaturday.com http://1drv.ms/1XCkwmM
2
Rui Romano Rui.Romano@DevScope.net Rui.Romano@DevScope.net BI Pro / Architect / Developer Blog https://ruiromanoblog.wordpress.com Twitter @RuiRomano 2 |
3
Agenda PowerBI Intro (a quick one ) PowerBI Developer Platform Integrate Enhance
4
PowerBI? SaaS Data Service Data Analysis & Exploration Raw Data => Insights (fast & easy) Out of the box Connectors to SaaS Solutions Extension to current BI Investments
5
Demo – PowerBI
6
Power BI Developer Platform IntegrationREST APIEmbed Stream Analytics Extension Custom Visuals Content Packs*
7
REST APIs /DataSets/Dashboards /Reports /Imports /Groups Standards based REST JSON OAuth Cross Platform Easy to use
8
Get DataSets GET https://api.powerbi.com/v1.0/myorg/datasets Authorization Bearer eyJ0eXAiOiJKV1QiLCJhbGc1NiIsIng1dCI6Ik1uQ1… (Access Token) Response { "datasets": [ { "id": "5018fd65-71e6-47cb-8dde-68931545e7b8", "name": "MyMovies" }, { "id": "9862d253-f4a5-4997-9d06-1566aff78d5e", "name": "SQLSaturday_SalesMarketing" }
9
Create DataSet POST https://api.powerbi.com/v1.0/myorg/datasets Request { "name": "SalesMarketing", "tables": [ { "name": "Product", "columns": [ { "name": "ProductID", "dataType": "Int64"}, { "name": "Name", "dataType": "string"}, { "name": “Price", "dataType": “double"}, { "name": "IsCompete", "dataType": "bool"}, { "name": "ManufacturedOn", "dataType": "DateTime"} ] } ] } Int64 String Bool Datetime Double
10
POST Table Rows POST https://api.powerbi.com/v1.0/myorg/datasets/ /tables/ /rows Request { "rows": [ { "ProductID":1, "Name":"Adjustable Race", "Category":"Components", "IsCompete":true, "ManufacturedOn":"07/30/2014"},{ "ProductID":2, "Name":“Racing Bike", "Category":“Bikes", "IsCompete":true, "ManufacturedOn":“10/30/2014"} ]}
11
Demo – PowerBIPS
12
Power BI App OAuth Requirement Identification to PowerBI and Users Declares the permissions it needs Two Types: Native App Web App https://dev.powerbi.com/apps?type=web
13
OAuth: WebApp Auth. Flow
14
OAuth Access Token? Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ik1uQ19WWmNBVGZNNX BPWWlKSE1iYTl… http://jwt.io/
15
Demo – Send to PowerBI (ASP.Net)
16
Login the user Call https://api.powerbi.com/beta/myorg/dashboards Call https://api.powerbi.com/beta/myorg/dashboards/{guid}/Tiles Get the embed tile URL Ex: https://app.powerbi.com/embed?dashboardId= &tileId= https://app.powerbi.com/embed?dashboardId= &tileId=<tileGUID Create an IFrame with the Tile URL PostMessage the AccessToken Embed Visuals in your App // find the iFrame on the page and handle the loaded event. var iframe = document.getElementById('iFrameEmbedTile'); iframe.src = embedTileUrl + "&width=" + width + "&height=" + height; iframe.onload = postActionLoadTile; // post the access token to the iFrame to load the tile function postActionLoadTile() { // get the access token. accessToken = document.getElementById('MainContent_accessTokenTextbox').value; // construct the push message structure var m = { action: "loadTile", accessToken: accessToken, height: 500, width: 500}; message = JSON.stringify(m); // push the message. iframe = document.getElementById('iFrameEmbedTile'); iframe.contentWindow.postMessage(message, "*"); }
17
Demo – Embed Visualizations
18
Demo – PhantomJS
19
Demo – PowerBI Tiles
20
Custom Visuals OpenSource @ GitHub Community Driven Visualizations & Framework TypeScript D3.js
21
IVisual? Init()Update()Destroy() JavaScript Object
22
Demo – Custom Visuals
23
DataView?
24
Capabilities
25
Real-Time Analysis
26
Demo – Twitter Real-Time Analysis
27
Automatic Retention Policy https://api.powerbi.com/beta/myorg/datasets?defaultRetentionPolicy=BasicFIFO BasicFIFO Store up to 200.000 rows Affects all the Tables in the DataSet
28
PowerBI + Stream Analytics Components of an Azure Stream Analytics Application Azure SQL DB Azure Event Hubs Azure Blob Storage INPUT Source of Events Azure Blob Storage Azure Event Hubs Reference Data Query runs continuously against incoming stream of events Power BI
29
Demo – PowerBI + Stream Analytics
30
Applications & Samples DevScope “Send to PowerBI” Excel App https://store.office.com/send-to-power-bi-WA104379349.aspx https://store.office.com/send-to-power-bi-WA104379349.aspx DevScope “PowerBI Tiles” Office App https://store.office.com/power-bi-tiles-WA104379699.aspx https://store.office.com/power-bi-tiles-WA104379699.aspx Chrome Extension https://github.com/PowerBI/Power-BI-for-chrome https://github.com/PowerBI/Power-BI-for-chrome SSIS Adapter http://ioi.solutions/ssis-adapter-for-power-bi-rest-api/ http://ioi.solutions/ssis-adapter-for-power-bi-rest-api/
31
Links PowerBI https://powerbi.com https://powerbi.com https://dev.powerbi.com https://dev.powerbi.com https://support.powerbi.com/ https://support.powerbi.com/ Authentication (OAuth) https://powerbi.microsoft.com/en-us/documentation/powerbi-developer-authenticate-to-power-bi- service/ https://powerbi.microsoft.com/en-us/documentation/powerbi-developer-authenticate-to-power-bi- service/ Custom Visualizations https://github.com/Microsoft/PowerBI-visuals https://github.com/Microsoft/PowerBI-visuals Stream Analytics + PowerBI https://azure.microsoft.com/pt-pt/documentation/articles/stream-analytics-power-bi-dashboard/ https://azure.microsoft.com/pt-pt/documentation/articles/stream-analytics-power-bi-dashboard/
32
THANK YOU! ASK QUESTIONS… Rui.Romano@DevScope.net @RuiRomano
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.