Your cart is currently empty!
Tag: model-driven app
-
What is the difference between a model-driven app and a canvas app?
Building a model driven-app: session at 365 Power Up Philly conference. This past weekend, I was giving a presentation to Dynamics 365 system administrators and developers about how to make a model-driven app in PowerApps. I gave a very similar presentation at User Group Summit in 2019. In both sessions, the questions were mostly around the differences between model-driven apps and canvas apps. I consider myself an expert on model-driven apps. I build them often, for internal use at Reenhanced and more often for our many customers. I am not an expert on canvas apps. I default to my business partner, Nick Hance, to field those questions, since he is an expert on building them. He has experience building highly valuable canvas apps for customers and for himself to improve his own life (like here where he builds a canvas app to count daily pushups done for a challenge we are both doing!).
Nick and I thought it would be give a definitive answer to that one question that we so often hear: what is the difference between a model-driven app and a canvas app.
What is a model-driven app?A model-driven app is build on top of a data model (Dynamics 365, CDS, etc). From this data model, you can use a simple drag-and-drop interface to specify what is displayed to users in your App. Here’s a simple way to think of this: Dynamics 365 is your engine for a model-driven app. You will use Dynamics 365 components to build it. It looks and feels just like Dynamics 365. You’ll add on Dynamics 365 views, forms, charts, dashboards and reports. Use model-driven apps to streamline the user experience of Dynamics 365 and increase user adoption in your organization.
With your data stored in Common Data Service (CDS) as a database, a model-driven app provides Create, Review, Update, and Delete (CRUD) abilities on that CDS data. The model-driven app is a layer on top of your data to control how users see, update, and delete that data.
I’ve written a 6-part series on this blog about model-driven apps and how to build them. If you want to learn more, check out the first article here.
What is a canvas app?Canvas apps are not necessarily related to Model-Driven apps. They provide a PowerPoint-type interface where administrators can build an interactive experience connected to a variety of data sources. Canvas apps offer a much wider scope in capability than model-driven apps and allow for rapid prototyping and deployment of custom applications across device types.
If you can build a PowerPoint to demonstrate your application, you can likely build this experience using a Canvas app.
In general terms, when you think of a simple idea for an app, you build this using a drag and drop interface in Canvas apps. Canvas apps can completely replace the need for custom development when the application workflow is relatively simple.
What’s the difference?Model-Driven AppBegin with your data model (Common Data Service).Quickly provide Create, Review, Update, and/or Delete (CRUD) capabilities on my data.A model-driven app can only do Create, Review, Update, and Delete of data using forms from Dynamics 365.Controlled by the security roles in Dynamics 365. It offers fine-grained and field level security.Controls use the form builder from Dynamics 365. You can use all custom components and form controls from there.Built using simple drag-and-drop of controls and components. Capabilities of what an administrator can do are exposed and easy to see.Canvas AppBlank canvas: Design as you’d like. MANY database connections.Provide an interactive experience of my own design and am willing to invest more time to create.A canvas app can do everything that a model-driven app can do, but is more involved to setup and create.Not well suited to provide fine-grained security. It is a best practice to design a canvas app such that all users receive the same experience.Canvas apps have their own set of controls and have access to custom components. It’s likely there will be overlap in the future such that components can be used here and in Dynamics 365 forms.Use a drag and drop of simple controls but performing useful functions requires updating control attributes. It is not immediately evident what is possible and administrators must rely contextual recommendations to discover what each connector can do.Final ThoughtsModel-driven apps are well suited for a Dynamics 365 System administrator. The layout and components feel familiar to what you’re already using to manage your Dynamics 365 environment.
Canvas-apps require a more technical approach but offer a much wider set of capabilities. Once administration of Canvas apps are learned, an administrator’s capabilities are near limitless.
Do you need help building an App for your organization? Do you have a great idea and need some help figuring out the best way to approach it? Feel free to reach out to reenhanced! Fill out our Contact Form with details about what you’re working on, or email us directly at heidi@reenhanced.com and nhance@reenhanced.com.
-
Model-driven Apps: Benefits to Your Users
Welcome to the exciting conclusion of the model-driven app series! Today we will look at managing properties in a model-driven app. This series includes six articles that will help you to get to know and use model-driven apps and PowerApps:
Managing PropertiesBenefits to Your UsersBenefits to Your UsersA paramount part of designing your app is ensuring that your end users are part of the entire process. Follow user adoption best practices and involve your end user group in every aspect of the planning and design process. Have a few key members try out the app and record their feedback.
Beyond simply involving your end users, how does a model-driven app help them? Here are a few ways model-driven apps are tied to an increase in user adoption:
- Providing a customized model-driven app to experience CRM gives your end users with a streamlined way to access their data.
- Only show users the information they need to see. Understand your user group and update your Site Map accordingly. Display areas that they use, in groupings that make sense to them and how they do their job.
- Hide the noise they don’t need to see in order for them to complete their job successfully. Simplify the user experience.
Following the steps within the blog series and engaging your user group will lead to a nice, streamlined way to access data, with the ultimate goal of increasing user adoption.
-
Model-driven Apps in PowerApps: Managing Properties
Welcome to the fifth and penultimate article in the model-driven app series! Today we will look at managing properties in a model-driven app. This series includes six articles that will help you to get to know and use model-driven apps and PowerApps:
Managing PropertiesNow that we have reviewed security considerations, understood how to use the App Designer, learned about the controls and power of the Site Map and added components to the app, we can move on to reviewing some of the properties available.
In the App Designer, we have been working in the Components tab. If you click on the Properties tab, shown in the screen shot below, you have access to a number of areas to update and customize.
Click the properties tab in the App Designer. You can edit the following areas:
- Name: The name of the App that displays to users.
- Description: Description of the App that will appear to users.
- Icon: By default, it will use the Default image. Follow the steps below to update icon image.
- Advanced: Modify unique name, unified interface URL, add a welcome page and enable Mobile Offline in this area.
Adding a logo (or other Image) to your App!If you want to use an image apart from the default Microsoft image (below), you can follow these three simple steps:
Default image - Add New Web Resource to your solution
Add a new web resource & select image/logo. - In App Properties, uncheck the box “Use Default Image”
Uncheck this box! - Select the logo/image you added in step 1 and view a preview of the updated App image. When complete, click Save at the bottom of the Properties tab.
Preview your updated App image Building a Model-Driven App in Dynamics 365 Using PowerApps & Out-of-the-box Functionality Series Almost Complete!There is only one article left in our series: focused on the Users. Stay tuned for the exciting conclusion!
-
Model-driven apps in PowerApps: Components
Welcome to the fourth article in the model-driven app series! Today we will look at the Components in a model-driven app. This series includes six articles that will help you to get to know and use model-driven apps and PowerApps:
ComponentsIf you haven’t already familiarized yourself with the Site Map and how it works, take a moment to read the blog here. After you have created your Site Map, the next step is to add and define the various components on the App Designer.
Components are displayed on the right-hand side of the App Designer:
Components are listed in the panel on the right-hand side of the App Designer. The Site Map is your foundation and the components are the building blocks you layer on top to build your App. Components are comprised of:
- Artifacts: Entities, Dashboards and Business Processes Flows
- Entity Assets: Forms, Views, Charts and Dashboards
Components in the App Designer. Artifacts- Entities: In most scenarios, the Artifacts will populated based on what you have selected in the Site Map.
- Dashboards: Select the system dashboards that should be included in the app.
- Business Process Flows: Select any business process flows to add to your app. Any active, published business process flows
Entity AssetsOnce you start adding entity assets to your App, you can really work on streamlining and enhancing your end user experience! Always keep in mind who your audience is for this App. What are the only pieces needed for this group of users to do their job? The minimum amount here is key. Give them only what they need in order to successfully do their job and eliminate all of the other noise. This is my favorite part about model-driven apps and Dynamics 365. This sort of thing used to require custom code – and now I can use simple configuration to accomplish the same thing.
- Forms: Define which forms should display for each entity. At least one form must be selected for each entity.
- Views: Select only the necessary views to be included in this App. At least one view must be selected for each entity.
- Charts: Select any system charts for the entity.
- Dashboards: Select dashboards for the entity.
Now that you have created a Site Map for your app and added all components to is (both artifacts and entity assets), your model-driven app is really starting to look good! The final two parts of this series will cover properties you can set and why this is important to your end users.
-
Model-driven apps in PowerApps: Using the App Designer
Welcome to our second blog in the model-driven app series! Today we will focus on getting to know the App Designer. This series includes six articles that will help you to get to know and use model-driven apps and PowerApps:
Security ConsiderationsUsing the App DesignerSite MapComponentsManaging PropertiesBenefits to Your UsersA blank canvas to build your model-driven app! When you open your model-driven App in the App Designer, it will resemble the image above. You will notice a few main areas here:
- Site Map
- Dashboards
- Components (Artifacts & Entity Assets)
- Properties
Using the App Designer is fairly simple and should be familiar to System Administrators as it uses a similar drag and drop configuration style used in building business rules and business process flows. Microsoft has done an excellent job making configurations like these accessible to the less technical System Administrator (like yours truly!).
Let’s briefly look at each of these – as all of these areas will be covered thoroughly in subsequent articles.
App Designer AreasSite Map Controls which areas of Dynamics 365 can be accessed in this App Dashboards List of any system dashboard included in the App Components A list of entities and entity assets (forms, views, charts) that are in this App Properties Name and description of the App, custom icon (optional), unified interface URL Stay tuned for the rest of this series on building a model-driven app in Dynamics 365 using PowerApps, where we will dive deeper into the Site Map, Components and Properties.
-
Security Considerations when building a model-driven app in PowerApps
If you’re a Dynamics 365 System Administrator, chances are you’ve played around with building model-driven apps in PowerApps. By now, it’s become glaringly clear that this is the direction Microsoft CRM has headed and will continue to head when it comes to configuration and customization.
For those of you have not yet ventured into the world of model-driven apps, this blog series will introduce you to the components, security considerations and functionality to help you get started.
This series will include six articles that will help you to get to know model-driven apps and PowerApps:
Security ConsiderationsUsing the App DesignerSite MapComponentsManaging PropertiesBenefits to Your UsersSecurity ConsiderationsCreating Model-Driven Apps. When building a model-driven app in Dynamics 365 using PowerApps, it’s important to understand security pre-requisites. You will need the System Administrator or System Customizer security role in Dynamics 365, or another role with Create, Read & Write access for Model-driven app.
Accessing Model-Driven Apps. If you are using custom security roles in your organization, it is important to ensure your users have Read access to Model-driven apps on the Customization tab:
Applying security role(s) to App. Take security a step further with model-driven apps and streamline which apps appear for your users. Make sure that they only see the apps they need to see. Here are 4 simple steps to limit access to a model-driven app by security role:
1. Go to My Apps, then select Home
2. In the App box, click the ellipses icon next to the App name
3. A panel will open on the right-hand side. Select the security roles who should access the App.
4. Click Save at the bottom.
Stay tuned for the rest of this series on building a model-driven app in Dynamics 365 using PowerApps.
-
Reenhanced at User Group Summit
Reenhanced is thrilled to be speaking at thee events at the upcoming User Group Summit. If you will be at User Group Summit, be sure to stop by one of our sessions!
10 User Adoption & Training Best Practices You Can Implement TodayOrganizations of all shapes and sizes struggle with user adoption. All too often, new CRM technology is rolled out only to find that employees aren’t using it. They feel like it’s just another management tool. Join this session to learn best practices, tips and real-life examples of how organizations like yours have overcome the same struggles you are facing. This session will cover configuration, end user and training best practices and tips. “They need to learn how to use this to do their job. They will figure it out.” – Management Don’t let that be you! Come to this session and learn how to increase adoption at your organization. We will have time at the end for an interactive Q&A. Please feel free to share what has worked at your organization or ask questions to learn what your organization may be able to do better.
Join us for a workshop-type session where you can build a model-driven app in Dynamics 365 using out-of-the-box configuration. We will review components of a model-driven app, how to work with the App Designer, use the artifacts and entity assets to build your App and limit access using your organization’s security model. Then, we will be hands-on: bring your tablets or laptops and follow along. If you have appropriate permissions in your organization, I welcome you to build an App today as part of our session (in your Sandbox environment, of course!). Model-driven apps, when designed properly have the ability to streamline the user experience and simplify their journey in Dynamics 365. I will also point out limitations when accessing CRM data via an App versus the full web experience. When you leave this session, you will be equipped with the tools to build Apps for your organization (and/or possibly your first App built in the session!), including an understanding of best practices around App design.
You did it! After months of hard work, your Dynamics implementation is officially live. Users have licenses and have been trained. You are starting to see data flowing through the system. It’s a fairy tale ending! Or is it? Within weeks you start to hear users asking things such as “Hey, this is great, can we have a field over here for this?”, or “wait, I don’t remember how to do XYZ, can you remind me?” (or, worse yet, “do it for me?”), or “hey, I was listening to this podcast and they talked about this great product that does email marketing, let’s add that in tomorrow!”. The list goes on. Join this session to explore how to shift gears from project implementation to project maintenance and ensure your organization continues to push the envelope of organizational efficiency.
-
Adding a Logo or Custom Image to a Model-Driven App Tile
PowerApps are a great way for you to streamline the user experience in Dynamics 365. Available for Dynamics 365 Online Customers, creating an App is easier than ever with the PowerApps interface and drag-and-drop App Designer.
Today, let’s show you in a few simple steps how you can replace the Default Image for your App to be a custom image. In this example, I will use the Reenhanced logo. You can use your company’s logo or any image that works for the App you are building.
The default PowerApp Image Tile. This is what your users see when they select an App in Dynamics 365. 1. If your image/logo does not yet exist as a Web Resource, the first thing we need to do is add it. In a Dynamics 365 Solution File, add a new Web Resource.
Adding a new Web Resource to a Dynamics 365 Solution File. Name your Web Resource and upload file. Save, then Preview to ensure it looks right. Finally, Publish your Web Resource. 2. Open your Model-Driven App. Navigate to Properties in the control panel on the right-hand side of your App Designer.
3. Under Icon, uncheck the box next to Use Default Image.
Uncheck Use Default Image under the Properties tab, highlighted here. 4. In the search box above App Tile, find the Web Resource you added in step #1 and select it.
Select your new Web Resource and preview App Tile. Once you Save and Publish the changes in your App, your App Tile will be updated with the new image!