Een app maken vanuit de Common Data ServiceCreating an app from the Common Data Service

Generate a three screen app from the Common Data Service, then explore screens and controls from the app. Update app screens, controls, and fields; bring in additional data and trigger a flow from the app.

U gaat leren hoe u...

Een app genererenGenerate an app

In deze sectie van de cursus maken we een app op basis van entiteiten in de Common Data Service.In this section of the course, we'll create an app based on entities in the Common Data Service. Entiteiten zijn blokken gedeelde gegevens die kunnen worden gewijzigd, opgeslagen, opgehaald en waarmee kan worden gecommuniceerd.Entities are chunks of shared data that can be modified, stored, retrieved, and interacted with. We genereren de app op basis van een entiteit, laten zien hoe de app kan worden aangepast, voegen een andere gegevensbron toe en roepen een stroom aan vanuit de app.We'll generate the app from an entity, show you how to customize the app, add another data source, and call a flow from the app. Als u de sectie over het maken van een app op basis van een SharePoint-lijst al hebt doorgenomen, worden hier enkele van dezelfde onderwerpen behandeld, maar gaan we daar dieper op in, met name wat betreft het aanpassen van de app.If you already completed the section on creating an app from a SharePoint list, we will cover some of the same territory but in more depth, especially around customizing the app.

We maken een app voor casebeheer die door een IT-afdeling kan worden gebruikt om problemen met hardware en software in een organisatie te volgen, te prioriteren en daar actie op te ondernemen.We'll create a case-management app that an IT department could use to track, prioritize, and act on hardware and software issues across an organization. Bij het doorlopen van de onderwerpen kunt u ook nadenken over andere gebruiksmogelijkheden voor een app als deze.As you go through the topics, you might also think of other uses for an app like this. We maken gebruik van gegevens uit de Common Data Service omdat deze geschikt zijn voor het opslaan van app-gegevens, maar u kunt voor dezelfde app ook een andere gegevensbron gebruiken.We're using data from the Common Data Service because it's well-suited to storing app data, but you could build the same app with a different data source.

PowerApps bevat een complexere sjabloon voor casebeheer die gebruikmaakt van dezelfde entiteiten als de app die wij gaan maken.PowerApps includes a more complex Case Management template that uses the same entities as the app we'll build. Nadat u deze sectie hebt doorgenomen, raden we u aan deze sjabloon te verkennen om een idee te krijgen van wat u in PowerApps allemaal kunt bouwen.After you've completed this section, we encourage you to explore that template to get a sense of what you can build in PowerApps.

Een Common Data Service-database makenCreate a Common Data Service database

