Creazione di un'app da 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.

Imparerai a...

Generare un'appGenerate an app

In questa sezione del corso si creerà un'app in base a entità di Common Data Service,In this section of the course, we'll create an app based on entities in the Common Data Service. ossia blocchi di dati condivisi che possono essere modificati, archiviati e recuperati e con i quali è possibile interagire.Entities are chunks of shared data that can be modified, stored, retrieved, and interacted with. Si genererà l'app da un'entità e si mostrerà come personalizzare l'app, aggiungere un'altra origine dati e attivare un flusso dall'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. Se si è già completata la sezione relativa alla creazione di un'app da un elenco di SharePoint, in questa sezione verranno trattati alcuni argomenti simili, ma in modo più approfondito, soprattutto per quanto riguarda la personalizzazione dell'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.

Si creerà un'app per la gestione dei casi che può essere usata da un reparto IT per tenere traccia dei problemi di hardware e software segnalati all'interno dell'organizzazione, definirne la priorità e provvedere agli interventi di assistenza.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. Durante la lettura degli argomenti, può essere utile riflettere sulle possibilità che un'app di questo tipo può offrire ad altri utenti.As you go through the topics, you might also think of other uses for an app like this. In questo caso si usano i dati di Common Data Service perché sono particolarmente adatti per l'archiviazione dei dati dell'app, ma è possibile creare la stessa app con un'origine dati diversa.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 include un modello Case Management più complesso in cui sono definite le stesse entità dell'app che verrà creata.PowerApps includes a more complex Case Management template that uses the same entities as the app we'll build. Dopo aver completato questa sezione, è consigliabile esplorare tale modello per avere un'idea delle opportunità offerte da PowerApps.After you've completed this section, we encourage you to explore that template to get a sense of what you can build in PowerApps.

Creare un database di Common Data ServiceCreate a Common Data Service database

Il primo passaggio da eseguire per creare questa app consiste nel creare un database di Common Data Service, se non ne è già stato creato uno.The first step in building this app is to create a Common Service database if you don't already have one. La creazione di un database di Common Data Service avviene in un ambiente.You create a Common Data Service database in an environment. Gli ambienti sono contenitori per app e altre risorse. Più avanti in questo corso verranno fornite altre informazioni sugli ambienti.An environment is a container for apps and other resources (you'll learn more about environments later in the course). Un amministratore di ambiente può seguire questi passaggi per creare un database. Se non si ha il ruolo di amministratore, contattare un amministratore dell'organizzazione.An environment admin can follow these steps to create a database (if you're not an admin, check with an admin in your organization).

Nella scheda Home fare clic su Create Database (Crea database).From the Home tab, click Create Database.

Common Data Service - Creare il database

