New PowerApps update boosts productivity with support for Flow, undo/redo in the web, a new experience to manage app updates, and OnStart initialization
The newest update for PowerApps (version 650) adds new functionality for app authors to be more productive in PowerApps Studio on the web, a brand new experience to test your changes and control when you publish updates to your users, and addresses many more issues based on feedback. Here are some of the key new capabilities.
Flow integration and undo-redo support in PowerApps Studio for web
PowerApps Studio for web allows you to rapidly build apps in a web browser without downloading the app from the Windows Store. Last month, we rolled out creation of apps from templates on the web. Today, we are happy to introduce two more features that bring the experience in the web browser at feature parity with PowerApps Studio for Windows, providing a great app building experience for users of Windows 7 or non-Windows platforms.
Flows in PowerApps Studio for web
You can now add or edit Flows to apps inside the web authoring environment. You can find ‘Flows’ in the Action tab in PowerApps Studio for web. Add a control, associate a flow with it and configure the flow.
To improve usability, authors creating a new Flow from PowerApps.com website will now see the default trigger set to PowerApps.
Undo/Redo support in PowerApps Studio for web
Authoring actions can be undone or redone from the browser. This was a key capability requested by app authors. You can use the actions from the top right of the Studio authoring experience or shortcuts CTRL+Z and CTRL+Y for undo and redo actions respectively. This allows you to undo accidental changes to the app without time consuming fixes.
Brand new experience to manage app updates
Introducing Save and Publish
Apps updated in PowerApps Studio today have a side effect of propagating changes to all end users on every Save operation. This is less desirable when you are saving intermediate changes and don’t want them to be visible to your app users, who are already using a stable version of your app. With this update, we are introducing a new Publish action to distinguish saving and publishing of apps.
App authors can incrementally update the app, save their changes and test the app, without publishing the intermediate app to their end users. The intermediate changes are available as drafts, on the PowerApps.com website in App versions page, if authors want to revert to any version without affecting published apps. App authors decide when they publish the app and end users will only see the published app updates.
Please refer to a detailed blog post by Karthik that walks you though this new experience.
Save the app first – app is visible only to other authors
Publishing an app – app is visible to all users
No auto-updates for apps you’ve built and published
Based on your feedback, we’ve changed how we roll out upgrades to PowerApps service, in order to minimize affecting apps you’ve already published.
Until recently, new releases of the PowerApps service automatically updated the apps you’ve published to your end users. This meant that your end users could automatically benefit from the improvements we’ve made to controls and the platform. Unfortunately, in some cases, this caused some side effects that changed the behavior of your published apps, without providing app authors a chance to test these updates. We’ve re-worked our release process so that published apps will always run the same way, no matter how often we update the PowerApps service. The only time an app gets the latest updates is when you edit it in PowerApps Studio, and then save and publish a new version to your end users.
This means that you should always test your app after you modify it. Once you make changes, we recommend that you test your app end-to-end to validate your changes, and to check for any changes brought in by PowerApps platform updates.
This service enhancement provides app authors with a more predictable behavior and puts them in control of when they want to publish updates. Learn more in Manas's blog post.
App initialization with OnStart
Do you find that sometimes your app requires some initialization before it gets rolling? An API to call, a data source to load, a collection to fill? Have you tried using OnVisible on the first screen but find that less than ideal, as it will fire after the screen is visible, will fire again each time the screen becomes visible, and you can't Navigate from it?
There is a better way with this release. On the first screen of your app, and only the first screen, you will find a new OnStart action formula . It appears in the studio in all the places you find other action formulas such as OnVisible. This formula will execute before anything else when your app is being loaded, before the first screen is shown, and it will execute only once. You can initialize your app by calling APIs and using Collect as much as you like. You can also use Navigate to start the app on a different screen and even pass context variables to it.
Sounds great, but why is OnStart associated with the first screen when this seems to be an app level thing? We don't yet have a place in the studio for working with app level formulas and the first screen seemed like the best place for now. If you remove your first screen or reorder screens and you aren't sure where it went, simply save, close, and re-load your app and it will again appear on the first screen.
Many other improvements for app authoring
Connect to custom SharePoint list
When using SharePoint Online, not all types of lists appear by default. If the name of the list that you want to use doesn't appear, you can scroll to the bottom of the lists, and then type the name of the list in the box that contains Enter a custom list name. This functionality is available for creating new apps with SharePoint Online data connections or adding lists to existing apps.
Form Pane UI Improvement
In this release, we improved some of the form pane elements. The eye icon which adds a field to the canvas is now changed to a checkbox. Checkbox is more clear and checking the field means adding to the form. And "Add custom field" option is moved to the right-hand pane instead of the canvas. We hope these changes make the form customization experience more intuitive.
Make column-level adjustments in the Data table control
When the Data table control was initially released, the only control the app maker had over column behavior and appearance was to choose the fields that displayed in the control. In this release, each field shown in a Data table control is now represented as a Column control. This allow app makers to make visual and behavioral adjustments to individual columns. Learn more about this in Jason’s blog post.
Smarter initial selection of fields and pre-populated gallery layouts for Common Data Service
When you connect a Gallery, Form, or Data table control to an entity in Common Data Service, PowerApps now intelligently selects the fields to connect the child controls. We also provide rich pre-populated gallery layouts for the most frequently used Common Data Service entities. Learn more about this feature in this blog post from Anees.
And so much more…
Please check out our What’s New page for more details on other exciting features!
Have feedback for us? We would love to hear them – please post in our forums! We are always actively listening, learning, and responding to your comments and questions.
If there’s a feature you’d like to see in an upcoming release, please submit your idea to us!
Happy app building!
– The PowerApps Team