Preview for Improve data source experience and Common Data Service views
We are happy to announce the preview version roll out for the Improve data source experience and Common Data Service views feature this week. This feature has been evolving under the experimental flag and is ready to be on for all new canvas apps by defaulting the feature on.
New data sources pane
The sidebar now includes a Data sources panel icon and pane which replaces many of the data panels that open over the right edge of the canvas area. This panel allows adding data sources into the app or creating new connections without inserting a control. It provides an easy way to see the data source in your app and perform actions like refresh or delete.
Entity view selection
When a Common Data Service entity is used as a data source, a view can be selected in the property pane and the Items property is updated. The property pane will update the Items property to add the Filter function taking the the view name as the filter.
A big benefit of working with Common Data Service views is that the query for the view is run on the server – not locally on your device. This means you avoid delegation issues with the core query. In addition you have the flexibility to append other filter conditions that are delegated if supported. For more advanced queries just nest the Filter function within other functions using the formula bar.
Combo box data source selection
The combo box control also supports the data source selection call out and view selection. This is the same as the Gallery and Data Table controls.
Change Common Data Service environment
Data source selection call out can change the environment to get a Common Data Service entity from another environment. This works within the same tenant. The Current environment is app’s environment and changes when the app moves to a new environment. Other environment selections stay the same when the app moves to a new environment.
Improved data field defaulting
When a Gallery or Data Table control is bound to an entity, the fields are defaulted using the Default Public View. This improves the initial fields used and can be controlled by editing that view. Field defaulting only happens when the entity is set as the data source and after that fields are managed with the data panel.
In addition to the general experience improvements, this feature provides significant performance and stability improvements for working with the Common Data Service. Customers will find that all of the functionality enabled with the “Relational data, option sets, and other new features for Common Data Service” preview switch is also enabled with this new feature along with additional bug fixes and improvements.
Lookup to second level tables
Currently this feature enables lookup to first level tables. For instance, if you have the Accounts table with a lookup to Contacts (Primary Contact is the relation name). This would work with
Accounts.'Primary Contact'.'Full Name'
If you want to access the Created By field which is a lookup to User, this formula will not work.
Accounts.'Primary Contact'.'Created By'.'Full Name'
Instead you will need to use a formula like the following:
Lookup(Contacts, Contact = ThisItem.'Primary Contact' .Contact).'Created By'.'Full Name'
Upgrade your app
This feature switch is now “on” by default for all new applications. Note that if you turn on this feature switch for an existing canvas app that uses Common Data Service, we will not automatically upgrade your entity data sources. To upgrade your app with existing entity data sources:
- Remove your existing Common Data Service data sources
- Turn on this switch (“Improve data source experience and Common Data Service views”)
- Re-add your Common Data Service data sources using the new data source selection experience
Try out these the preview feature and its enhancement and give us feedback at PowerApps Community.