SlideShare a Scribd company logo
Gebruikersdag 2018
© Feb '18 – DataScenarios
• Jan Pieter Posthuma – Microsoft Data Consultant
• DataScenarios – Data Consultancy Company
• Architect roles at multiple projects
• Creator of Power BI Custom Visuals
• HierarchySlicer [∞]
• Box and Whisker chart [∞]
• D3js Visual [∞]
• Contact
• mail@datascenarios.nl
• https://twitter.com/jppp
• https://linkedin.com/in/jpposthuma
• https://github.com/liprec
Who am I?
2
© Feb '18 – DataScenarios
• Introduction
• Developing
• Technical Demos
• AppSource Listing
• D3js Visual
3
Agenda
© Feb '18 – DataScenarios
Introduction
© Feb '18 – DataScenarios
Develop custom
visuals quickly with
Microsoft’s
open-sourced,
production-quality
visualization code
Present data in the way
that makes best sense to
your users
Leverage the visualization
framework, test suite and
tooling to build the right
custom visuals for your app
Gallery:
appsource.microsoft.com
5
© Feb '18 – DataScenarios
Custom Visuals Platform
6
© Feb '18 – DataScenarios
Distribute through AppSource
Greater reach to business users
Usage tracking
Publishing requires Office
Developer account
https://appsource.microsoft.com
7
© Feb '18 – DataScenarios
• Since beginning of the new Power BI (Summer 2015)
• Beginning 2016: visuals are running in a ‘sandbox’ environment
• August 2016: new Power BI API available, current version: v.1.10.0
• March 2017: Migration to Office Store: Version API required
• July 2017: Integration with Office Store and Certified visuals
• Sept 2017: Office Store is moved to Microsoft AppSource
• Feb 2018: Introduction of the Company Store
History
8
© Feb '18 – DataScenarios
Developing
© Feb '18 – DataScenarios
• NodeJS 4.0+ Required (5.0 recommended)
• https://nodejs.org/
• PowerBI-Visuals-Tools
• npm install -g powerbi-visuals-tools
• SSL and Debug visual: https://github.com/Microsoft/PowerBI-
visuals/blob/master/tools/README.md
• Visual Studio Code
• https://code.visualstudio.com/download
• PBIViz CLI addin:
https://marketplace.visualstudio.com/items?itemName=liprec.vscode-start-
pbiviz
• Enable ‘Developer Visual’ in Power BI Admin portal
Tools needed
10
© Feb '18 – DataScenarios
Power BI Custom Visual API
11
IVisual module
methods
(init, update, …)
enumerateObjectInstances
dataView
Formatting
pane
Power BI Custom
Visual
capabilities.jsonvisual.ts
Interaction via code
Report
canvas
Sandbox
© Feb '18 – DataScenarios
Technical Demos
© Feb '18 – DataScenarios
> pbiviz new <visualname>
.api
.vscode
assets
src
style
capabilitises.json
pbiviz.json
tsconfig.json
Folder structure
API schemas
Visual Studio
Code settings
Icons /
screenshot
Capabilities definition – dataview
binding, formatting pane
Power BI Visual definition, like
name, author, externalJS files,
TypeScript config file
list of .ts files needed (incl. typing)
Source files – must included in
tsconfig.json
Style file – included in pbiviz.json.
Less supported
13
© Feb '18 – DataScenarios
• First class citizens (Power BI is using them also):
• D3js.org – Graphical library for ‘Data-Driven Documents’.
• Lodash – Library to take the hassle out of working with arrays, objects,
strings, numbers, etc.
• jQuery – Library to make HTML document traversal and manipulation,
event handling easier
• Helper classes to support common UI operations, e.g.:
• powerbi-visuals-utils-formattingutils – valueFormatting,
TextProperties, …
• powerbi-visuals-utils-dataviewutils – getObject,
DataViewObjectsParser,
External Libraries
© Feb '18 – DataScenarios
Appsource listing
© Feb '18 – DataScenarios
Creation Coding Testing Packaging Submission
Custom Visual SDK
PowerBI.com
Office Seller
Dashboard
Custom visual development lifecycle
16
© Feb '18 – DataScenarios
• Submit pbiviz file, return manifest file for AppSource listing
• Only free visuals supported (at this time)
• Manual process, general 2-3 business days (US)
• Tested against:
• Chrome, Firefox, Edge and Internet Explorer 11
• Power BI Desktop (Chromium)
• Tested to provide expected behavior:
• Everything should work
• No errors/exceptions
• After approval support:
• Power BI is a moving target!
17
Custom Visual approval
© Feb '18 – DataScenarios
• Visual advantages:
• Exported to PowerPoint
• Embedded in emails
• Requirements:
• Microsoft AppSource approved
• Custom visual is written with Versioned API 1.2 or higher
• Code repository available for review (e.g., Visual Code available to us
through GitHub)
• Uses only public reviewable OSS components
• Does not access external services or resources
https://docs.microsoft.com/en-us/power-bi/power-bi-custom-visuals-certified
18
Custom Visual certification
Gebruikersdag 2018
Bedankt!
Vergeet niet de evaluatie in te vullen!
Scan de QR code.
© Feb '18 – DataScenarios
References
© Feb '18 – DataScenarios
•Slides: http://bit.ly/PBISQLBbits2018
•Demos: http://bit.ly/PBISQLBits2018-demo
Links
© Feb '18 – DataScenarios
• Power BI Custom Visuals documentation
https://github.com/Microsoft/PowerBI-visuals
• Power BI CLI tools
https://github.com/Microsoft/PowerBI-visuals-tools
• Power BI Core Visuals (old visuals, but good for reference)
https://github.com/Microsoft/PowerBI-visuals-core
• Visual Studio Code
https://code.visualstudio.com/download
• PBIViz addin
https://marketplace.visualstudio.com/items?itemName=liprec.vscode-
start-pbiviz
• Certification Requirements
https://powerbi.microsoft.com/en-us/documentation/powerbi-custom-
visuals-certified/
Resources
25
© Feb '18 – DataScenarios
• Clone or download
https://github.com/Microsoft/PowerBI-visuals-sampleBarChart
npm update
pbiviz start
• Open a report, upload some data
In www.powerbi.com, go to Get Data
Open a report once you’re done.
Edit the report
Click the developer visual
Bind some data
• Press F12 to debug
Use the browser debugger to see what’s happening
Hint: add debugger; to the constructor (makes debugging easier)
Start coding
26

