This document provides a summary of a presentation on PowerApps for enterprise developers. The presentation covered how to build offline-capable apps using collections and functions like LoadData and SaveData. It also discussed embedding PowerApps in websites using iframes and parameters, building Azure Functions, and creating custom connectors and PowerApps components. Recent updates included AI Builder for the Power Platform, PowerApps portals, and support for JSON and relational data in canvas apps.
2. ◦ THANKS TO OUR SPONSORS
2
Web
Sharesoft
Platinum
Silver
Diamond
3. I am Fabio Franzini
Office Development MVP, One of Top 25 SharePoint Influencers in Europe
for 2018 and Microsoft Web Stack lover. Senior Consultant, Software
Engineer & Trainer.
You can find me at @franzinifabio
3
6. Build offline-
capable apps
Use Use collections and leverage functions such as LoadData
and SaveData for basic data storage when offline.
Determine Determine when an app is offline, online, or in a metered
connection by using the Connection signal object.
Run Run apps that you develop when offline.
Launch Launch PowerApps Mobile when offline.
10. Limitations
LoadData and SaveData combine to form a simple
mechanism to store small amounts of data on a local device.
You should generally expect to have between 30 and 70
megabytes of available memory.
The functions also don't automatically resolve merge
conflicts when a device returns to connectivity from offline.
11. Integrate canvas apps
into websites and
other services
The apps that you build are
often most useful when
they're available right where
people do their work. By
embedding canvas apps in an
iframe, you can integrate
those apps into websites and
other services, such as Power
BI or SharePoint.
12. Integrate
canvas apps
into websites
and other
services
Only PowerApps users in the same
tenant can access the embedded
app.
Using Modern Browser or using
Internet Explorer 11, but you must
turn off Compatibility View.
You can also integrate canvas apps
into SharePoint Online without
using an iframe by using PowerApps
web part.
13. Set URI
parameters
for your app
• https://web.powerapps.com/webplayer/iframeapp?source=iframe&appId=
/providers/Microsoft.PowerApps/apps/[AppID]
• The only thing you have to do is substitute the ID of your app for [AppID] in
the URI (including '[' & ']'). We'll show you how to get that value shortly, but
first here are all the parameters available in the URI:
• [appID] - is in the format /providers/Microsoft.PowerApps/apps/[AppID]. It
provides the ID of the app to run.
• screenColor - is used to provide a better app loading experience for your
users. This parameter is in the format RGBA (red value, green value, blue
value, alpha) and controls the screen color while the app loads. It is best to
set it to the same color as your app's icon.
• source - does not affect the app, but we suggest you add a descriptive name
to refer to the source of the embedding.
• Lastly, you can add any custom parameters you want using the Param()
function, and those values can be consumed by your app. They are added to
the end of the URI, such as [AppID]&param1=value1. These
parameters are read only during launch of the app; if you need to change
them, you need to re-launch the app.
15. Embed your app in a website
<iframe width="[W]" height="[H]"
src="https://web.powerapps.com/webplayer/iframeapp?source=
website&screenColor=rgba(165,34,55,1)&appId=/providers/Micr
osoft.PowerApps/apps/[AppID]" allow="geolocation;
microphone; camera"/>
Include allow="geolocation; microphone; camera" in your iframe
HTML code to allow your apps to use these capabilities on Google
Chrome.
18. Azure Functions Key Features
Choice of language - Write functions using your choice of C#, F#, or Javascript. See
Supported languages for other options.
Pay-per-use pricing model - Pay only for the time spent running your code. See the
Consumption hosting plan option in the pricing section.
Integrated security - Protect HTTP-triggered functions with OAuth providers such as
Azure Active Directory, Facebook, Google, Twitter, and Microsoft Account.
Open-source - The Functions runtime is open-source and available on GitHub.
19. Azure
Functions What
I can do
Azure Functions supports
triggers, which are ways to
start execution of your
code, and bindings, which
are ways to simplify
coding for input and
output data.
20. Azure Functions
Authorization Level
• For each function you can choose an "authorization level“
• anonymous means no API key is required
• function means a function specific API key is required.
• admin means you are required to provide the special "master" host key
21. What is a Custom Connector?
Custom Connectors
PowerApps
Flows
API
• Using it in PowerApps
and Flows
• Can call the Graph API
• Can also call other APIs
like Azure Function
• Function based
22. Why do you make a Custom
Connector?
• When existing Connectors do not support
the operations you need
• If you want to reuse the same apis in
different points or different App
24. Create a component
for canvas apps
• This feature is still
experimental and disabled
by default.
• Open the App
Settings screen,
select Advanced settings,
and enable the feature, as
well as ensuring
that Improved app
rendering is also enabled.
26. Current
component
limitations
• Data sources aren't saved with components, so forms and
data tables are disabled.
• If you create a variable in a component, that variable is
scoped only to that component and doesn't appear with
app variables.
• PowerApps doesn't support collections in components.
• You can't insert a component into a gallery, a form, or a
data card.
• A master instance of a component is a local master and
scoped to the app. If you change a master instance, only
copies of the component within the app will reflect the
change. Copies in other apps will remain the same unless
you import the component library again. All master
instances in those apps will be automatically detected and
updated.
• You can't package media files when you import a
component
30. Preview components
PCF Typings file
Helper API file
PCF API documentation
Sample controls
Showcase preview API capabilities
PowerShell script
Create and deploy solution
Documentation
QuickStart Video
Tutorials Onboarding articles
https://docs.microsoft.com/en-
us/powerapps/developer/component-
framework/overview
31. Useful tools
PowerApps Review Tool Theme Editor
This tool allow you to see all the changes that you
made to your app taking the default properties of
the control as baseline.
Theme editor allow you to inject your own style
into your app. You can update every style of every
controls.
32. Useful tools
App Merger Phone to Tablet Layout Converter
This tool takes two apps and creates a third
merged app that includes all screens from both
apps.
This simple tool converts your phone app to a
tablet layout.
35. Some June
2019 Updates
AI Builder for Power
Platform
PowerApps Portals
PowerApps checker
PowerShell Module
React and Office UI Fabric
React for PowerApps
component framework
Northwind Traders
relational data sample
JSON for canvas apps
36. AI Builder for Power Platform
Binary Classification Text Classification
Uses historical data to predict whether new
data falls into one of two categories
Tags any snippet of text based on the
historical data you provide
37. AI Builder for Power Platform
Object Detection Form Processing
Lets you count, locate, and identify selected
objects within any image
Identifies the structure of your documents based on
examples you provide to extract text from any
matching form
38. PowerApps Portals
(Not avaible yet)
The ability to build low-code,
responsive websites which
allow external users to
interact with the data stored
in the Common Data Service
39. PowerApps checker
PowerShell Module
Using the module, you can directly
check your solutions from your
pipelines and receive the a
detailed report of issues similar to
what was made available to you
from the PowerApps maker portal.
Alternatively, you can also allow
your teams validate their solutions
locally by using the interactive
login mode to access the checker
service.
40. React and Office UI Fabric React
for PowerApps component
framework
Enables PowerApps component framework developers the ability
to use React and Office UI Fabric to build components
41. Northwind Traders relational
data sample
New sample solution showcasing canvas and model-driven
apps built on relational data in Common Data Service.
https://powerapps.microsoft.com/en-us/blog/northwind-
traders-relational-data-sample/
43. JSON for canvas apps
The JSON function returns the JavaScript Object
Notation (JSON) representation of a data structure as
text so that it’s suitable for storing or transmitting
across a network