Esercizio - Aggiunta di funzionalità lato client avanzate
Lo scopo di questa esercitazione pratica è quello di dimostrare come aggiungere codice JavaScript a una pagina per eseguire il rendering dei dati di Microsoft Dataverse sotto forma di grafico usando una libreria di grafici esterna con i dati recuperati da Dataverse tramite l'API Web dei portali.
Gli esercizi funzionano in modo ottimale quando si dispone di dati di esempio con cui lavorare. In base all'ambiente in cui si sta lavorando, è possibile installare alcuni dati di esempio per gli esercizi. Microsoft Power Platform fornisce la possibilità di aggiungere i dati di esempio necessari. Se nell'ambiente in cui si sta lavorando non sono presenti dati di esempio, seguire i passaggi nella documentazione Aggiungere o rimuovere dati di esempio per installarli.
Obiettivi di apprendimento
L'obiettivo di questi esercizi è mostrare come:
Configurare le impostazioni del sito e le autorizzazioni di tabella per abilitare le richieste dell'API Web dei portali.
Aggiungere codice inline a una pagina Web di contenuto per recuperare e trasformare i dati usando l'API Web dei portali.
Usare una libreria JavaScript esterna per tracciare i dati trasformati.
Prerequisiti
Per questo esercizio, assicurarsi che i parametri seguenti siano impostati nell'ambiente in uso:
Un sito Web Power Pages con provisioning effettuato. Se non si dispone di un sito Web Power Pages, seguire le istruzioni nella documentazione Creare un sito con Power Pages per crearne uno.
Accesso alla home page dell'ambiente di creazione di Power Pages.
Procedura generale
Per portare a termine l'esercizio, completare le seguenti attività:
Creare le impostazioni del sito e le autorizzazioni di tabella che consentono all'API Web dei portali di leggere le richieste nella tabella degli account.
Creare una pagina di contenuto e aggiungere codice JavaScript che recupera e trasforma i dati.
Aggiungere una libreria di grafici alla pagina e al codice JavaScript usando la libreria per creare un grafico con i dati recuperati.
Procedura dettagliata
Per completare questo lab, effettuare i seguenti passaggi:
Abilitare le richieste dell'API Web dei portali
Questa sezione descrive come abilitare le richieste API Web dei portali alla tabella accounts.
Creazione delle impostazioni del sito
Per creare le impostazioni del sito, effettuare i seguenti passaggi.
Accedere alla schermata home di Power Pages.
Selezionare l'ambiente corretto nell'angolo in alto a destra.
Selezionare il menu con i puntini di sospensione (...), quindi scegliere Power Pages Management.
L'app Power Pages Management viene visualizzata in una nuova scheda.
Selezionare Impostazioni sito.
Selezionare + Nuovo, quindi immettere le informazioni seguenti:
Name - Webapi/account/enabled
Sito Web: selezionare il proprio sito Web
Valore: true
Selezionare Salva.
Selezionare + Nuovo, quindi immettere le informazioni seguenti:
Name - Webapi/account/fields
Sito Web: selezionare il proprio sito Web
Value - name,numberofemployees,revenue
Selezionare Salva e chiudi.
Creazione delle autorizzazioni di tabella
Per creare le autorizzazioni di tabella, effettuare i seguenti passaggi.
Passare alla pagina home di Power Pages.
Selezionare Modifica per il sito Web di destinazione per aprire la finestra di progettazione di Power Pages.
Selezionare l'area di lavoro *Sicurezza, quindi Autorizzazioni di tabella.
Selezionare + Nuova autorizzazione, quindi compilare le informazioni seguenti:
Nome: Account
Tabella: Account (account)
Tipo di accesso: Globale
Autorizzazione per: Lettura
Selezionare Aggiungi ruoli e aggiungere Utenti anonimi e Utenti autenticati.
Selezionare Salva.
Test dell'API Web
Per testare l'API Web, aprire l'URL seguente: https://yourwebsite.powerappsportals.com/_api/accounts?$select=name,numberofemployees,revenue
L'output dovrebbe avere l'aspetto mostrato nell'immagine seguente.
Creazione di una pagina di contenuto e recupero dei dati
Per creare una pagina di contenuto e aggiungere codice JavaScript che recupera e trasforma i dati, effettuare i seguenti passaggi:
Nella finestra di progettazione selezionare l'area di lavoro Pagine, quindi selezionare+ Pagina.
Immettere Grafico come Nome pagina.
Verificare che sia selezionata l'opzione Aggiungi pagina allo spostamento principale.
Selezionare il layout Inizia da modello vuoto.
Selezionare Aggiungi.
Selezionare Modifica codice.
Nella finestra popup selezionare Apri Visual Studio Code.
Nell'editor Visual Studio Code selezionare il file Chart.en-US.customjs.js.
Aggiungere il seguente script:
function makeChart(rawData) { // transform raw data into plotting array var rData = rawData.value.map(({ name, revenue, numberofemployees }) => ({ "x": numberofemployees, "y": revenue, "z": (!revenue) ? 1 : numberofemployees / revenue, "name": name })); console.log(rData); } // retrieve accounts data using portals Web API $(document).ready(function() { $.get('/_api/accounts?$select=name,numberofemployees,revenue', makeChart, 'json'); });
Premere il tasto di scelta rapida Ctrl + S (⌘ + S su Mac) per salvare il file.
Chiudere la scheda Visual Studio Code. Quando richiesto, selezionare Sincronizza per sincronizzare le modifiche.
Selezionare Anteprima > Desktop.
Quando viene visualizzata la pagina, premere il tasto F12 per visualizzare gli strumenti di sviluppo del browser.
Verificare che l'output della console contenga gli stessi dati recuperati in precedenza, ma non trasformati.
La struttura dei dati è ora pronta per la tracciatura. Assegnare le etichette appropriate ai punti dati:
nome: nome della società
x: numero di dipendenti
y: ricavi della società in migliaia
z: ricavi per dipendente (calcolati)
Aggiunta funzionalità di libreria esterna
Questo esercizio usa la libreria Highcharts.js (gratuita per uso personale o senza scopo di lucro) per creare un grafico a bolle basato sui dati.
Passare allo studio di progettazione.
Selezionare il piè di pagina, quindi selezionare Modifica codice.
Nella finestra popup selezionare Apri Visual Studio Code.
Aggiungere il codice seguente alla fine del file.
<script src="https://code.highcharts.com/highcharts.js"></script> <script src="https://code.highcharts.com/highcharts-more.js"></script>
Premere il tasto di scelta rapida Ctrl + S (⌘ + S su Mac) per salvare il file.
Chiudere la scheda di Visual Studio Code.
Selezionare Modifica codice sulla barra degli strumenti per aprire Visual Studio Code per la pagina.
Selezionare il file Chart.en-US.customjs.js.
Modificare il file per cambiare la funzione makeChart come segue:
function makeChart(data) { console.log(data); var rData = data.value.map(({ name, revenue, numberofemployees }) => ({ "x": numberofemployees, "y": revenue, "z": (!revenue) ? 1 : numberofemployees / revenue, "name": name })); console.log(rData); // new code to plot the data Highcharts.chart($('.mychart')[0], { title: { text: "Customers efficiency" }, legend: { enabled: false }, xAxis: { title: { text: "Number of employees" } }, yAxis: { title: { text: "Turnover ($K)" } }, tooltip: { pointFormat: '<strong>{point.name}</strong><br/>Employed: {point.x}<br>Turnover ($K): ${point.y}', headerFormat: '' }, series: [{ type: 'bubble', data: rData }] }); } // retrieve accounts data using portals Web API $(document).ready(function() { $.get('/_api/accounts?$select=name,numberofemployees,revenue', makeChart, 'json'); });
Premere il tasto di scelta rapida Ctrl + S (⌘ + S su Mac) per salvare il file.
Selezionare il file Chart.en-US.webpage.copy.html.
Inserire il codice seguente nell'elemento
<div>
interno:<figure> <div class="mychart"></div> </figure>
Premere il tasto di scelta rapida Ctrl + S (⌘ + S su Mac) per salvare il file.
Chiudere la scheda Visual Studio Code, quindi selezionare Sincronizza per sincronizzare le modifiche.
Selezionare Anteprima > Desktop.
Ora l'output dovrebbe includere il grafico a bolle. Passare il mouse sulle bolle per verificare i dati.