More Related Content

What's hot

The New Basics of Business Intelligence Lesson 5: Embedded Analytics
The New Basics of Business Intelligence Lesson 5: Embedded AnalyticsThe New Basics of Business Intelligence Lesson 5: Embedded Analytics
The New Basics of Business Intelligence Lesson 5: Embedded Analytics
Zoomdata
 
Forge - DevCon 2016: Implementing Rich Applications in the Browser
Forge - DevCon 2016: Implementing Rich Applications in the BrowserForge - DevCon 2016: Implementing Rich Applications in the Browser
Forge - DevCon 2016: Implementing Rich Applications in the Browser
Autodesk
 
Harnessing the Power of Customer Feedback
Harnessing the Power of Customer FeedbackHarnessing the Power of Customer Feedback
Harnessing the Power of Customer Feedback
Autodesk
 
Model Driven PowerApps
Model Driven PowerAppsModel Driven PowerApps
Model Driven PowerApps
BIWUG
 
Extending and Integrating QlikView
Extending and Integrating QlikViewExtending and Integrating QlikView
Extending and Integrating QlikView
Helena Caligari
 
System Center Business Intelligence, with Power BI?
System Center Business Intelligence, with Power BI?System Center Business Intelligence, with Power BI?
System Center Business Intelligence, with Power BI?Fredrik Knalstad
 
Monitoring on premise biz talk applications using cloud based power bi saas
Monitoring on premise biz talk applications using cloud based power bi saasMonitoring on premise biz talk applications using cloud based power bi saas
Monitoring on premise biz talk applications using cloud based power bi saas
BizTalk360
 
24 Sitecore Tips that Every Sitecore Architect Needs to Know
24 Sitecore Tips that Every Sitecore Architect Needs to Know24 Sitecore Tips that Every Sitecore Architect Needs to Know
24 Sitecore Tips that Every Sitecore Architect Needs to Know
Ashish Bansal
 
Building BI Dashboards Using Visio 2013
Building BI DashboardsUsing Visio 2013Building BI DashboardsUsing Visio 2013
Building BI Dashboards Using Visio 2013
Alan Richards
 
Adx studio migration
Adx studio migrationAdx studio migration
Adx studio migration
Umakant Bhardwaj
 
Model-Driven Apps with PowerApps
Model-Driven Apps with PowerAppsModel-Driven Apps with PowerApps
Model-Driven Apps with PowerApps
Stefan Strube
 
Microsoft Flow in Real World Projects: 2 Years later & What's next
Microsoft Flow in Real World Projects: 2 Years later & What's nextMicrosoft Flow in Real World Projects: 2 Years later & What's next
Microsoft Flow in Real World Projects: 2 Years later & What's next
BIWUG
 
