This week we are back with the PowerApps team and joining us is Laura Onu, Program Mananger , and she will be walking us through how to create and customize applications with PowerApps.
In the last couple of Webinars there have been a couple requests to show how to do Power BI integration with PowerApps…Specifically inputting data into the real time tiles. so i will show this as one of the examples.
When: 10/20/2016 10:00AM PST
If you aren’t able to make the webinar here are the steps for getting Power Apps /Power BI integration working with Microsoft Flow.
First part is to Create an API based streaming data set in Power BI and connect.
1. Add a new dashboard
This is done by logging to Powerbi.com and pressing the “+” sign for creating a new Dashboard
3. Add a new streaming dataset.
This can either be done from the streaming data set > New streaming data set or from the dashboard select “Add tile” > Custom Streaming data and select “Add streaming Dataset” (see image below).
4. Add a new API based streaming dataset
5. Define the streaming Dataset you want to use. In this case i have added the following values with the following types:
Id = String
QTY = Number
Amount = Number
Date = Date
Note the JSON is being defined in real time for you – very cool!
6. Copy the End point to Push URL for this JSON.
7. Add a real time tile to display the data
From the dashboard in the upper right hand corner select “+ Add Tile”
8. Add a Card Tile type
Second part of this sample is:
Create the Flow that will Push the JSON to the Power BI URL
1. Log into http://flow.microsoft.com
2. Create a new Flow
Navigate to “My Flows” and create a new file by selecting “Create from Blank”
3. Decide how you will invoke your flow
In this case we want to PowerApps invoke the flow so select the PowerApps option from the drop down
4. Add the Action(s) for the Flow
For this example we should only need to add the http action. Unfortunately there is an issue in the current builds of PowerApps binding to a Flow which accepts an HTTP Body. To work around this, create a Flow with the first action is to send an email (Good debugging tip)
5. Add the mail send action
The first action needed is to send email with the body being supplied by PowerApps.
6. Add the HTTP Action
From Step 6 copy the URL Power BI supplied for pushing in the JSON. For the HTTP body select the email body supplied at the bottom of the HTTP action card.
NOTE: While the picture shows a PUT it should be a POST….Sorry about the Mixup!!!
Third part of the sample is:
Create the Power Apps Application to supply the JSON values.
1. Log into PowerApps
Navigate to https://powerapps.microsoft.com and select Login –with the same account you used to create the Flow above.
2. Create a new PowerApps Application
After you log into PowerApps you you can choose to get started with a sample App or start with a brand new application.
3. Open the PowerApps Windows Authoring Application.
After selecting New app, you are offered a choice of using the web authoring experience or PowerApps Studio for Windows.
For this sample select: “PowerApps Studio for Windows”.
4 . Create a new PowerApps application
Using the blank app template select the Phone layout.
5. Insert a Textinput and a Button.
We are going to use the Textbox to hold the JSON and the Button to invoke the Flow.
6. Change the Textinput to accept multiline values.
In the real world you would build the JSON with a couple of Input boxes using string concatenation but for a sample we will just put the entire JSON into a single input box.
7. Assign the flow to the Button.
After selecting the button select “Action” > “Flows” and you will see all the flows that have been created to be activated by PowerApps.
8. Run the PowerApps Application
In the image below, run the PowerApps application by pressing the “Run” button.
9. Verify the entire process is working.
Pressing the button you should immediately get a piece of email with the JSON being sent to Power BI and the real time tile being updated.
If you are getting the Mail but the tile isn’t being updated verify you copied the JSON into notepad before pasting it into the PowerApps InputBox1.