Specificare se si vuole limitare l'accesso al database e quindi fare clic su Create my database (Crea database personale). In questo esempio l'accesso non sarà limitato.Specify whether you want to restrict access to the database (we'll keep it open), then click Create my database.

Common Data Service - Specificare l'accesso

Al termine del processo, saranno visibili tutte le entità standard incluse in Common Data Model.When the process is complete, you see all the standard entities that are included in the common data model. Alcune sono visualizzate nell'immagine seguente.Some of them are shown below.

Entità standard di Common Data Service

Generare un'app dall'entità CaseGenerate an app from the Case entity

Dopo aver creato il database, si stabilisce una connessione all'entità Case e si genera un'app.Now that the database is created, we connect to the Case entity and generate an app. Fare clic su New app (Nuova app) e quindi su PowerApps Studio for web (PowerApps Studio per il Web).Click New app, then PowerApps Studio for web.

Nuova app in PowerApps Studio per il Web

Poiché si sta sviluppando un'app per smartphone relativa a un'entità di Common Data Service, in Common Data Service fare clic o toccare Phone layout (Layout Telefono).We're building a phone app for a Common Data Service entity, so under Common Data Service click or tap Phone layout.

App per smartphone basata su Common Data Service

Nella schermata successiva scegliere una connessione e un'entità a cui connettersi e quindi fare clic su Connect (Connect).In the next screen, you choose a connection and an entity to connect to, then click Connect.

Connettersi a un'entità Case

Dopo che si è fatto clic su Connect (Connetti), PowerApps inizia a generare l'app.After you click Connect, PowerApps starts to generate the app. PowerApps è in grado di formulare deduzioni sui dati in modo da generare un'app pratica e funzionale da usare come punto di partenza.PowerApps makes all sorts of inferences about your data so that it generates a useful app as a starting point.

Visualizzare l'app in PowerApps StudioView the app in PowerApps Studio

La nuova app a tre schermate viene aperta in PowerApps Studio.Your new three-screen app opens in PowerApps Studio. Tutte le app generate in base a dati presentano lo stesso set di schermate:All apps generated from data have the same set of screens:

  • La schermata di esplorazione, in cui è possibile esplorare, ordinare, filtrare e aggiornare i dati estratti dall'elenco, oltre ad aggiungere elementi facendo clic sull'icona con il segno più (+).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.
  • La schermata dei dettagli, in cui è possibile visualizzare altri dettagli su un elemento e scegliere di eliminarlo o modificarlo.The details screen: where you view more detail about an item, and can choose to delete or edit the item.
  • La schermata di creazione/modifica, in cui è possibile modificare un elemento esistente o crearne uno nuovo.The edit/create screen: where you edit an existing item or create a new one.

Nella barra di spostamento a sinistra fare clic o toccare un'icona nell'angolo in alto a destra per passare alla visualizzazione dell'anteprima.In the left navigation bar, click or tap an icon in the upper-right corner to switch to the thumbnail view.

Attivare o disattivare le visualizzazioni

Fare clic o toccare ogni anteprima per visualizzare i controlli su quella schermata.Click or tap each thumbnail to view the controls on that screen.

App generata

Negli argomenti successivi si esaminerà l'app più in dettaglio e la si personalizzerà per renderla più adatta a esigenze specifiche.Next we'll explore the app in more detail and then customize it to better suit our needs.

Esplorare un'app generataExplore a generated app

In questo argomento verrà esaminata più da vicino l'app generata, con particolare attenzione alle schermate e ai controlli che definiscono il comportamento dell'app.In this topic, we look more closely at the generated app - reviewing the screens and controls that define the app's behavior. Non tutti i dettagli verranno analizzati, ma le informazioni sul funzionamento di questa app saranno utili per creare app personalizzate.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 un argomento più avanti verranno esaminate le formule che interagiscono con schermate e controlli.In a later topic, we'll look at the formulas that work with screens and controls.

Eseguire l'app in modalità di anteprimaRun the app in preview mode

Fare clic o toccareClick or tap Freccia per avviare l'anteprima dell'app in alto a destra per eseguire l'app.in the top right to run the app. Se si esamina l'app, si noterà che include i dati dell'entità e offre un'esperienza predefinita ottimale.If you navigate through the app, you see that it includes data from the entity and provides a good default experience.

Eseguire l'app in modalità di anteprima

Informazioni sui controlli in PowerAppsUnderstanding controls in PowerApps

Un controllo è semplicemente un elemento dell'interfaccia utente a cui sono associati determinati comportamenti.A control is simply a UI element that has behaviors associated with it. In PowerApps molti controlli sono identici a quelli usati in altre app, ad esempio etichette, caselle di input di testo, elenchi a discesa, elementi di spostamento e così via.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. Tuttavia, PowerApps include anche controlli più specializzati come quelli appartenenti alle categorie Galleries (Raccolte), per la visualizzazione di dati di riepilogo, e Forms (Moduli), per la visualizzazione di dati dettagliati e per la creazione e la modifica di elementi.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). Sono disponibili anche altri controlli molto utili ed efficaci come Image, Camera e Barcode.And also some other really cool controls like Image, Camera, and Barcode. Per vedere i controlli disponibili, scegliere o toccare Inserisci sulla barra multifunzione e quindi scegliere o toccare le opzioni, una alla volta, da Testo a Icone.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.

Scheda Controls (Controlli) sulla barra multifunzione di PowerApps Studio

Esplorare la schermata di esplorazioneExplore the browse screen

Ciascuna delle tre schermate dell'app include un controllo principale e alcuni controlli aggiuntivi.Each of the three app screens has a main control and some additional controls. La prima schermata è quella di esplorazione, denominata BrowseScreen1 per impostazione predefinita.The first screen in the app is the browse screen, named BrowseScreen1 by default. Il controllo principale di questa schermata è una raccolta denominata BrowseGallery1.The main control on this screen is a gallery named BrowseGallery1. BrowseGallery1 contiene altri controlli, ad esempio NextArrow1, un controllo di tipo icona che consente di passare alla schermata dei dettagli.BrowseGallery1 contains other controls, like NextArrow1 (an icon control - click or tap it to go to the details screen). Nella schermata sono inoltre presenti controlli separati, ad esempio IconNewItem1, un controllo di tipo icona che consente di creare un elemento nella schermata di creazione/modifica.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).

Schermata di esplorazione con controlli

PowerApps offre un'ampia gamma di tipi di raccolte ed è quindi possibile usare quella più adatta ai requisiti di layout dell'app.PowerApps has a variety of gallery types so you can use the one that best suits your app's layout requirements. Più avanti in questa sezione si esamineranno altri modi per controllare il layout.You will see more ways to control layout later in this section.

Opzioni di raccolta di PowerApps

Esplorare la schermata dei dettagliExplore the details screen

La schermata successiva è quella dei dettagli, denominata DetailScreen1 per impostazione predefinita.Next is the details screen, named DetailScreen1 by default. Il controllo principale in questa schermata è un modulo di visualizzazione denominato DetailForm1.The main control on this screen is a display form named DetailForm1. DetailForm1 contiene altri controlli, ad esempio DataCard1, un controllo di tipo scheda, che in questo caso visualizza la categoria della domanda.DetailForm1 contains other controls, like DataCard1 (a card control, which displays the question category in this case). Nella schermata sono inoltre presenti controlli separati, ad esempio IconEdit1, un controllo di tipo icona che consente di modificare l'elemento corrente nella schermata di creazione/modifica.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).

Schermata dei dettagli con controlli

Sono disponibili molte opzioni di raccolta, ma i moduli offrono soluzioni più semplici e immediate, per la modifica o per la visualizzazione.There are lots of gallery options, but forms are more straightforward - it's either an edit form or a display form.

Opzioni di modulo di PowerApps

Esplorare la schermata di creazione/modificaExplore the edit/create screen

La terza schermata nell'app è quella di creazione/modifica, denominata EditScreen1 per impostazione predefinita.The third screen in the app is the edit/create screen, named EditScreen1 by default. Il controllo principale in questa schermata è un modulo di modifica denominato EditForm1.The main control on this screen is an edit form named EditForm1. EditForm1 contiene altri controlli, ad esempio DataCard8, un controllo di tipo scheda, che in questo caso consente di modificare la categoria della domanda.EditForm1 contains other controls, like DataCard8 (a card control, which allows you to edit the question category in this case). Nella schermata sono inoltre presenti controlli separati, ad esempio IconAccept1, un controllo di tipo icona che consente di salvare le modifiche apportate nella schermata di creazione/modifica.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).

Schermata di modifica con controlli

Ora che si ha un'idea della composizione dell'app con schermate e controlli, nell'argomento successivo si vedrà come personalizzare l'app.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.

Personalizzare l'appCustomize the app

Nei primi due argomenti di questa sezione è stata generata un'app da un'entità di Common Data Service ed è stata esaminata l'app per comprendere meglio la composizione delle app a tre schermate.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. Le app generate da PowerApps sono utili, ma spesso richiedono operazioni di personalizzazione.The app that PowerApps generated is useful, but you will often customize an app after it's generated. In questo argomento si esamineranno alcune modifiche della schermata di esplorazione dell'app.In this topic, we'll walk through some changes for the browse screen of the app. È possibile personalizzare tutte le schermate, ma si è preferito concentrare l'attenzione su una per approfondire maggiormente l'aspetto delle personalizzazioni.You can customize any of the screens, but we wanted to focus on one and provide a bit more depth to the customizations. È consigliabile prendere in considerazione un'app generata in base a un'entità, un file di Excel o un'altra origine per esaminare le possibilità di personalizzazione.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. Questo è il modo migliore per comprendere come sono fatte le app.It really is the best way to learn how apps are put together.

Quando ha generato l'app, PowerApps ha deciso quale layout usare e quali campi specifici visualizzare in ogni schermata.When PowerApps generated the app, it decided on a layout to use, and particular fields to show on each screen. Per questa app si sceglie un controllo di tipo raccolta dotato di una barra di stato che verrà poi personalizzata.For this app, let's choose a gallery control that has a status bar (we'll customize the status bar shortly). Nel riquadro di destra, nella scheda Layout, selezionare il layout desiderato.In the right-hand pane, on the Layout tab, select the layout you want. I risultati sono immediatamente visibili perché PowerApps aggiorna l'app mentre si apportano le modifiche.You see the results right away because PowerApps updates the app as you make changes.

Modificare il layout della schermata di esplorazione

Con il layout di base appropriato, modificare ora i campi visualizzati.With the right basic layout, now change the fields that are displayed. Fare clic o toccare un campo nel primo elemento e quindi, nel riquadro di destra, modificare i dati visualizzati per ogni elemento.Click or tap a field in the first item, then in the right-hand pane, change the data that is displayed for each item. In questo modo vengono visualizzate informazioni di riepilogo più chiare per ogni elemento incluso nell'entità.This provides a better summary of each item in the entity.

Modificare i campi della schermata di esplorazione

Modificare il tema dell'appChange the app theme

In modo del tutto simile a PowerPoint, PowerApps offre un set di temi che è possibile usare nell'app.PowerApps provides a set of themes you can use in your app, much like PowerPoint. Nella schermata seguente si vedranno il tema Dune (Duna) applicato e un logo semplice incollato nell'app.In the following screen, you see the Dune theme applied, and a simple logo that we pasted into the app. Si tratta di modifiche di base, che tuttavia possono migliorare notevolmente l'aspetto dell'app.These are basic changes, but can do a lot to improve the appearance of your app.

Modificare il tema e aggiungere un logo

Usare una formula per visualizzare lo stato del casoUse a formula to show the case status

Uno dei principali vantaggi offerti da PowerApps è quello di non dover scrivere il tradizionale codice dell'applicazione. Per creare app non è necessario essere sviluppatori.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! Tuttavia, bisogna trovare un modo per esprimere la logica e controllare le funzionalità di spostamento, filtro, ordinamento e altro ancora all'interno di un'app.But you still need a way to express logic in an app and to control an app’s navigation, filtering, sorting, and other functionality. A questo punto entrano in gioco le formule.This is where formulas come in.

Se si sono usate le formule di Excel, l'approccio di PowerApps dovrebbe risultare familiare.If you have used Excel formulas, the approach that PowerApps takes should feel familiar. Si supponga di voler visualizzare la barra di stato in verde se il caso è risolto o in rosso se, al contrario, non è risolto.Suppose you want to show the status bar in green if a case is resolved, or in red otherwise. A questo scopo, si seleziona il controllo dello stato sullo schermo e quindi si imposta la relativa proprietà Fill sulla formula nella barra della formula: 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). La formula è simile a una formula di Excel, anche se le formule di PowerApps fanno riferimento a controlli e ad altri elementi dell'app anziché a celle in un foglio di calcolo.This is like an Excel formula, but PowerApps formulas refer to controls and other app elements rather than cells in a spreadsheet. L'immagine seguente mostra dove impostare la formula e il risultato nell'app.The following image shows where to set the formula, and the result in the app.

Formula per visualizzare lo stato del caso

Ordinare e filtrare in base alla dataSort and filter based on date

Nella schermata di esplorazione l'app generata consente di eseguire la ricerca di casi e ordinare l'elenco di elementi nella raccolta.On the browse screen, the generated app lets you search for cases and sort the list of items in the gallery. Si rimuoveranno ora le funzionalità di ricerca e ordinamento sostituendole con la possibilità di visualizzare i casi in base a una data.We're going to remove the search and sort functionality in favor of showing cases based on a date. Anche se è possibile combinare i due metodi, per questa app verrà illustrato l'approccio basato sulla data.You could combine these methods, but we'll focus on the date-based approach for this app. L'immagine seguente mostra gli elementi aggiunti:In the image below, you see the items we added:

  • Un'etichetta di testo ("Show cases after:") che indica agli utenti quale operazione eseguire: Inserisci > Testo > Etichetta. Impostare la formula Fill su White.A text label ("Show cases after:") so users know what to do: Insert > Text > Label; change the Fill formula to White.
  • Un controllo selezione data: Insert (Inserisci) > Controls (Controlli) > Date picker (Selezione data).A date picker: Insert > Controls > Date picker.
  • Una formula che collega la proprietà Items della raccolta di esplorazione al controllo selezione data: Filter(Case, DatePicker1.SelectedDate < LastModifiedDateTime).A formula that connects the browse gallery Items property to the date picker: Filter(Case, DatePicker1.SelectedDate < LastModifiedDateTime).

La data è impostata sul 20 ottobre e si può vedere che l'app mostra i casi creati dopo questa data.The date is set to Oct 20 and you see the result that the app is showing the cases created after this date. Si noti che, per impostazione predefinita, a tutti i casi dell'entità è associata la stessa data dell'ultima modifica.Note that by default, all cases in the entity have the same last modified date. È possibile aggiornare uno o più casi per verificare il funzionamento del filtro.You can update one or more to see how filtering works. Le operazioni di gestione dei dati dell'entità verranno illustrate più avanti nel corso.We cover working with entity data later in the course.

App aggiornata per l'uso del controllo selezione data

Visualizzare il numero totale di casiShow total number of cases

In questo argomento sono stati trattati numerosi aspetti, comprese le personalizzazioni che tuttavia sono quasi completate.We're covering a lot of ground here, but we're almost done with the customizations. L'ultimo aspetto che verrà trattato riguarda l'aggiunta di etichette in cui vengono visualizzati due numeri: il numero totale di casi e il numero di casi corrispondenti al filtro basato sulla data.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.

Visualizzare i casi totali e quelli filtrati

Il video illustra in dettaglio come aggiungere le due etichette, ma le proprietà di base impostate per ciascuna etichetta sono le seguenti: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:

  • Align = CenterAlign = Center
  • Width = Parent.Width/2Width = Parent.Width/2
  • Casella di sinistra Text = "Total cases: " & CountRows(Case).Left box Text = "Total cases: " & CountRows(Case). Questo valore include tutti i casi compresi nell'entità.This includes all cases that are in the entity.
  • Casella di destra Text = Filtered cases: " & CountRows(BrowseGallery1.AllItems).Right box Text = Filtered cases: " & CountRows(BrowseGallery1.AllItems). Questo valore include solo i casi corrispondenti al filtro basato sulla data.This includes only those cases that match the date-based filter.

Le personalizzazioni dell'app sono ora completate. Nell'argomento successivo verranno aggiunti un'origine dati e un flusso e verrà illustrata l'app completata.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.

Aggiungere un'origine dati e un flussoAdd a data source and flow

Finora in questa sezione è stata generata un'app basata sull'entità Case di Common Data Service. L'app è stata quindi esaminata per capire come è fatta ed è stata personalizzata in vari modi.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. Nell'ultimo argomento di questa sezione si introdurrà un'altra entità standard e si userà Microsoft Flow per inviare un messaggio di posta elettronica.In the final topic for this section, we will bring in another standard entity, and use Microsoft Flow to send an email. L'app attiverà un flusso per inviare una notifica alla persona che ha aperto un caso quando questo viene aggiornato.The app will trigger a flow so that the person who opened a case is notified when the case is updated. L'obiettivo di questo argomento è completare un particolare scenario, ma le competenze che si acquisiranno sono applicabili a molti tipi di app.We're completing a particular scenario in this topic, but the skills you learn are applicable across many kinds of apps. Ecco alcune informazioni sulle entità.Let's get started with the entities.

Esaminare le relazioni tra entitàReview entity relationships

Prima di procedere ad aggiungere l'entità Contact, è opportuno esaminare la relazione esistente tra questa e l'entità Case.We'll add the Contact entity shortly, but first we'll look at how the Case and Contact entities relate to each other. Uno dei campi dell'entità Case è CurrentContact, con tipo di dati Lookup.In the Case entity, you see that one of the fields is CurrentContact, with a data type of Lookup. Ciò significa che questo campo viene usato in una relazione con un'altra tabella.This means that this field is used in a relationship with another table.

Campi dell'entità Case

Nella scheda Relationships (Relazioni) si vede che l'entità correlata è Contact.On the Relationships tab, you see that the related entity is Contact. Si tenga presente questa relazione perché verrà usata più avanti nell'argomento.Keep that in mind because we will use this relationship later in this topic.

Relazioni dell'entità Case

Aggiungere un'entità all'appAdd an entity to the app

Aggiungere un'origine dati in PowerApps è semplice.Adding a data source in PowerApps is straightforward. Nel riquadro di destra fare clic o toccare Data sources (Origini dati) e quindi Add data source (Aggiungi origine dati).In the right-hand pane, click or tap Data sources, then Add data source. In questo caso, scegliere la connessione Common Data Service e selezionare l'entità Contact.In this case, then choose the Common Data Service connection and select the Contact entity. Dopo che si è fatto clic o toccato Connect (Connetti), l'entità viene aggiunta all'app.After you click or tap Connect, the entity is added to the app.

Aggiungere l'entità Contact

Si noti che in questo esempio si aggiungono dati da un'altra entità, ma all'interno delle app è possibile combinare i dati estratti da molte origini.Note that in this example, we're adding data from another entity, but you can combine data from many sources in your apps.

Cercare le informazioni di contattoLook up contact information

Una volta visualizzati, i dati dell'entità Contact nell'app possono essere opportunamente usati.Now that we have access to the Contact entity data in our app, it's time to put it to use. Come accennato nell'introduzione, l'app dovrà inviare un messaggio di posta elettronica quando viene aggiornato un caso.As mentioned in the introduction, we want to send an email when a case is updated. A questo scopo, si useranno due formule e un flusso.We will use two formulas and a flow to accomplish this. La prima formula si riferisce alla schermata di modifica, in particolare alla proprietà OnSelect del pulsante di salvataggio.The first formula is for the edit screen, specifically the OnSelect property of the save button.

Schermata di modifica dell'app

Per impostazione predefinita, questo pulsante usa la formula SubmitForm(EditForm1) per inviare l'aggiornamento quando un utente modifica i dati nel modulo.By default, this button uses the formula SubmitForm(EditForm1) to submit the update when a user edits data in the form. Sarà necessario estendere la formula in modo che prima cerchi le informazioni di contatto relative alla persona che ha aperto il caso corrente e quindi le archivi a livello locale nell'app: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)

L'operazione è piuttosto complessa, ma è illustrata in modo dettagliato nel video a partire dal minuto 2:04.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.

Attivare un flusso dall'appTrigger a flow from the app

Dopo aver identificato il contatto per ogni caso, è possibile inviargli un messaggio di posta elettronica.Now that we know who the contact is for each case, we can send an email to them. Il messaggio può essere inviato direttamente dall'app, ma in questo esempio verrà mostrato come attivare un flusso dall'app.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. Il flusso è più semplice di quanto si possa immaginare e consente di inviare un messaggio di posta elettronica in base a un'azione eseguita in un'app.Here's the flow, which is as simple as it gets: send an email based on an action in an app. In questa sede non è possibile esaminare i flussi in dettaglio, ma è disponibile un'intera serie dedicata alla formazione guidata per Microsoft Flow.We won't get into more detail on flows here, but there is a whole Guided Learning series for Microsoft Flow.

Flusso per l'invio di un messaggio di posta elettronica

Tornando all'interno dell'app, è necessario chiamare il flusso in base a un evento.Back in the app, we need to call the flow based on an event. Si userà la proprietà OnSuccess del modulo di modifica, in modo che il flusso venga attivato al momento della modifica.We'll use the OnSuccess property of the edit form, so the flow is triggered when the edit succeeds. Fare clic o toccare il modulo di modifica e quindi sulla barra multifunzione fare clic o toccare Action (Azione) > Flows (Flussi).Click or tap the edit form, then on the ribbon click or tap Action > Flows. Selezionare il flusso che si vuole usare.Select the flow you want to use.

Flusso per l'invio di un messaggio di posta elettronica

Il flusso viene associato all'evento OnSuccess del modulo di modifica e si può fare riferimento al contatto per il messaggio di posta elettronica.The flow is now associated with the OnSuccess event of the edit form, and we can refer to the contact for the email. La formula seguente chiama il flusso con l'indirizzo di posta elettronica della persona che ha aperto il caso, a cui vengono aggiunti una riga di oggetto e il corpo del messaggio.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")

Le procedure per l'aggiunta di un'origine dati all'app e l'attivazione di un flusso per l'invio di un messaggio di posta elettronica sono completate.That's it for adding a data source to the app, and triggering a flow that sends an email. Se ancora non lo si è fatto, è consigliabile guardare i video,If you haven't watched the videos in this section already, we encourage you to do it. che si soffermano su molti dei dettagli trattati rapidamente negli argomenti.They fill in lots of the details that we've moved through quickly in the topics.

ConclusioniWrapping it all up

La sezione è conclusa.This brings us to the end of this section. Ci auguriamo di aver offerto un'esperienza formativa utile e interessante.We hope you've enjoyed it and learned a ton. All'inizio è stata generata un'app di base da un'entità. L'app è stata esaminata per capire come è fattaWe started out generating a basic app from an entity, and explored the app a little to understand how it's put together. ed è stata a lungo personalizzata. Si è quindi aggiunta un'origine dati e si è visto come attivare un flusso.We spent a good deal of time on customizing the app, then added a data source and saw how to trigger a flow. In questa sezione è stata sviluppata un'app specifica per la gestione dei casi, ma le competenze acquisite possono essere applicate a molti tipi di app.We built out a specific case management app in this section, but the skills you learned could be applied to many types of apps. Come accennato all'inizio della sezione, se si vuole esaminare un'app di gestione dei casi più complessa, è possibile esaminare il modello disponibile in PowerApps Studio per 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.

Nella sezione successiva verrà illustrata la gestione delle app.Next up we'll move into managing apps. La sezione relativa alla gestione mostra come condividere le app e controllarne le versioni e presenta gli ambienti, che sono contenitori per app, dati e altre risorse.The management section shows you how to share and version apps, and introduces environments, which are containers for apps, data, and other resources.

Congratulazioni!

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

Hai imparato a...

Esercitazione successiva

Managing apps

Autori di contributi

  • Michael Blythe
  • olprod