1 App for Consumer and Enterprise
1 App for Consumer and Enterprise1 App for Consumer and Enterprise
1 App for Consumer and Enterprise
Ashish Trivedi
 
How to Manage Data Integration within Microsoft Dynamics
How to Manage Data Integration within Microsoft DynamicsHow to Manage Data Integration within Microsoft Dynamics
How to Manage Data Integration within Microsoft Dynamics
GlobalLogic Ukraine
 
Transitioning from infomaker to bi publisher ppt
Transitioning from infomaker to bi publisher pptTransitioning from infomaker to bi publisher ppt
Transitioning from infomaker to bi publisher pptp6academy
 
Product management in office 365 vancouver
Product management in office 365 vancouverProduct management in office 365 vancouver
Product management in office 365 vancouver
Berkovich Consulting
 
Visio services in sharepoint 2013
Visio services in sharepoint 2013Visio services in sharepoint 2013
Visio services in sharepoint 2013BIWUG
 
SPUnite17 Creating Scalable Cloud Solutions
SPUnite17 Creating Scalable Cloud SolutionsSPUnite17 Creating Scalable Cloud Solutions
SPUnite17 Creating Scalable Cloud Solutions
NCCOMMS
 
Power BI Ecosystem
Power BI EcosystemPower BI Ecosystem
Power BI Ecosystem
Swapnil Jadhav
 

What's hot (20)

The New Basics of Business Intelligence Lesson 5: Embedded Analytics
The New Basics of Business Intelligence Lesson 5: Embedded AnalyticsThe New Basics of Business Intelligence Lesson 5: Embedded Analytics
The New Basics of Business Intelligence Lesson 5: Embedded Analytics
 
Forge - DevCon 2016: Implementing Rich Applications in the Browser
Forge - DevCon 2016: Implementing Rich Applications in the BrowserForge - DevCon 2016: Implementing Rich Applications in the Browser
Forge - DevCon 2016: Implementing Rich Applications in the Browser
 
Harnessing the Power of Customer Feedback
Harnessing the Power of Customer FeedbackHarnessing the Power of Customer Feedback
Harnessing the Power of Customer Feedback
 
Model Driven PowerApps
Model Driven PowerAppsModel Driven PowerApps
Model Driven PowerApps
 
Extending and Integrating QlikView
Extending and Integrating QlikViewExtending and Integrating QlikView
Extending and Integrating QlikView
 
System Center Business Intelligence, with Power BI?
System Center Business Intelligence, with Power BI?System Center Business Intelligence, with Power BI?
System Center Business Intelligence, with Power BI?
 
Monitoring on premise biz talk applications using cloud based power bi saas
Monitoring on premise biz talk applications using cloud based power bi saasMonitoring on premise biz talk applications using cloud based power bi saas
Monitoring on premise biz talk applications using cloud based power bi saas
 
24 Sitecore Tips that Every Sitecore Architect Needs to Know
24 Sitecore Tips that Every Sitecore Architect Needs to Know24 Sitecore Tips that Every Sitecore Architect Needs to Know
24 Sitecore Tips that Every Sitecore Architect Needs to Know
 
Building BI Dashboards Using Visio 2013
Building BI DashboardsUsing Visio 2013Building BI DashboardsUsing Visio 2013
Building BI Dashboards Using Visio 2013
 
Adx studio migration
Adx studio migrationAdx studio migration
Adx studio migration
 
Model-Driven Apps with PowerApps
Model-Driven Apps with PowerAppsModel-Driven Apps with PowerApps
Model-Driven Apps with PowerApps
 
Microsoft Flow in Real World Projects: 2 Years later & What's next
Microsoft Flow in Real World Projects: 2 Years later & What's nextMicrosoft Flow in Real World Projects: 2 Years later & What's next
Microsoft Flow in Real World Projects: 2 Years later & What's next
 
1 App for Consumer and Enterprise
1 App for Consumer and Enterprise1 App for Consumer and Enterprise
1 App for Consumer and Enterprise
 
How to Manage Data Integration within Microsoft Dynamics
How to Manage Data Integration within Microsoft DynamicsHow to Manage Data Integration within Microsoft Dynamics
How to Manage Data Integration within Microsoft Dynamics
 
Datafl
DataflDatafl
Datafl
 
Transitioning from infomaker to bi publisher ppt
Transitioning from infomaker to bi publisher pptTransitioning from infomaker to bi publisher ppt
Transitioning from infomaker to bi publisher ppt
 
Product management in office 365 vancouver
Product management in office 365 vancouverProduct management in office 365 vancouver
Product management in office 365 vancouver
 
