Announcing the general availability of the PowerApps Common Data Service (Previous Version)
Today we announced the general availability of PowerApps. This new service enables power users to solve problems that previously required professional development resources. Along with PowerApps we are happy to announce the general availability of the Common Data Service. This data service adds powerful data storage and modeling capabilities to PowerApps. Our objective for the Common Data Service is to enable the following capabilities for the PowerApps, Microsoft Flow and Pro development communities:
- An easy to provision, yet scalable data store
- A common data model with standard entity schema and behavior
- A powerful data access layer with support for data import, export and security
- Integration with Microsoft Office for Excel and Outlook
- A software developer kit (SDK) for professional development scenarios
The combination of PowerApps and the Common Data Service provides power users and enterprises a best of breed solution for rapid application development. It is now possible to build beautiful cross-platform, multi-data source applications in a fast iterative manner. At the same time, there is no trade off for data governance as apps run against a scalable, secure and compliant data store. The best of both worlds: fast iterative construction of beautiful apps on a secure and compliant data store.
PowerApps and Common Data Service – Best of both worlds
Additionally, combining the ability to use PowerApps and Microsoft Flow connectors and custom APIs against many existing services and applications with the ability to store data in the Common Data Service opens up new ways to build and deploy apps and business processes.
The Journey from Preview to General Availability
Thousands of you used our preview release of the Common Data Service shipped as part of PowerApps on August 8th. Thank you for your praise and constructive feedback!
“Easy to create new entities, just a few clicks”
“CDM has given a strong impact as a data-storage container. Not only the speed of saving but the quick response over powerapps.com”
“I applaud the fact that you are building a Power User database for PowerApps”
We have incorporated a lot of your feedback into this release and have a backlog we will continue to work on. Some of the items in this release based on your feedback are:
- Improved app from data generation on standard and custom entities with field groups
- Multi-field lookups
- Editable data import/export entity field mappings
- Ability to export data import/export templates
- Multi-sheet Excel import
- Simplified address type, complex types for Quantity, Person name, GUID, Date
- Central place to view entity relationships
- Simplified primary key definition
- Searchable fields allow for indexed searches
- Entity data explorer in creator portal
- Null support
- Default value support for simple data types
We will provide more details on these improvements in future blog posts. Please continue to provide your feedback on the PowerApps Ideas site with the label “CommonDataService”.
The Common Data Model
The Common Data Service contains a common data model consisting of standard entity definitions. We shipped 65 standard entities in 5 areas with the preview:
|Foundation||The Foundation entities contain information that is relevant to nearly every other entity group. This group contains entities such as Address and Currency.|
|People, organizations, and groups||These entities encompass a rich set of people and organizations that you might interact with, including employees, contractors, donors, volunteers, fans, alumni, and families.|
|Purchasing||The Purchasing entities let you create purchasing solutions.|
|Sales||The Sales entities let you create end-to-end sales solutions, from tracking leads and opportunities, to following through with contacts, to accepting and delivering orders, to sending invoices.|
|Case management||The Case Management entities manage issues from your customers, including tracking, escalation, and documentation.|
Almost all the standard entities have been used by you. Contact, Account, Organization, Case and Worker are the top 5 used. Feedback on entities is that you are creating quite a few custom ones that represent people:
- Social media identities
Our goal for the common data model is to ensure that data is not locked within app specific custom entities. The value of a common data model is greatly diminished when apps cannot share data. Standard entities allow apps to share common concepts and build on each others data.
We have made refinements to standard entities to make them easier to use and extend. One example is the use of the picklist data type to classify types of workers. The Worker entity now uses a new field, Worker.Type to specialize workers. This field is a picklist with values [Employee, Contractor, Volunteer]. In the near future we will roll out a feature to customize and create picklists which will complete the story and allow the Worker entity to be easily tailored for multiple scenarios. The common data model is our journey with you, with your help, we will continue to understand what should be common, what can be shared and what will drive productivity across apps.
Security is an integral part of the Common Data Service. It enables organizations to govern their data, who can access, what they can access and what they can do with it. We have released the first set of features in our security roadmap with entity level authorization. We have separated duties for users to maximize opportunties to separate productivity scenarios from data governance. There are four categories of users:
- Users who can use apps and flows that are shared with them
- Creators who can create and edit apps and flows
- Administrators who manage environments including data security
- Database Owners who can access all data and change entity schema
Separation of these categories of users allows organizations to let everyone build apps and flows for themselves and their teams while still keeping strict control over the organizations data.
The current release of the role based security model enables authorization at the entity level. Users or groups can be assigned security roles. Roles relate to permission sets which are a group of permissions that define access to one or more entities. Permission sets enable groups of related entities to be authorized together.
We are shipping out of the box permission sets to provide the building blocks for creating roles that secure standard entities. You can define permission sets that define access to your custom entities.
Those who don’t want to use role based security in their environments can simply turn it off and control access at the app level by sharing apps with users and groups. This release is just the first step in our security roadmap. Field level and row level security are in the plan. Look for additional blog posts for details on the current feature set and the roadmap.
Data Import Export and Integration
Getting bulk data loaded into a database is a defining feature. With the Common Data Service preview we provided a bulk data import feature that allows hundreds of thousands of records to be imported and exported efficiently.
Based on your feedback we have refined the experience and added a few more features. Exporting template files for entities is a new feature that allows you to quickly create Excel spreadsheets or CSV delimited files that match the schema of the target entity and can have a subset of the entity fields. The template designer let’s you pick fields that you care about and quickly add required fields.
Import and Export Features
Sometimes data does not come aligned with the target schema. We have added the editable field mappings to accommodate these cases. With editable mappings you can map source field names to the target entity field names.
There are more improvements and fixes for reported issues in this area. We also have a plan for creating automated integrations. Look for more information in the near future.
Productivity and Office Integration
Your productivity as a creator is top of mind for us. Interacting with data without the need to build anything is a key enabler. With this release we have added the Entity Data Explorer feature to make browsing your data even easier. You can access the entity data explorer by first clicking on an entity and then clicking on the data tab.
Entity Data Explorer
This is the first step for the entity data explorer feature. We plan to add create update and delete capability in the near future.
The August preview of the Common Data Service shipped with a great interactive Excel experience. All standard and custom entities can be interactively viewed and edited in Excel. The experience is powered by an Excel Add-in that provides data entry with data-type specific assistance for picklists, dates and lookups.
Excel Add-in – Data type specific experiences
We have done a number of updates to the Excel Add-in to improve quality and add support for the improvements made in the Common Data Service.
Letting you browse and manage your data as easily as possible is our goal. Simple browsing and updates are the basics, we want to do more with data. We want to combine data stored in Common Data Service with data you already have in office and relate to entities that you use daily like emails and meetings. The people and organization entities in the Common Data Model naturally complement email recipients and meeting attendees. We have introduced a preview feature to explore these possibilities with a new Outlook Add-in. The Outlook Add-in shows data from the Common Data Service related to the people in emails and meetings. In this first release, the Outlook Add-in only looks for related data in a few entities such as Cases. We are working hard to support showing related data from many more standard entities and all the custom entities that register for the service.
Outlook Add-in People and related data lookups
Integrating with Office applications and finding new and innovative ways to use the data stored in the Common Data Service is a priority for us. We are looking forward to hearing your feedback and ideas.
Delivering on the Vision
Enabling you to build beautiful cross platform, multi-data source applications in a fast iterative manner on a scalable, secure and compliant data store is our vision and goal. We will listen to your requirements and ideas and deliver continuously. We gave you a preview in August, we are delivering a major update in November. We have heard your requests for PowerBI integration. We understand that you need robust application lifecycle management features to help you build, test, deploy and sell your applications. We know that enterprises require richer security features. We hear you and are committed to making the PowerApps service the best place to build enterprise applications.
Call to Action
Get started with PowerApps and the Common Data Service by signing up at powerapps.com. Engage us on the PowerApps community site and provide your feedback and ideas via the PowerApps ideas site. Read the blog post about environments and if you used our preview service please read this post for details on how your content was moved to a new environment. As you start to build and share apps, explore standard entities, and build custom entities, think about the benefits of having a business data store that is easy to provision, customize, and share. Our journey together has just started – we will enable many more features, improve quality and focus on fundamentals with continuous iteration and delivery.
Migrating Preview Apps and data to General Availability
We are actively working on providing guidance on how you can migrate your Apps and Data from your Preview environments to General Availability. We’ll be posting this information shortly. Please check this blog post for details.
Please continue to share your feedback.
— The PowerApps and Common Data Service teams