De eerste stap in het bouwen van deze app is het maken van een Common Data Service-database als u die nog niet hebt.The first step in building this app is to create a Common Service database if you don't already have one. Een Common Data Service-database maakt u in een omgeving.You create a Common Data Service database in an environment. Een omgeving is een container voor apps en andere bronnen (we bespreken omgevingen verderop in de cursus ).An environment is a container for apps and other resources (you'll learn more about environments later in the course). Een omgevingsbeheerder kan deze stappen volgen om een database te maken (bent u geen beheerder, neem dan contact op met een beheerder in uw organisatie).An environment admin can follow these steps to create a database (if you're not an admin, check with an admin in your organization).

Klik of tik vanaf het tabblad Startpagina op Database maken.From the Home tab, click Create Database.

Common Data Service-database maken

Geef aan of u de toegang tot de database wilt beperken (we houden de database geopend) en klik of tik op Mijn database maken.Specify whether you want to restrict access to the database (we'll keep it open), then click Create my database.

Toegang tot Common Data Service opgeven

Nadat het proces is voltooid, ziet u alle standaardentiteiten die zijn opgenomen in het algemene gegevensmodel.When the process is complete, you see all the standard entities that are included in the common data model. Enkele daarvan worden hieronder weergegeven.Some of them are shown below.

Standaardentiteiten van Common Data Service

Een app genereren op basis van de Case-entiteitGenerate an app from the Case entity

Nu de database is gemaakt, maken we een verbinding met de Case-entiteit en genereren we een app.Now that the database is created, we connect to the Case entity and generate an app. Klik of tik op Nieuwe app en vervolgens op PowerApps Studio voor internet.Click New app, then PowerApps Studio for web.

Nieuwe app in PowerApps Studio voor internet

Omdat we een telefoon-app voor een Common Data Service-entiteit gaan maken, klikt of tikt u onder Common Data Service op Telefoonindeling.We're building a phone app for a Common Data Service entity, so under Common Data Service click or tap Phone layout.

Telefoon-app op basis van Common Data Service

In het volgende scherm kiest u een verbinding en een entiteit om verbinding mee te maken en klikt of tikt u op Verbinden.In the next screen, you choose a connection and an entity to connect to, then click Connect.

Verbinding maken met Case-entiteit

Nadat u Verbinden hebt gekozen, begint PowerApps met het genereren van de app.After you click Connect, PowerApps starts to generate the app. PowerApps trekt allerlei conclusies op basis van uw gegevens om een nuttige app als uitgangspunt te genereren.PowerApps makes all sorts of inferences about your data so that it generates a useful app as a starting point.

De app in PowerApps Studio weergevenView the app in PowerApps Studio

Uw nieuwe app met drie schermen wordt geopend in PowerApps Studio.Your new three-screen app opens in PowerApps Studio. Alle apps die worden gegenereerd op basis van gegevens hebben dezelfde reeks schermen:All apps generated from data have the same set of screens:

  • Het bladerscherm: voor het zoeken, sorteren, filteren en vernieuwen van de gegevens die zijn opgehaald uit de lijst en voor het toevoegen van items door op het pluspictogram (+) te klikken of te tikken.The browse screen: where you browse, sort, filter, and refresh the data pulled in from the list, as well as add items by clicking the (+) icon.
  • Het detailscherm: voor het weergeven van meer informatie over een item en waar u het item kunt verwijderen of bewerken.The details screen: where you view more detail about an item, and can choose to delete or edit the item.
  • Het scherm voor bewerken/maken: waar u een bestaand item bewerkt of een nieuw item maakt.The edit/create screen: where you edit an existing item or create a new one.

Klik of tik op een pictogram in de rechterbovenhoek van de linkernavigatiebalk om over te schakelen naar de miniatuurweergave.In the left navigation bar, click or tap an icon in the upper-right corner to switch to the thumbnail view.

Schakelen tussen weergaven

Klik of tik op een miniatuur om de besturingselementen in het betreffende scherm weer te geven.Click or tap each thumbnail to view the controls on that screen.

De gegenereerde app

Vervolgens gaan we de app nader verkennen en deze later aanpassen zodat hij beter aansluit op onze behoeften.Next we'll explore the app in more detail and then customize it to better suit our needs.

Een gegenereerde app verkennenExplore a generated app

In dit onderwerp gaan we dieper in op de gegenereerde app en bekijken we de schermen en besturingselementen die het gedrag van de app bepalen.In this topic, we look more closely at the generated app - reviewing the screens and controls that define the app's behavior. We behandelen niet alle details, maar als u meer weet over de werking van deze app, kan dat helpen bij het ontwikkelen van uw eigen apps.We won't go through all the details, but seeing more about how this app works will help you to build your own apps. In een later onderwerp kijken we naar de formules die zijn bedoeld voor schermen en besturingselementen.In a later topic, we'll look at the formulas that work with screens and controls.

De app in de voorbeeldmodus uitvoerenRun the app in preview mode

Klik of tik opClick or tap de pijl Voorbeeld van app starten rechtsboven om de app uit te voeren.in the top right to run the app. Als u door de app navigeert, ziet u dat deze gegevens uit de entiteit bevat en een goed uitgangspunt biedt.If you navigate through the app, you see that it includes data from the entity and provides a good default experience.

De app in de voorbeeldmodus uitvoeren

Over besturingselementen in PowerAppsUnderstanding controls in PowerApps

Een besturingselement is simpelweg een UI-element waaraan gedrag is gekoppeld.A control is simply a UI element that has behaviors associated with it. Veel besturingselementen in PowerApps zijn gelijk aan de besturingselementen die u in andere apps hebt gebruikt: labels, tekstinvoervakken, vervolgkeuzelijsten, navigatie-elementen enzovoort.Many controls in PowerApps are the same as controls that you've used in other apps: labels, text-input boxes, drop-down lists, navigation elements, and so on. Maar PowerApps heeft besturingselementen die meer gespecialiseerd zijn, zoals galerieën (voor de weergave van samenvattingsgegevens) en formulieren (die gedetailleerde gegevens weergeven en waarin u items kunt maken en bewerken).But PowerApps has more specialized controls like Galleries (which display summary data) and Forms (which display detail data and enable you to create and edit items). Er zijn ook andere interessante besturingselementen, zoals voor afbeelding, camera en streepjescode.And also some other really cool controls like Image, Camera, and Barcode. Als u wilt nagaan welke besturingselementen er beschikbaar zijn, klikt of tikt u op Invoegen op het lint en klikt of tikt u vervolgens op elk van de opties, van Tekst tot en met Pictogrammen.To see what's available, click or tap Insert on the ribbon, and then click or tap each of the options in turn, Text through Icons.

Tabblad voor besturingselementen op het lint van PowerApps Studio

Het bladerscherm testenExplore the browse screen

Elk van de drie app-schermen heeft een hoofdbesturingselement en enkele extra besturingselementen.Each of the three app screens has a main control and some additional controls. Het eerste venster van de app is het bladerscherm, dat standaard de naam BrowseScreen1 heeft.The first screen in the app is the browse screen, named BrowseScreen1 by default. Het hoofdbesturingselement in dit scherm is een galerie met de naam BrowseGallery1.The main control on this screen is a gallery named BrowseGallery1. BrowseGallery1 bevat andere besturingselementen, zoals NextArrow1 (in de vorm van een pictogram: klik of tik erop om naar het detailscherm te gaan).BrowseGallery1 contains other controls, like NextArrow1 (an icon control - click or tap it to go to the details screen). Er zijn ook afzonderlijke besturingselementen in het scherm, zoals IconNewItem1 (in de vorm van een pictogram: klik of tik erop om een item te maken in het scherm voor bewerken/maken).There are also separate controls on the screen, like IconNewItem1 (an icon control - click or tap it to create an item in the edit/create screen).

Bladerscherm met besturingselementen

PowerApps heeft verschillende typen galerieën. Gebruik de galerie die het beste aansluit bij de indelingsvereisten voor uw app.PowerApps has a variety of gallery types so you can use the one that best suits your app's layout requirements. Verderop in deze sectie ziet u nog meer manieren om de indeling te bepalen.You will see more ways to control layout later in this section.

Opties voor PowerApps-galerie

Het detailscherm verkennenExplore the details screen

Vervolgens is het de beurt aan het detailscherm, dat standaard de naam DetailScreen1 heeft.Next is the details screen, named DetailScreen1 by default. Het hoofdbesturingselement in dit scherm is een weergaveformulier met de naam DetailForm1.The main control on this screen is a display form named DetailForm1. DetailForm1 bevat andere besturingselementen, zoals DataCard1 (in de vorm van een kaart, waarbij in dit geval de categorie met vragen wordt weergegeven).DetailForm1 contains other controls, like DataCard1 (a card control, which displays the question category in this case). Het scherm bevat ook afzonderlijke besturingselementen, zoals IconEdit1 (in de vorm van een pictogram: klik of tik erop om het huidige item te bewerken in het scherm voor bewerken/maken).There are also separate controls on the screen like IconEdit1 (an icon control - click or tap it to edit the current item on the edit/create screen).

Detailscherm met besturingselementen

Er zijn tal van opties voor de galerie, maar voor formulieren zijn er slechts twee typen: een bewerkingsformulier of een weergaveformulier.There are lots of gallery options, but forms are more straightforward - it's either an edit form or a display form.

Opties voor PowerApps-formulieren

Het scherm voor bewerken/maken verkennenExplore the edit/create screen

Het derde scherm in de app is het scherm voor bewerken/maken, dat standaard de naam EditScreen1 heeft.The third screen in the app is the edit/create screen, named EditScreen1 by default. Het hoofdbesturingselement in dit scherm is een bewerkingsformulier met de naam EditForm1.The main control on this screen is an edit form named EditForm1. EditForm1 bevat andere besturingselementen, zoals DataCard8 (in de vorm van een kaart, waarmee u in dit geval de categorie met vragen kunt bewerken).EditForm1 contains other controls, like DataCard8 (a card control, which allows you to edit the question category in this case). Het scherm bevat ook afzonderlijke besturingselementen, zoals IconAccept1 (in de vorm van een pictogram: klik of tik erop voor het opslaan van de wijzigingen die u hebt aangebracht in het scherm voor bewerken/maken).There are also separate controls on the screen like IconAccept1 (an icon control - click or tap it to save the changes you made on the edit/create screen).

Bewerkingsscherm met besturingselementen

Nu u een beeld hebt van de manier waarop de app is samengesteld uit schermen en besturingselementen, gaan we in het volgende onderwerp bekijken hoe u de app kunt aanpassen.Now that you have a sense of how the app is composed of screens and controls, we'll look at how you customize the app in the next topic.

De app aanpassenCustomize the app

In de eerste twee onderwerpen van deze sectie hebt u een app gegenereerd op basis van een Common Data Service-entiteit en hebben we de app nader verkend om een beter beeld te krijgen van de manier waarop apps met drie schermen zijn samengesteld.In the first two topics in this section, you generated an app from a Common Data Service entity and explored the app to get a better understanding of how three screen apps are composed. De app die PowerApps heeft gegenereerd is handig, maar u zult een app vaak willen aanpassen nadat deze is gegenereerd.The app that PowerApps generated is useful, but you will often customize an app after it's generated. In dit onderwerp behandelen we enkele wijzigingen voor het bladerscherm van de app.In this topic, we'll walk through some changes for the browse screen of the app. U kunt elk van de schermen aanpassen, maar we wilden ons met maar één ervan bezighouden om wat dieper in te gaan op de aanpassingen.You can customize any of the screens, but we wanted to focus on one and provide a bit more depth to the customizations. Neem een van de apps die u hebt gegeneerd – op basis van een entiteit, een Excel-bestand of een andere bron – en zie hoe u deze kunt aanpassen.We encourage you to take any app you generate - from an entity, an Excel file, or another source - and see how you can customize it. Dit is zonder meer de beste manier om te leren hoe apps worden samengesteld.It really is the best way to learn how apps are put together.

Toen PowerApps de app genereerde, werd gekozen voor een bepaalde indeling en specifieke velden om op elk scherm weer te geven.When PowerApps generated the app, it decided on a layout to use, and particular fields to show on each screen. Voor deze app kiezen we voor een galeriebesturingselement met een statusbalk (we gaan de statusbalk verderop aanpassen).For this app, let's choose a gallery control that has a status bar (we'll customize the status bar shortly). Selecteer de gewenste indeling op het tabblad Indeling in het rechterdeelvenster.In the right-hand pane, on the Layout tab, select the layout you want. U ziet onmiddellijk de resultaten, omdat PowerApps de app bijwerkt terwijl u de wijzigingen aanbrengt.You see the results right away because PowerApps updates the app as you make changes.

De indeling van het bladerscherm wijzigen

Vanuit de juiste basisindeling gaat u nu de weergegeven velden wijzigen.With the right basic layout, now change the fields that are displayed. Klik of tik op een veld in het eerste item en wijzig vervolgens in het rechterdeelvenster de gegevens die voor elk item worden weergegeven.Click or tap a field in the first item, then in the right-hand pane, change the data that is displayed for each item. Dat biedt een beter overzicht van elk item in de entiteit.This provides a better summary of each item in the entity.

De velden in het bladerscherm wijzigen

Het app-thema wijzigenChange the app theme

PowerApps biedt een reeks thema's die u in uw app kunt gebruiken, net zoals in PowerPoint.PowerApps provides a set of themes you can use in your app, much like PowerPoint. In het volgende scherm wordt het thema Dune toegepast, samen met een eenvoudig logo dat we in de app hebben geplakt.In the following screen, you see the Dune theme applied, and a simple logo that we pasted into the app. Dit zijn eenvoudige wijzigingen, maar ze kunnen het uiterlijk van uw app aanzienlijk verbeteren.These are basic changes, but can do a lot to improve the appearance of your app.

Het thema wijzigen en een logo toevoegen

Een formule gebruiken om de status van een case weer te gevenUse a formula to show the case status

Een van de grootste voordelen van PowerApps is dat u geen traditionele toepassingscode hoeft te schrijven: u hoeft dus geen ontwikkelaar te zijn om apps te maken!One of the major benefits of PowerApps is not having to write traditional application code - you don’t have to be a developer to create apps! Maar u hebt wel een manier nodig om logica in een app op te nemen en om het navigeren, filteren, sorteren en andere functionaliteit van een app te regelen.But you still need a way to express logic in an app and to control an app’s navigation, filtering, sorting, and other functionality. Hier komt het gebruik van formules van pas.This is where formulas come in.

Als u Excel-formules hebt gebruikt, zal de manier waarop PowerApps werkt u bekend voorkomen.If you have used Excel formulas, the approach that PowerApps takes should feel familiar. Stel dat de statusbalk groen moet worden als een case is afgesloten of rood als dat niet het geval is.Suppose you want to show the status bar in green if a case is resolved, or in red otherwise. U doet dit door het statusbesturingselement op het scherm te selecteren en de eigenschap Fill van dat besturingselement in te stellen voor deze formule in de formulebalk: If(Status="Resolved", Color.Green, Color.Red).To do this, you select the status control on the screen, and then set the Fill property of that control to this formula in the formula bar: If(Status="Resolved", Color.Green, Color.Red). Dit is net zoals bij een Excel-formule, maar PowerApps-formules verwijzen naar besturingselementen en andere app-elementen in plaats van naar cellen in een werkblad.This is like an Excel formula, but PowerApps formulas refer to controls and other app elements rather than cells in a spreadsheet. In de volgende afbeelding ziet u waar de formule wordt ingesteld, samen met het resultaat in de app.The following image shows where to set the formula, and the result in the app.

Formule om de status van een case weer te geven

Sorteren en filteren op basis van datumSort and filter based on date

In het bladerscherm kunt u met de gegenereerde app zoeken naar cases en de lijst met items in de galerie sorteren.On the browse screen, the generated app lets you search for cases and sort the list of items in the gallery. We gaan de functionaliteit voor zoeken en sorteren verwijderen om in plaats daarvan cases op basis van een datum weer te geven.We're going to remove the search and sort functionality in favor of showing cases based on a date. U kunt deze methoden combineren, maar we gebruiken voor deze app de op datums gebaseerde aanpak.You could combine these methods, but we'll focus on the date-based approach for this app. In de volgende afbeelding ziet u de items die zijn toegevoegd:In the image below, you see the items we added:

  • Een tekstlabel ("Show cases after:") zodat gebruikers weten wat ze moeten doen: Invoegen > Tekst > Label; wijzig de formule Vullen in Wit.A text label ("Show cases after:") so users know what to do: Insert > Text > Label; change the Fill formula to White.
  • Een datumkiezer: Invoegen > Besturingselementen > Datumkiezer.A date picker: Insert > Controls > Date picker.
  • Een formule om de eigenschap Items van de bladergalerie te koppelen aan de datumkiezer: Filter(Case, DatePicker1.SelectedDate < LastModifiedDateTime).A formula that connects the browse gallery Items property to the date picker: Filter(Case, DatePicker1.SelectedDate < LastModifiedDateTime).

De datum wordt ingesteld op 20 oktober en u ziet als resultaat dat de app de cases laat zien die na deze datum zijn gemaakt.The date is set to Oct 20 and you see the result that the app is showing the cases created after this date. Standaard hebben alle cases in de entiteit dezelfde datum voor de laatste wijziging.Note that by default, all cases in the entity have the same last modified date. U kunt er een of meer bijwerken om te zien hoe filteren werkt.You can update one or more to see how filtering works. Verderop in de cursus behandelen we het werken met entiteitgegevens.We cover working with entity data later in the course.

App bijgewerkt om datumkiezer te gebruiken

Totaal aantal cases weergevenShow total number of cases

We hebben hier heel wat zaken behandeld, maar we zijn bijna klaar met de aanpassingen.We're covering a lot of ground here, but we're almost done with the customizations. Het laatste wat we in dit onderwerp gaan doen is labels toevoegen die twee getallen bevatten: het totaal aantal cases en het aantal cases dat overeenkomt met ons datumfilter.The last thing we'll do in this topic is add labels that show two numbers: the total number of cases and the number of cases that match our date-based filter.

Totaal aantal en gefilterde cases weergeven

De video laat zien hoe de twee labels worden toegevoegd, maar hier zijn de basisbeginselen met betrekking tot de eigenschappen die we voor elk label instellen:The video goes into detail about how to add the two labels, but here's the basics on which properties we set for each label:

  • Uitlijnen = CenterAlign = Center
  • Breedte = Parent.Width/2Width = Parent.Width/2
  • Linkervak Tekst = "Total cases: " & CountRows(Case).Left box Text = "Total cases: " & CountRows(Case). Dit omvat alle cases die zich in de entiteit bevinden.This includes all cases that are in the entity.
  • Rechtervak Tekst = Filtered cases: " & CountRows(BrowseGallery1.AllItems).Right box Text = Filtered cases: " & CountRows(BrowseGallery1.AllItems). Dit omvat alleen de cases die overeenkomen met het datumfilter.This includes only those cases that match the date-based filter.

Daarmee zijn de aanpassingen van de app achter de rug. In het volgende onderwerp gaan we een gegevensbron en een stroom toevoegen en krijgt u de voltooide app te zien.OK, that wraps up the app customizations - in the next topic we'll add a data source, and a flow, and show you the finished app.

Een gegevensbron en -stroom toevoegenAdd a data source and flow

In deze sectie hebben we tot nu toe een app gegenereerd op basis van de entiteit Case uit de Common Data Service, de app verkend om te zien hoe deze wordt samengesteld en hebben we de app op verschillende manieren aangepast.So far in this section, we have generated an app based on the Case entity from the Common Data Service, explored the app to see how it's put together, and customized the app in several ways. In het laatste onderwerp van deze sectie brengen we nog een standaardentiteit in en gebruiken we Microsoft Flow om een e-mail te verzenden.In the final topic for this section, we will bring in another standard entity, and use Microsoft Flow to send an email. De app activeert een stroom zodat de persoon die een case heeft geopend op de hoogte wordt gesteld wanneer de case wordt bijgewerkt.The app will trigger a flow so that the person who opened a case is notified when the case is updated. We voeren in dit onderwerp een bepaald scenario uit, maar de vaardigheden die u hier leert kunnen op allerlei apps worden toegepast.We're completing a particular scenario in this topic, but the skills you learn are applicable across many kinds of apps. Laten we beginnen met de entiteiten.Let's get started with the entities.

Entiteitrelaties bekijkenReview entity relationships

Zo meteen voegen we de entiteit Contact toe, maar eerst bekijken we hoe de entiteiten Case en Contact met elkaar in verband staan.We'll add the Contact entity shortly, but first we'll look at how the Case and Contact entities relate to each other. In de entiteit Case ziet u dat een van de velden CurrentContact is, met het gegevenstype Lookup.In the Case entity, you see that one of the fields is CurrentContact, with a data type of Lookup. Dit betekent dat dit veld wordt gebruikt in een relatie met een andere tabel.This means that this field is used in a relationship with another table.

Velden van entiteit Case

Op het tabblad Relationships kunt u zien dat Contact de gerelateerde entiteit is.On the Relationships tab, you see that the related entity is Contact. Houd dat in gedachten omdat we deze relatie verderop in dit onderwerp gaan gebruiken.Keep that in mind because we will use this relationship later in this topic.

Relaties van entiteit Case

Een entiteit toevoegen aan de appAdd an entity to the app

Het toevoegen van een gegevensbron in PowerApps is eenvoudig.Adding a data source in PowerApps is straightforward. Klik of tik in het rechterdeelvenster op Data sources en vervolgens op Add data source.In the right-hand pane, click or tap Data sources, then Add data source. Kies in dit geval de verbinding Common Data Service en selecteer de entiteit Contact.In this case, then choose the Common Data Service connection and select the Contact entity. Nadat u op Connect hebt geklikt of getikt, wordt de entiteit toegevoegd aan de app.After you click or tap Connect, the entity is added to the app.

Entiteit Contact toevoegen

In dit voorbeeld voegen we gegevens uit een andere entiteit toe, maar u kunt ook gegevens uit veel andere bronnen in uw apps opnemen.Note that in this example, we're adding data from another entity, but you can combine data from many sources in your apps.

Contactgegevens opzoekenLook up contact information

Nu we in onze app toegang tot gegevens van de entiteit Contact hebben, is het tijd om de app te gaan gebruiken.Now that we have access to the Contact entity data in our app, it's time to put it to use. Zoals vermeld in de inleiding, willen we een e-mailbericht verzenden wanneer er een case wordt bijgewerkt.As mentioned in the introduction, we want to send an email when a case is updated. We gaan daarvoor twee formules en een stroom gebruiken.We will use two formulas and a flow to accomplish this. De eerste formule is bestemd voor het scherm voor bewerken, om precies te zijn voor de eigenschap OnSelect van de knop voor opslaan.The first formula is for the edit screen, specifically the OnSelect property of the save button.

Scherm voor bewerken van app

Deze knop maakt standaard gebruik van de formule SubmitForm(EditForm1) om de update te verzenden wanneer een gebruiker gegevens in het formulier bewerkt.By default, this button uses the formula SubmitForm(EditForm1) to submit the update when a user edits data in the form. We gaan de formule bewerken zodat eerst wordt gezocht naar de contactgegevens voor de persoon die de huidige case heeft geopend, waarna die gegevens lokaal in de app worden opgeslagen:We need to add to the formula so that it first looks up the contact information for the person who opened the current case, and then stores that information locally in the app:

UpdateContext({contact:LookUp(Contact, ContactId=BrowseGallery1.Selected.CurrentContact.ContactId)}); SubmitForm(EditForm1)

Wel wat ingewikkeld, maar James geeft een heldere uitleg over het gebruik van deze formule vanaf 2:04 in de video.Yes, it's a little complex, but James does a great job of explaining this formula in more detail, starting at 2:04 in the video.

Een stroom vanuit de app activerenTrigger a flow from the app

Nu we weten wie de contactpersoon voor elke case is, kunnen we die persoon een e-mailbericht sturen.Now that we know who the contact is for each case, we can send an email to them. We zouden een e-mailbericht rechtstreeks vanuit de app kunnen verzenden, maar in dit voorbeeld laten we zien hoe u een stroom vanuit de app kunt activeren.We could send an email directly from the app, but for this example we'll show you how to trigger a flow from the app. Hier ziet u de stroom, en eenvoudiger kan het eigenlijk niet: op basis van een actie in een app een e-mail verzenden.Here's the flow, which is as simple as it gets: send an email based on an action in an app. We gaan hier niet verder in op stromen, maar er is een volledige serie van Gestuurd leren gewijd aan Microsoft Flow.We won't get into more detail on flows here, but there is a whole Guided Learning series for Microsoft Flow.

Stroom om e-mail te verzenden

Terug in de app moeten we de stroom aanroepen op basis van een gebeurtenis.Back in the app, we need to call the flow based on an event. We gebruiken de eigenschap OnSuccess van het bewerkingsformulier, waardoor de stroom wordt geactiveerd wanneer de bewerking is gelukt.We'll use the OnSuccess property of the edit form, so the flow is triggered when the edit succeeds. Klik of tik eerst op het bewerkingsformulier en vervolgens op Action > Flows op het lint.Click or tap the edit form, then on the ribbon click or tap Action > Flows. Selecteer de stroom die u wilt gebruiken.Select the flow you want to use.

Stroom om e-mail te verzenden

De stroom is nu gekoppeld aan de gebeurtenis OnSuccess van het bewerkingsformulier en we kunnen verwijzen naar de contactpersoon voor het e-mailbericht.The flow is now associated with the OnSuccess event of the edit form, and we can refer to the contact for the email. De volgende formule roept de stroom aan met het e-mailadres van de persoon die de case heeft geopend, samen met een onderwerpregel en de hoofdtekst van het e-mailbericht.The following formula calls the flow with the email address of the person who opened the case, as well as a subject line and the body of the email.

CaseResolvedEmailConfirmation.Run(contact.EmailPrimary, "Your case has been updated", "Check it out")

Met de formule wordt een gegevensbron toegevoegd aan de app en een stroom geactiveerd die een e-mailbericht verzendt.That's it for adding a data source to the app, and triggering a flow that sends an email. Als u de video's in deze sectie nog niet hebt bekeken, raden wij u aan dat alsnog te doen.If you haven't watched the videos in this section already, we encourage you to do it. Ze bevatten veel van de details die we in de onderwerpen slechts vluchtig hebben bekeken.They fill in lots of the details that we've moved through quickly in the topics.

Ter afsluitingWrapping it all up

Hiermee zijn we aan het eind van deze sectie gekomen.This brings us to the end of this section. We hopen dat u er veel van hebt kunnen opsteken.We hope you've enjoyed it and learned a ton. We begonnen met het genereren van een elementaire app op basis van een entiteit en hebben de app een beetje verkend om te begrijpen hoe deze in elkaar zit.We started out generating a basic app from an entity, and explored the app a little to understand how it's put together. We hebben een groot deel van de tijd besteed aan het aanpassen van de app, we hebben een gegevensbron toegevoegd en gezien hoe een stroom wordt geactiveerd.We spent a good deal of time on customizing the app, then added a data source and saw how to trigger a flow. We hebben in deze sectie een specifieke app voor casebeheer gemaakt, maar de vaardigheden die u hebt geleerd, kunnen voor veel soorten apps worden toegepast.We built out a specific case management app in this section, but the skills you learned could be applied to many types of apps. Aan het begin van deze sectie hebben we al gemeld dat als u een complexere app voor casebeheer wilt maken, u zeker gebruik moet maken van de sjabloon die beschikbaar is in PowerApps Studio voor Windows.As we mentioned at the beginning of this section - if you want to dig into a more complex case management app, be sure to check out the template that's available in PowerApps Studio for Windows.

We gaan nu verder met het beheren van apps.Next up we'll move into managing apps. In de sectie over beheren ziet u hoe u apps kunt delen en het versiebeleid kunt bepalen. Bovendien hebben we het over omgevingen, die kunnen worden gedefinieerd als containers voor apps, gegevens en andere bronnen.The management section shows you how to share and version apps, and introduces environments, which are containers for apps, data, and other resources.

Gefeliciteerd

You've completed the Creating an app from the Common Data Service section of Microsoft PowerApps Guided Learning.

U hebt geleerd hoe u...

Volgende zelfstudie

Managing apps

Medewerkers

  • Michael Blythe
  • olprod
  • Alisha-Acharya