Visio services in sharepoint 2013
Visio services in sharepoint 2013Visio services in sharepoint 2013
Visio services in sharepoint 2013
 
SPUnite17 Creating Scalable Cloud Solutions
SPUnite17 Creating Scalable Cloud SolutionsSPUnite17 Creating Scalable Cloud Solutions
SPUnite17 Creating Scalable Cloud Solutions
 
Power BI Ecosystem
Power BI EcosystemPower BI Ecosystem
Power BI Ecosystem
 

Similar to Extending Power BI with your own custom visual

Creating custom visuals with Power BI Visuals CLI
Creating custom visuals with Power BI Visuals CLICreating custom visuals with Power BI Visuals CLI
Creating custom visuals with Power BI Visuals CLI
Denys Chamberland
 
A New Development Platform Connecting BIM to Anything - Mr. Xiaodong LIANG Ch...
A New Development Platform Connecting BIM to Anything - Mr. Xiaodong LIANG Ch...A New Development Platform Connecting BIM to Anything - Mr. Xiaodong LIANG Ch...
A New Development Platform Connecting BIM to Anything - Mr. Xiaodong LIANG Ch...
The Hong Kong Institute of Building Information Modelling (HKIBIM)
 
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic AppsBuilding Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
Prashant G Bhoyar (Microsoft MVP)
 
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
Vincent Biret
 
Running Data Platforms Like Products
Running Data Platforms Like ProductsRunning Data Platforms Like Products
Running Data Platforms Like Products
VMware Tanzu
 
Technical Lead (Azure , SharePoint, ASP.Net ), 12+ years exp.
Technical Lead (Azure , SharePoint, ASP.Net ), 12+ years exp.Technical Lead (Azure , SharePoint, ASP.Net ), 12+ years exp.
Technical Lead (Azure , SharePoint, ASP.Net ), 12+ years exp.
Basant Kumar Yadav
 
OTN EMEA TOUR 2016 - OBIEE12c New Features for End-Users, Developers and Sys...
OTN EMEA TOUR 2016  - OBIEE12c New Features for End-Users, Developers and Sys...OTN EMEA TOUR 2016  - OBIEE12c New Features for End-Users, Developers and Sys...
OTN EMEA TOUR 2016 - OBIEE12c New Features for End-Users, Developers and Sys...
Mark Rittman
 
Getting Started: How to Set Up Your "Data as a Feature" Project
Getting Started: How to Set Up Your "Data as a Feature" ProjectGetting Started: How to Set Up Your "Data as a Feature" Project
Getting Started: How to Set Up Your "Data as a Feature" Project
TIBCO Jaspersoft
 
SharePoint Saturday Dayton 2012
SharePoint Saturday Dayton 2012SharePoint Saturday Dayton 2012
SharePoint Saturday Dayton 2012
Scott_Brickey
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Brian Culver
 
Introducción al SharePoint Framework SPFx
Introducción al SharePoint Framework SPFxIntroducción al SharePoint Framework SPFx
Introducción al SharePoint Framework SPFx
SUGES (SharePoint Users Group España)
 
Power bi proof of concept
Power bi proof of conceptPower bi proof of concept
Power bi proof of concept
harrow812arhed
 
VBI View 2.0
VBI View 2.0VBI View 2.0
VBI View 2.0
Visual_BI
 
SPFx- A modern development model for SharePoint
SPFx- A modern development model  for SharePointSPFx- A modern development model  for SharePoint
SPFx- A modern development model for SharePoint
Kirti Prajapati
 
Serverless Integration Book
Serverless Integration BookServerless Integration Book
Serverless Integration Book
BizTalk360
 
Cognos Analytics v11: A Closer Look
Cognos Analytics v11: A Closer Look Cognos Analytics v11: A Closer Look
Cognos Analytics v11: A Closer Look
Senturus
 
SPS Zurich 2018 - Azure Logic Apps: the new workflow engine
SPS Zurich 2018 - Azure Logic Apps: the new workflow engineSPS Zurich 2018 - Azure Logic Apps: the new workflow engine
SPS Zurich 2018 - Azure Logic Apps: the new workflow engine
David Schneider
 
Power BI Day-mvpskill-25082018: Power BI Ecosystem + Embedded & Visualization...
Power BI Day-mvpskill-25082018: Power BI Ecosystem + Embedded & Visualization...Power BI Day-mvpskill-25082018: Power BI Ecosystem + Embedded & Visualization...
Power BI Day-mvpskill-25082018: Power BI Ecosystem + Embedded & Visualization...
Kumton Suttiraksiri
 

