New Entity form control (experimental feature) for Common Data Service

The PowerApps team greatly values the feedback we receive from our community. One of the features that has been frequently requested is the ability for app authors to quickly and easily add forms to apps without having to build them from scratch. This is especially helpful when the forms are designed to work with existing data and common form design patterns such as displaying a list of records, viewing or editing a record are needed.

The PowerApps team is working hard to make this feature a reality and today we are happy to announce our first step in that direction. We have recently added an experimental control named Entity form in PowerApps. The Entity form control enables app authors to quickly add a form that enables end-users to view, navigate and edit relational data from the Common Data Service. Entity form control can be used with standard and custom Common Data Service entities.

We are calling this experimental for the following reasons.

  • Our goal is to allow quick addition of rich forms for all data source types, but the Entity form control currently only supports Common Data Service.
  • Entity form control provides limited customization capabilities compared to other PowerApps controls.
  • Entity form control is an initial exploration aimed at gathering feedback from our community to help guide the feature and future releases. This could result in significant changes to the control and limited backward compatibility.

Given the experimental nature, we recommend not using the Entity form control in production apps, at least for now. However, we invite you to try the Entity form control and let us know what you think about it and the overall feature to enable quickly adding rich forms to apps.

Entity form control features and capabilities

Entity form control is very versatile and can be used in many different scenarios. Using an Entity form an app author can:

Display a list of records

Entity form control displaying a list of sales orders.

Entity form control displaying a list of sales orders.

 

Display the details of a single record

Entity form control displaying the details of a sales order record.

Entity form control displaying the details of a sales order record.

 

Enable end-users to edit an existing record or create a new one

Entity form control being used to update the Order status of a sales order record.

Entity form control being used to update the Order status of a sales order record.

 

Connect it with another control

Two side-by-side connected entity form controls being used to display a list of sales orders and details of the sales order selected in the list.

Two side-by-side connected Entity form controls being used to display a list of sales orders and details of the sales order selected in the list.

 

Display forms in phone apps

Entity form control being used in a phone app to display a list of accounts. Entity form control being used in a phone app to display the details of an account record.

Entity form control being used in a phone app to display a list of accounts and details of an account record on two separate screens.

 

In addition, Entity form control also provides built-in capabilities to quickly enable rich end-user experiences.

Search bar to help users find records in a list

Searching a list of sales orders displayed in an entity form control to find sales orders with Order status = Confirmed.

Searching a list of sales orders displayed in an Entity form control to find sales orders with Order status = Confirmed.

 

Detailed lookups when editing a record

Lookup for Sales person field (Worker entity) when editing a sales order record.

Lookup for Sales person field (Worker entity) when editing a sales order record.

Entity form control and dynamic forms

Entity form control can display default (standard) forms for a given Common Data Service entity (standard or custom) to help speed up the app authoring process. These default forms are dynamic. A change made in a central place is automatically reflected in all the places where that form is being used. Default forms are also shared across apps. The dynamic and shared nature of default forms helps enforce consistency within and across apps and also makes maintenance easier.

Entity form control uses default field groups from Common Data Service entities to display the corresponding forms

  • To display the list form in tabular format, the Entity form control uses the DefaultList field group.
  • To display the list form in card format, the Entity form control uses the DefaultCard field group.
  • To display the details form, the Entity form control uses the DefaultDetails field group.
  • To display the lookup, the Entity form control uses the DefaultLookup field group.

To view or modify the field groups for an entity:

  • Sign in to powerapps.com, click or tap on Common Data Service in the left navigation pane, and then click or tap on Entities.
  • In the list of entities, click or tap on an entity you wish to view/modify field groups for, click or tap the Field groups tab, and then click or tap the DefaultList (or another) field group.
  • Add/remove/re-order fields as needed.

These changes will be automatically reflected in your app when using an Entity form control.

Example: To display the list form in tabular format for the Case entity, the Entity form control uses the DefaultList field group of the Case entity.

Entity form control displaying a tabular list form for the Case entity.
Entity form control displaying a tabular list form for the Case entity.
 
 
DefaultList field group of the Case entity that is used to dynamically generate the tabular list form.
DefaultList field group of the Case entity that is used to dynamically generate the tabular list form.

Note: Modifying field groups for standard entities is not supported but you can modify field groups for your custom entities to customize the fields that you want displayed in a form and their order.

To learn more about field groups, please refer to this article: Use field groups.

Adding an Entity form control in an app

Note: If you don’t have access to a Common Data Service database, create one before you start to follow these steps. If you are going to be using a custom entity, ensure that the DefaultList field group for your custom entity is setup using the instructions provided above.

When authoring an app, click or tap on the Insert tab of the toolbar, click or tap Forms, and then click or tap on Entity form (experimental). This will add an Entity form control to the current screen.

entityform-blog-01-01

In the right-hand pane, click on the database icon next to the text No data source selected, and then click or tap Add a data source.

entityform-blog-01-02

In the list of connections, click or tap the connection for Common Data Service.

entityform-blog-01-03

In the list of entities, click or tap to select an entity, and then click or tap Connect. This will create a data source for the entity you selected and also set the DataSource property of the Entity form control to that data source.

entityform-blog-01-04

You should now see the Entity form control displaying a list of records from the entity you selected.

We hope you find the Entity form control useful in speeding up the app authoring process. To learn more about the Entity form control, its properties and usage, please refer to this article: Use the Entity form control.

Interested in giving us feedback on this feature? Take this quick survey and join our research panel to give feedback on this and other parts of PowerApps.