This is my slide deck from my Next Level Forms with PowerApps Talk at Tulsa Tech Fest 2018. I show some of the recent updates and tips and tricks to take your PowerApps to the next level
5. “PowerApps is a
service for building and
using custom business
apps that connect to
your data and work
across the web and
mobile - without the
time and expense of
custom software
development.”
9. Data Sources
Galore
• Import Data from
Dynamics 365, Office
365, SharePoint,
Azure
• 160+ Connectors
(Box, Google Drive,
etc)
• Ability to create and
add custom
connectors
10. Enterprise ready
apps
• App analytics
• Central management
• Data loss prevention
policy on data and
connectors
• Compliance with 13+
standards (Hippa,
soc, etc)
13. InfoPath vs PowerApps
InfoPath PowerApps
Drag & Drop Interface X X
Repeating Tables X X
Attachments X X
Conditional Logic X X
Multiple Data Sources X X
Offline Capability X X
External User Access X
Printing Capability X
14. Infopath vs powerapps building blocks
InfoPath
Data Sources
Views
Controls
Rules
PowerApps
Data Sources
Screens
Controls
Rules/Formula’s
15.
16.
17. Canvas vs model driven apps
Canvas Model Driven
User Experience (UX) + -
Data Validation = =
Data Sources + -
Ease of Configuration ? ?
Extensibility = =
21. Creating powerapps using sharepoint
data
Just like in InfoPath you
can either customize the
default SharePoint List
Form (SharePoint
customized app) OR you
can create a separate app
and add SharePoint as a
data source (Stand-alone
app)
23. Sharepoint customized app vs
standalone app
Customized
× Can only open from
SharePoint list, not in
PowerApp Gallery
× Can’t move between
sites/environments
× Can’t use if list contains un-
supported field types: Rating,
External Data, Task Outcome
Standalone
× Appears in PowerApp Gallery
and Mobile
× Can embed in SharePoint
Page
× Use anywhere
26. Attachment support
× You can now upload documents to SharePoint as list
attachments
× Still can’t upload directly to a document library
× Use Flow to move those attachments to a document library
× Flow Template: https://us.flow.microsoft.com/en-
us/galleries/public/templates/1f4a2b1b99e64e8dbb81b7c47cc
5bb11/upload-a-file-to-sharepoint-from-powerapps/
27. Sharepoint web part
× Microsoft just released a
web part to enable you
to embed PowerApps in
your Modern SharePoint
sites
× Only available on Modern
sites
30. Concurrent function
× Improves Start Up Times
× Useful when pre-loading data on start
× https://docs.microsoft.com/en-
us/powerapps/maker/canvas-
apps/functions/function-concurrent
31. Custom connectors
× You can create custom API connectors for
use in PowerApps and Flow
× Supports Azure Active Directory, OAuth 2.0,
API Key and Basic Auth
× Describe custom API using OpenAPI File
(Swagger) or a Postman Collection
32. Cognitive services connectors – power
up with ai
× Computer Vision API
× Describe/Analyze
Image
× OCR Image
× Face API
× Face Detection (Male,
Age, etc)
× Emotion Identification
× Text Analytics API
× Sentiment Analysis
× Keyword detection
× Language detection
× QNA Maker
× Chatbot
capability
https://azure.microsoft.com/en-us/services/cognitive-services/
34. Importan
t noteOnly backwards compatible up to 6 months. Microsoft
recommends updating and re-publishing your apps every
6 months.
https://docs.microsoft.com/en-
us/powerapps/maker/canvas-apps/save-publish-app
35.
36. Tip #1 – Start with Data Structure First
× Create all the fields you’ll need in your
data sources first (SharePoint, SQL,
CDS, etc)
37. Tip #2 – Comment your Code
× Yes your formula’s count as code!
× Formula’s can get long and complex
× Help others who need to maintain your app by adding helpful
comments explaining what your formula’s are doing. Use // to
add a comment
× https://powerapps.microsoft.com/en-us/blog/comment-your-
powerapps-code/
38. Tip #3 – Re-name data cards your using
in formulas
× Data cards get assigned generic names (DataCard1,
DataCard2, etc)
× Imagine trying to write a formula to show Field X if
Field A has a certain value but you have to search
through DataCard1 – 100 to find out which property
you need
39. Tip #4 – Refresh, Refresh, Refresh
× The PowerApps app is
infamous for caching
and not getting app
updates. The
solution? Refresh up
to 3 times
40. Tip # 5 – Pin your apps to the home
screen
× PowerApps have
to run through
the PowerApps
app
× Make your apps
seem more like a
traditional
phone/tablet
app!
41. Tip #6 – You Can connect to document
libraries!
× Document libraries
aren’t fully supported
in PowerApps…yet
× Work-Around: Type in
Doc Library Name
× To Open File:
Launch('{Link}')
43. Tip # 7 – Document Your Apps
× Any piece of software, app or form needs to
have documentation on how to use it
× Add screens in your app that hold instructions
× Use ? Icon to navigate to help documentation
× Check out sample apps to see how they
document their apps
44. Tip # 8 – Don’t bother with the rules
section
× The rules pane is *supposed* to make conditional logic
easier but it’s just not there yet
× Better off using a formula
× Example: Show text box if radio button is yes. Set
Visible property to:
If(PerDiemEarnedYN.Value = true,true,false)
45. Tip # 9 – connect to on-prem data with
gateway
× On-Premises Data Gateway allows you to
connect to on-prem SharePoint & SQL
46. Tip # 10 – launch powerapps from
teams
× Microsoft Teams is a
platform that combines
chat, meetings, notes,
files, etc
× You can add PowerApps
as a tab in Teams so
you never have to leave
the Teams app
47. × Power Users Community
https://powerusers.microsoft.com/
× Guided Learning:
https://docs.microsoft.com/en-
us/powerapps/guided-learning/
× My Blog: www.sharepointsiren.com
I like to describe PowerApps as if Excel and PowerPoint had a baby that would be PowerApps. The way that you add functionality or “code” in PowerApps is with functions that are very similar to Excel functions. The interface reminds you a lot of PowerPoint with screens, shapes, controls, etc
PowerApps is part of the Microsoft Power Platform. This Platform consist of the Power User Tools PowerApps for forms/app development, Power BI for Reporting and Analytics and Flow for Workflow and Business Process.
POWERAPPS is Microsoft’s replacement for InfoPath. InfoPath is going away eventually… no more new releases. They have been gaining ground on InfoPath Feature Parody. The only things missing are external user access and printing capability. External user access is currently in the “Planned” status on the PowerApps Ideas forum. One thing I’ll say about PowerApps is if you find a feature missing I encourage you to go to the PowerApps Ideas Forum and vote for the feature you want added. Microsoft has been very good at monitoring this list and providing updates.
As you can see, although the technologies used are vastly different (goodbye XML)…the building blocks of PowerApps and InfoPath are pretty similar. You add your data sources to use in each tool. InfoPath has Views which are called Screens in PowerApps. Each tool has a set of controls that you add to be able to input data. And each tools have ways to create Rules to show/hide information and perform actions.
There are two types of PowerApps that you can build Canvas and Model Driven. For this session I’m going to focus on Canvas Apps
Model Driven Apps are still fairly new and are based on the Dynamics 365 UX which I’ve always found to be a little clunky.
Model Driven Apps are expensive to make. They require a Dynamics Plan or PowerApps Plan 2 which is $40 per user.
The Model Driven UX is the Dynamics UX. I find people either love or hate the Dynamics 365 UX…I’m on the hate side so for me Canvas apps get the win from a UX perspective
The data validation capabilities are the same between both types of apps.
As you can see Canvas Apps are the big winner in the Data Sources Category. You can connect to over 200 different data sources in Canvas Apps but Model Driven Apps can only use Data from the Common Data Service
There’s a lot of debate on which model is easier to configure. I find that people who come from a Dynamics background think that Model Driven is much easier to configure but people who don’t find that Canvas apps are easier.
They are both comparable in extensibility.
For a long time there was no way to get files into SharePoint from PowerApps. At the North American Collaboration Summit this year, Cathy Dew announced the release of the ability to add documents to SharePoint as List Attachments. While that’s a positive step forward, most people want to be able to add documents to a library, not as a list attachment. Luckily, you can do that via Flow.
Microsoft has been doing a lot of work in the AI Field. They have created several connectors which you can use in PowerApps and Flow to the Azure Cognitive Services. This enables you to easily use AI features in your apps.
Computer Vision API allows you to do several things with images including describing an image, it’s great at identifying celebrities. You can train it to identify certain images such as people in your company or your company logo. OCR is another huge thing. It can extract text from and image and write that out. Think about being able to upload a receipt in your PowerApp and have it automatically get the store and amount for you so you don’t even have to enter that? Currently that particular feature doesn’t work in PowerApps but you can tie in a Flow to extract that information and return it.
Face API lets you do all kinds of cool facial recognition such as identifying someone’s face, guessing their age, gender, and even what emotion they are feeling.
Text Analytics API let you evaluate text to tell what language it is in, identify keywords and judge if the text is positive or negative. This sentiment analysis would be great for a company getting with a feedback form and you can gauge how much positive or negative feedback you get.
QNA Maker lets you create a question and answer database that you can train. This is use to create a chat bot. So you can ask “what are our company holidays?” or “When do we get paid” and return the answer.
https://powerapps.microsoft.com/en-us/blog/republish-your-apps-to-get-performance-improvements-and-additional-features/
This is something that most people don’t realize but when they do it freaks them out.
Microsoft is constantly updating and adding functionality to PowerApps. Because of the high rate of updates they can only guarantee a 6 month backwards compatilbily window. I’ve never run into any issue with my app going down but it is recommended to re-publish your apps every 6 months to take advantage of performance improvements and new features.
Microsoft is currently working on an auto-republishing feature but no ETA on when that will be released
This one is pretty self explanatory. It’s always easier if you get your back-end data structure built out first, whether that is SharePoint, SQL or CDS.
Another thing Microsoft recently released is the ability to comment your code (formula’s). So if you have any development background this will look very familiar to you. You can use two backslashes (//) to add a comment. This will come in handy when you have a lot of complex formula’s. Those who have to maintain your PowerApp after you will thank you for commenting.