Similar to Extending Power BI with your own custom visual (20)

Creating custom visuals with Power BI Visuals CLI
Creating custom visuals with Power BI Visuals CLICreating custom visuals with Power BI Visuals CLI
Creating custom visuals with Power BI Visuals CLI
 
A New Development Platform Connecting BIM to Anything - Mr. Xiaodong LIANG Ch...
A New Development Platform Connecting BIM to Anything - Mr. Xiaodong LIANG Ch...A New Development Platform Connecting BIM to Anything - Mr. Xiaodong LIANG Ch...
A New Development Platform Connecting BIM to Anything - Mr. Xiaodong LIANG Ch...
 
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic AppsBuilding Business Applications in Office 365 SharePoint Online Using Logic Apps
Building Business Applications in Office 365 SharePoint Online Using Logic Apps
 
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
 
Running Data Platforms Like Products
Running Data Platforms Like ProductsRunning Data Platforms Like Products
Running Data Platforms Like Products
 
Technical Lead (Azure , SharePoint, ASP.Net ), 12+ years exp.
Technical Lead (Azure , SharePoint, ASP.Net ), 12+ years exp.Technical Lead (Azure , SharePoint, ASP.Net ), 12+ years exp.
Technical Lead (Azure , SharePoint, ASP.Net ), 12+ years exp.
 
OTN EMEA TOUR 2016 - OBIEE12c New Features for End-Users, Developers and Sys...
OTN EMEA TOUR 2016  - OBIEE12c New Features for End-Users, Developers and Sys...OTN EMEA TOUR 2016  - OBIEE12c New Features for End-Users, Developers and Sys...
OTN EMEA TOUR 2016 - OBIEE12c New Features for End-Users, Developers and Sys...
 
Getting Started: How to Set Up Your "Data as a Feature" Project
Getting Started: How to Set Up Your "Data as a Feature" ProjectGetting Started: How to Set Up Your "Data as a Feature" Project
Getting Started: How to Set Up Your "Data as a Feature" Project
 
SharePoint Saturday Dayton 2012
SharePoint Saturday Dayton 2012SharePoint Saturday Dayton 2012
SharePoint Saturday Dayton 2012
 
BadesahebKBichu
BadesahebKBichuBadesahebKBichu
BadesahebKBichu
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
Introducción al SharePoint Framework SPFx
Introducción al SharePoint Framework SPFxIntroducción al SharePoint Framework SPFx
Introducción al SharePoint Framework SPFx
 
Power bi proof of concept
Power bi proof of conceptPower bi proof of concept
Power bi proof of concept
 
VBI View 2.0
VBI View 2.0VBI View 2.0
VBI View 2.0
 
SPFx- A modern development model for SharePoint
SPFx- A modern development model  for SharePointSPFx- A modern development model  for SharePoint
SPFx- A modern development model for SharePoint
 
Serverless Integration Book
Serverless Integration BookServerless Integration Book
Serverless Integration Book
 
Cognos Analytics v11: A Closer Look
Cognos Analytics v11: A Closer Look Cognos Analytics v11: A Closer Look
Cognos Analytics v11: A Closer Look
 
CV_Priyamadhab
CV_PriyamadhabCV_Priyamadhab
CV_Priyamadhab
 
SPS Zurich 2018 - Azure Logic Apps: the new workflow engine
SPS Zurich 2018 - Azure Logic Apps: the new workflow engineSPS Zurich 2018 - Azure Logic Apps: the new workflow engine
SPS Zurich 2018 - Azure Logic Apps: the new workflow engine
 
Power BI Day-mvpskill-25082018: Power BI Ecosystem + Embedded & Visualization...
Power BI Day-mvpskill-25082018: Power BI Ecosystem + Embedded & Visualization...Power BI Day-mvpskill-25082018: Power BI Ecosystem + Embedded & Visualization...
Power BI Day-mvpskill-25082018: Power BI Ecosystem + Embedded & Visualization...
 

More from Jan Pieter Posthuma

Azure Global Bootcamp - CIS Handson
Azure Global Bootcamp - CIS HandsonAzure Global Bootcamp - CIS Handson
Azure Global Bootcamp - CIS Handson
Jan Pieter Posthuma
 
PBIG - Power BI en R visuals
PBIG - Power BI en R visualsPBIG - Power BI en R visuals
PBIG - Power BI en R visuals
Jan Pieter Posthuma
 
SQLSaturday 551 - Extending Power BI
SQLSaturday 551 - Extending Power BISQLSaturday 551 - Extending Power BI
SQLSaturday 551 - Extending Power BI
Jan Pieter Posthuma
 
