Developing for the Power BI platform is an intensive 3-day training targeted at developers. In this course, participants will learn how to develop custom applications on top of Power BI. The training starts with an overview of the Power BI REST API. Students will learn how to automate the creation and management of workspaces, publishing PBIX files and configuring data source settings dynamically.
Developing for the Power BI Platform
Who should attend this course?
This course is intended for developers who would like to develop custom applications for the Power BI platform.
Prerequisites
Participants should have a basic understanding of Power BI Desktop and the Power BI Service. Students should also have previous programming experience with .NET and/or JavaScript in Visual Studio or Visual Studio Code.
The course also explains how the Power BI REST API can be used to develop streaming datasets and real-time dashboards. Once the Power BI REST API has been covered, students will learn how Power BI Embedded can be used to embed Power BI content like reports and dashboards in custom web or intranet portals. Students will learn how to use the Power BI JavaScript API to interact with the embedded reports and dashboards. The course ends by teaching students how they can develop custom Power BI Visuals using TypeScript and Visual Studio Code.
Introduction to Power BI Development
This module provides students with a quick overview of the Power BI Desktop client application and Power BI cloud service, and where the extension points of Power BI are as a developer. The modules introduces developers to the Power BI REST API, writing custom Visuals and embedding Power BI in custom web portals.
- Overview of Power BI Desktop and Power BI Service
- How can developers extend Power BI?
- Introducing Power BI REST API
- Overview of Power BI Embedded
- Overview of developing custom Visuals
The Power BI REST API
The Power BI REST API is a Web API developers can use to interact with the Power BI Service. Students will learn how the authenticate users against the Power BI REST API using the Microsoft Identity Platform (MSAL). Students will learn how to work with App Workspaces, Datasets, Tables and the data from code. The module also explains how the Power BI REST API can be used to automate the publishing of PBIX files and configuring data source settings.
- Overview of Power BI REST API
- Registering applications with Azure Active Directory
- Authenticate with the Power BI REST API using OAuth 2 and MSAL
- Working with App Workspaces
- Working with Datasets
- Pushing rows into dataset tables
- Publishing Power BI Desktop PBIX files
- Configuring data sources and dataset refresh settings
- LAB: Working with the Power BI REST API
Working with streaming datasets
This module teaches students how to work with streaming datasets in Power BI. Students will learn about the different ways that rows of data can pushed into a streaming dataset. Finally, students will see how real-time dashboard can be created using so-called streaming tiles.
- Introduction to streaming datasets
- Different types of streaming datasets
- Creating and using streaming datasets in the Power BI Service UI
- Creating and using streaming datasets using the Power BI REST API
- Creating streaming datasets using the Azure Stream Analytics
- Building real-time dashboards
- LAB: Working with streaming datasets
Power BI Embedded
In this module, students will learn how Power BI Embedded can be used to embed Power BI Reports and Dashboards into custom applications. The module introduces the different licensing models for Power BI and how users and/or applications can be authenticated. Next you will see how the Power BI Embedded JavaScript API can be used to embed Power BI content in your custom application. Topics like filtering, printing, event handling using the JavaScript API are also covered.
- Overview of Power BI Embedded
- Power BI Embedded licensing models
- Authentication scenarios for Power BI Embedded
- The Power BI Embedded JavaScript API
- Embedding dashboards
- Embedding reports
- Embedding tiles
- Event handling on embedded reports and dashboards
- LAB: Power BI Embedded
Getting Started with developing custom Visuals
In this module students will first learn how to setup a development environment for building custom Visuals. Next, students will learn how to use the Power BI Custom Visual Tool (PBIVIZ) to create, test and package a custom Visual. Students will also learn about the structure of a custom Visual project in Visual Studio Code.
- Installing Node.js
- Working with NPM
- Installing developer certificates
- Installing and using the Power BI Visual Tools (pbiviz)
- Creating your first Power BI custom Visual
- Overview of the Power BI Visual project structure
- Testing and debugging a custom Visual
- Working with external JavaScript libraries and Type Definition files
- LAB: Getting Started with developing custom Visuals
Developing custom Power BI Visuals
This module teaches students step by step how custom Visuals are built. It first introduces the custom Visual Object Model. Next, students will learn how Objects and Properties can be defined on a custom Visual and how you work with them in code. Students will also be introduced to the different data view mappings and how to retrieve the data that the Visual should display using the DataView object model. Students also learn how to display tooltips on Visuals, how to use the formatting utility classes to format numbers, dates, … Finally, students will see how custom Visuals can be packaged and used in Power BI Desktop or the Power BI Service.
- Overview of the Power BI custom Visual object model
- Define capabilities and data view mappings
- Define custom properties
- How to format numbers, dates, … in a custom Visual
- Packaging and deploying a custom Visual
- LAB: Developing custom Power BI Visuals