SQLServer Days - Power BI Custom Visuals
SQLServer Days - Power BI Custom VisualsSQLServer Days - Power BI Custom Visuals
SQLServer Days - Power BI Custom Visuals
Jan Pieter Posthuma
 
TechDays - Power BI Custom Visuals
TechDays - Power BI Custom VisualsTechDays - Power BI Custom Visuals
TechDays - Power BI Custom Visuals
Jan Pieter Posthuma
 
SQLSaturday 541 - Extending Power BI
SQLSaturday 541 - Extending Power BISQLSaturday 541 - Extending Power BI
SQLSaturday 541 - Extending Power BI
Jan Pieter Posthuma
 
Power BI API
Power BI APIPower BI API
Power BI API
Jan Pieter Posthuma
 
Hadoop from Hive with Stinger to Tez
Hadoop from Hive with Stinger to TezHadoop from Hive with Stinger to Tez
Hadoop from Hive with Stinger to Tez
Jan Pieter Posthuma
 
SQLRally Amsterdam 2013 - Hadoop
SQLRally Amsterdam 2013 - HadoopSQLRally Amsterdam 2013 - Hadoop
SQLRally Amsterdam 2013 - Hadoop
Jan Pieter Posthuma
 
SQLBits XI - ETL with Hadoop
SQLBits XI - ETL with HadoopSQLBits XI - ETL with Hadoop
SQLBits XI - ETL with Hadoop
Jan Pieter Posthuma
 

More from Jan Pieter Posthuma (10)

Azure Global Bootcamp - CIS Handson
Azure Global Bootcamp - CIS HandsonAzure Global Bootcamp - CIS Handson
Azure Global Bootcamp - CIS Handson
 
PBIG - Power BI en R visuals
PBIG - Power BI en R visualsPBIG - Power BI en R visuals
PBIG - Power BI en R visuals
 
SQLSaturday 551 - Extending Power BI
SQLSaturday 551 - Extending Power BISQLSaturday 551 - Extending Power BI
SQLSaturday 551 - Extending Power BI
 
SQLServer Days - Power BI Custom Visuals
SQLServer Days - Power BI Custom VisualsSQLServer Days - Power BI Custom Visuals
SQLServer Days - Power BI Custom Visuals
 
TechDays - Power BI Custom Visuals
TechDays - Power BI Custom VisualsTechDays - Power BI Custom Visuals
TechDays - Power BI Custom Visuals
 
SQLSaturday 541 - Extending Power BI
SQLSaturday 541 - Extending Power BISQLSaturday 541 - Extending Power BI
SQLSaturday 541 - Extending Power BI
 
Power BI API
Power BI APIPower BI API
Power BI API
 
Hadoop from Hive with Stinger to Tez
Hadoop from Hive with Stinger to TezHadoop from Hive with Stinger to Tez
Hadoop from Hive with Stinger to Tez
 
SQLRally Amsterdam 2013 - Hadoop
SQLRally Amsterdam 2013 - HadoopSQLRally Amsterdam 2013 - Hadoop
SQLRally Amsterdam 2013 - Hadoop
 
SQLBits XI - ETL with Hadoop
SQLBits XI - ETL with HadoopSQLBits XI - ETL with Hadoop
SQLBits XI - ETL with Hadoop
 

Recently uploaded

Ch03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdfCh03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdf
haila53
 
Opendatabay - Open Data Marketplace.pptx
Opendatabay - Open Data Marketplace.pptxOpendatabay - Open Data Marketplace.pptx
Opendatabay - Open Data Marketplace.pptx
Opendatabay
 
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Subhajit Sahu
 
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
axoqas
 
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
ahzuo
 
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
slg6lamcq
 
一比一原版(YU毕业证)约克大学毕业证成绩单
一比一原版(YU毕业证)约克大学毕业证成绩单一比一原版(YU毕业证)约克大学毕业证成绩单
一比一原版(YU毕业证)约克大学毕业证成绩单
enxupq
 
Adjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTESAdjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTES
Subhajit Sahu
 
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
axoqas
 
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
slg6lamcq
 
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
pchutichetpong
 
一比一原版(TWU毕业证)西三一大学毕业证成绩单
一比一原版(TWU毕业证)西三一大学毕业证成绩单一比一原版(TWU毕业证)西三一大学毕业证成绩单
一比一原版(TWU毕业证)西三一大学毕业证成绩单
ocavb
 
Predicting Product Ad Campaign Performance: A Data Analysis Project Presentation
Predicting Product Ad Campaign Performance: A Data Analysis Project PresentationPredicting Product Ad Campaign Performance: A Data Analysis Project Presentation
Predicting Product Ad Campaign Performance: A Data Analysis Project Presentation
Boston Institute of Analytics
 
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
mbawufebxi
 
一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单
ewymefz
 
一比一原版(QU毕业证)皇后大学毕业证成绩单
一比一原版(QU毕业证)皇后大学毕业证成绩单一比一原版(QU毕业证)皇后大学毕业证成绩单
一比一原版(QU毕业证)皇后大学毕业证成绩单
enxupq
 
The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...
jerlynmaetalle
 
Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)
TravisMalana
 
SOCRadar Germany 2024 Threat Landscape Report
SOCRadar Germany 2024 Threat Landscape ReportSOCRadar Germany 2024 Threat Landscape Report
SOCRadar Germany 2024 Threat Landscape Report
SOCRadar
 
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
ewymefz
 

Recently uploaded (20)

Ch03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdfCh03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdf
 
Opendatabay - Open Data Marketplace.pptx
Opendatabay - Open Data Marketplace.pptxOpendatabay - Open Data Marketplace.pptx
Opendatabay - Open Data Marketplace.pptx
 
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
 
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
 
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
 
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
 
一比一原版(YU毕业证)约克大学毕业证成绩单
一比一原版(YU毕业证)约克大学毕业证成绩单一比一原版(YU毕业证)约克大学毕业证成绩单
一比一原版(YU毕业证)约克大学毕业证成绩单
 
Adjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTESAdjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTES
 
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
 
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
 
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...
 
一比一原版(TWU毕业证)西三一大学毕业证成绩单
一比一原版(TWU毕业证)西三一大学毕业证成绩单一比一原版(TWU毕业证)西三一大学毕业证成绩单
一比一原版(TWU毕业证)西三一大学毕业证成绩单
 
Predicting Product Ad Campaign Performance: A Data Analysis Project Presentation
Predicting Product Ad Campaign Performance: A Data Analysis Project PresentationPredicting Product Ad Campaign Performance: A Data Analysis Project Presentation
Predicting Product Ad Campaign Performance: A Data Analysis Project Presentation
 
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
一比一原版(Bradford毕业证书)布拉德福德大学毕业证如何办理
 
一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单
 
一比一原版(QU毕业证)皇后大学毕业证成绩单
一比一原版(QU毕业证)皇后大学毕业证成绩单一比一原版(QU毕业证)皇后大学毕业证成绩单
一比一原版(QU毕业证)皇后大学毕业证成绩单
 
The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...
 
Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)
 
SOCRadar Germany 2024 Threat Landscape Report
SOCRadar Germany 2024 Threat Landscape ReportSOCRadar Germany 2024 Threat Landscape Report
SOCRadar Germany 2024 Threat Landscape Report
 
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
 

Extending Power BI with your own custom visual

  • 2. © Feb '18 – DataScenarios • Jan Pieter Posthuma – Microsoft Data Consultant • DataScenarios – Data Consultancy Company • Architect roles at multiple projects • Creator of Power BI Custom Visuals • HierarchySlicer [∞] • Box and Whisker chart [∞] • D3js Visual [∞] • Contact • mail@datascenarios.nl • https://twitter.com/jppp • https://linkedin.com/in/jpposthuma • https://github.com/liprec Who am I? 2
  • 3. © Feb '18 – DataScenarios • Introduction • Developing • Technical Demos • AppSource Listing • D3js Visual 3 Agenda
  • 4. © Feb '18 – DataScenarios Introduction
  • 5. © Feb '18 – DataScenarios Develop custom visuals quickly with Microsoft’s open-sourced, production-quality visualization code Present data in the way that makes best sense to your users Leverage the visualization framework, test suite and tooling to build the right custom visuals for your app Gallery: appsource.microsoft.com 5
  • 6. © Feb '18 – DataScenarios Custom Visuals Platform 6
  • 7. © Feb '18 – DataScenarios Distribute through AppSource Greater reach to business users Usage tracking Publishing requires Office Developer account https://appsource.microsoft.com 7
  • 8. © Feb '18 – DataScenarios • Since beginning of the new Power BI (Summer 2015) • Beginning 2016: visuals are running in a ‘sandbox’ environment • August 2016: new Power BI API available, current version: v.1.10.0 • March 2017: Migration to Office Store: Version API required • July 2017: Integration with Office Store and Certified visuals • Sept 2017: Office Store is moved to Microsoft AppSource • Feb 2018: Introduction of the Company Store History 8
  • 9. © Feb '18 – DataScenarios Developing
  • 10. © Feb '18 – DataScenarios • NodeJS 4.0+ Required (5.0 recommended) • https://nodejs.org/ • PowerBI-Visuals-Tools • npm install -g powerbi-visuals-tools • SSL and Debug visual: https://github.com/Microsoft/PowerBI- visuals/blob/master/tools/README.md • Visual Studio Code • https://code.visualstudio.com/download • PBIViz CLI addin: https://marketplace.visualstudio.com/items?itemName=liprec.vscode-start- pbiviz • Enable ‘Developer Visual’ in Power BI Admin portal Tools needed 10
  • 11. © Feb '18 – DataScenarios Power BI Custom Visual API 11 IVisual module methods (init, update, …) enumerateObjectInstances dataView Formatting pane Power BI Custom Visual capabilities.jsonvisual.ts Interaction via code Report canvas Sandbox
  • 12. © Feb '18 – DataScenarios Technical Demos
  • 13. © Feb '18 – DataScenarios > pbiviz new <visualname> .api .vscode assets src style capabilitises.json pbiviz.json tsconfig.json Folder structure API schemas Visual Studio Code settings Icons / screenshot Capabilities definition – dataview binding, formatting pane Power BI Visual definition, like name, author, externalJS files, TypeScript config file list of .ts files needed (incl. typing) Source files – must included in tsconfig.json Style file – included in pbiviz.json. Less supported 13
  • 14. © Feb '18 – DataScenarios • First class citizens (Power BI is using them also): • D3js.org – Graphical library for ‘Data-Driven Documents’. • Lodash – Library to take the hassle out of working with arrays, objects, strings, numbers, etc. • jQuery – Library to make HTML document traversal and manipulation, event handling easier • Helper classes to support common UI operations, e.g.: • powerbi-visuals-utils-formattingutils – valueFormatting, TextProperties, … • powerbi-visuals-utils-dataviewutils – getObject, DataViewObjectsParser, External Libraries
  • 15. © Feb '18 – DataScenarios Appsource listing
  • 16. © Feb '18 – DataScenarios Creation Coding Testing Packaging Submission Custom Visual SDK PowerBI.com Office Seller Dashboard Custom visual development lifecycle 16
  • 17. © Feb '18 – DataScenarios • Submit pbiviz file, return manifest file for AppSource listing • Only free visuals supported (at this time) • Manual process, general 2-3 business days (US) • Tested against: • Chrome, Firefox, Edge and Internet Explorer 11 • Power BI Desktop (Chromium) • Tested to provide expected behavior: • Everything should work • No errors/exceptions • After approval support: • Power BI is a moving target! 17 Custom Visual approval
  • 18. © Feb '18 – DataScenarios • Visual advantages: • Exported to PowerPoint • Embedded in emails • Requirements: • Microsoft AppSource approved • Custom visual is written with Versioned API 1.2 or higher • Code repository available for review (e.g., Visual Code available to us through GitHub) • Uses only public reviewable OSS components • Does not access external services or resources https://docs.microsoft.com/en-us/power-bi/power-bi-custom-visuals-certified 18 Custom Visual certification
  • 19. Gebruikersdag 2018 Bedankt! Vergeet niet de evaluatie in te vullen! Scan de QR code.
  • 20. © Feb '18 – DataScenarios References
  • 21. © Feb '18 – DataScenarios •Slides: http://bit.ly/PBISQLBbits2018 •Demos: http://bit.ly/PBISQLBits2018-demo Links
  • 22. © Feb '18 – DataScenarios • Power BI Custom Visuals documentation https://github.com/Microsoft/PowerBI-visuals • Power BI CLI tools https://github.com/Microsoft/PowerBI-visuals-tools • Power BI Core Visuals (old visuals, but good for reference) https://github.com/Microsoft/PowerBI-visuals-core • Visual Studio Code https://code.visualstudio.com/download • PBIViz addin https://marketplace.visualstudio.com/items?itemName=liprec.vscode- start-pbiviz • Certification Requirements https://powerbi.microsoft.com/en-us/documentation/powerbi-custom- visuals-certified/ Resources 25
  • 23. © Feb '18 – DataScenarios • Clone or download https://github.com/Microsoft/PowerBI-visuals-sampleBarChart npm update pbiviz start • Open a report, upload some data In www.powerbi.com, go to Get Data Open a report once you’re done. Edit the report Click the developer visual Bind some data • Press F12 to debug Use the browser debugger to see what’s happening Hint: add debugger; to the constructor (makes debugging easier) Start coding 26