Novità per le Formule di Power Apps

Siamo felici di annunciarti la disponibilità di alcune features molto attese per le formule Power Apps canvas.

Launch to self

Quando è in esecuzione in un browser web, un’app canvas può ora auto-rimpiazzarsi con un’altra app canvas o una web page. Si tratta di una funzionalità che gli utenti attendevano con ansia e la cui richiesta è aumentata ulteriormente nel periodo del COVID.

Per rispondere a queste necessità, Microsoft ha aggiunto un nuovo modo di utilizzare la funzione Launch. Attualmente i parametri vengono passati come una sequenza di coppie di stringhe nome valore:
Launch( “https://bing.com/search”, “q”, “Power Apps”, “format”, “rss” )

Poichè questa funzione può prendere un numero di argomenti arbitrari di qualsiasi tipo che possa condizionare una stringa, non vi era un modo corretto per aggiungere un argomento extra che specificasse la target tab per il launch. L’associazione tra gli argomenti di parametro è vasta e può diventare difficile selezionarla se vi è un lungo elenco.

È stato, quindi, aggiunto un nuovo modo di richiamare “Launch”: l’operazione viene fatta con un record invece che con coppie di argomenti. In questo modo, il nome e il valore di ciascun parametro sono molto più facili da associare:
Launch( “https://bing.com/search”, { q: “Power Apps”, format: “rss” } )

Inoltre, puoi aggiungere un nuovo parametro per il LaunchTarget:
Launch( “https://bing.com/search”, { q: “Power Apps”, format: “rss” }, LaunchTarget.Self )

Grazie a questa novità, potrai sostituire un’app canvas, eseguita su web browser, con un’altra app o una pagina web. Vediamo la feature in azione nell’app COVID qui sotto: da notare che la finestra del browser non cambia mentre ci si sposta tra le app canvas.

ATTENZIONE:

  • LaunchTarget funziona solo con la nuova sintassi del record. L’aggiunta al vecchio formato non avrà alcun effetto.
  • LaunchTarget non funziona nelle app integrate, come quelle ospitate in Power BI o SharePoint, e, in ogni caso, ve lo sconsigliamo. Non avreste infatti il controllo su come l’host accetta la richiesta per una nuova finestra.

Puoi leggere di più sull’argomento a questo link: https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/functions/function-param

Self Operator

Altra feature molto richiesta, che Microsoft sta introducendo, è quella del Self Operator.

Le formule spesso si riferiscono ad altre proprietà dello stesso controllo.
Ti sarà capitato di voler collegare due colori, probabilmente avendo HoverBorderColor con lo stesso valore di HoverColor. Se il controllo è Label1 allora dovresti impostare la proprietà HoverBorderColor su Label1.HoverColor.

Supponiamo tu stia copiando e incollando una formula ed il nome del controllo del destinatario fosse diverso: dovresti modificarlo manualmente. Sarebbe preferibile utilizzare un riferimento relativo, in cui la proprietà HoverBorderColor sia impostata su Self.HoverColor.
Self Operator è molto simile all’operatore Parent esistente.

Self vs. This

Perché lo chiamiamo Self invece di This? Entrambi i termini sono ampiamente utilizzati nei linguaggi informatici e sono emersi due argomenti principali per Self:

  • Esiste già un operatore Parent, e un giorno potrebbe esserci un operatore Children. Self si adatta più naturalmente a questa gerarchia.
  • Esiste già ThisItem e Microsoft presenterà a breve ThisRecord, mentre ThisUser e ThisChannel sono all’orizzonte. Se se ci fosse solo un semplice This, esso porterebbe alla domanda “Questo cosa?”. “This*” riguarda i dati e non i controlli.

Pe approfondimenti sull’argomento trovi la documentazione a questo link: https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/functions/operators

Tempistiche

Microsoft ha introdotto le modifiche per Launch prima di sapere che avrebbe aggiunto la parola chiave Self. Poichè è coerente con la funzione Window.Open di JavaScript, ha scelto LaunchTarget.Self per sostituire la finestra corrente.

Sfortunatamente, l’aggiunta di un operatore Self non è compatibile con Self come valore di enumerazione. Con l’aggiunta dell’operatore, Power Apps inserisce automaticamente virgolette singole intorno a ‘Self’ in LaunchTarget.’Self’.
Comprendendo il conflitto di nomi, Microsoft ha già avviato il processo per sostituirlo con LaunchTarget.Replace. Inoltre, sta anche rinominando LaunchTarget.Blank in LaunchTarget.New (non è un operatore, ma in futuro potrebbe diventarlo).

LaunchTarget.Self è disponibile con la versione 3.20043, mentre LaunchTarget.’Self’ e l’operatore Self sono disponibili con la versione 3.20051. Ci sono molti fattori che influenzano quale sia la versione migliore per te, tra cui la tua regione. Quindi, il modo più semplice per sapere quale utilizzare, potrebbe essere quello di digitare LaunchTarget ed aggiungrvi il . per visualizzare le scelte possibili.

La buona notizia è che le tue formule si aggiorneranno automaticamente man mano che Microsoft apporterà le modifiche. È infatti presente un’altra funzionalità in Power Apps che tiene traccia della versione della lingua che stai utilizzando nella tua app ed aggiorna automaticamente le formule.


Le informazioni presenti in questo post, sono prese dall’articolo: https://powerapps.microsoft.com/en-us/blog/formulas-launch-to-self-and-self-operator/

È arrivato il componente “Power BI” che semplifica l’integrazione della Business Intelligence in Power Apps

Sappiamo tutti quanto possa essere complicato incorporare Power BI all’interno del portale PowerApps utilizzando il liquid tag.
Il motivo? L’utente deve richiedere i dati a Power BI e passarli al parametro corretto all’interno del liquid code.
Con questa feature, Microsoft vuole abilitare Power BI Embedded come componente principale nell’esperienza di progettazione del portale (proprio come avviene con Forms e List). Potrai aggiungere report o dashboard utilizzando il pannello delle proprietà, senza preoccuparti del liquid code.

Per iniziare

Per aggiungere un report o una dashboard seleziona il componente Power BI dall’apposito riquadro.
Una volta aggiunto alla pagina, potrai selezionare l’elemento che desideri dal pannello delle proprietà.

Aggiungere Dashboard/Riquadri
Per visualizzare le dashboard disponibili nell’area di lavoro desiderata, seleziona “Dashboard” alla voce “Type”.

Utilizzando il campo “Tile” puoi visualizzare solo un riquadro specifico della dashboard che hai selezionato.

Aggiungere un Report
Per visualizzare i report disponibili nell’area di lavoro, il procedimento è il medesimo: nel campo “Type” seleziona “Report”.

Configurare le opzioni avanzate

Applicare il Filtro
Le opzioni Avanzate, ti permettono di applicare i filtri.
Il parametro Filtro non deve contenere il valore ?filter= prefix.
Ad esempio, Table/Field eq ‘value’.
Trovi maggiori informazioni a questo articolo: https://docs.microsoft.com/it-it/power-bi/collaborate-share/service-url-filters

Applicare i Ruoli
Se in Power BI hai definito ed assegnato un ruolo ai report, dovrai immetterli in questo campo, come mostra l’immagine sottostante.
Poitrai inserirli separati da una virgola, ad esempio ruolo_1, ruolo_2.
Per ulteriori informazioni, ti rimandiamo al seguente articolo: https://docs.microsoft.com/it-it/power-bi/admin/service-admin-rls

Feedback
La tua opinione è preziosa!
I tuoi feedback permettono a Microsoft di continuare a migliorare le funzionalità e a crearne di nuove.
Racconta la tua esperienza sul portale di PowerApps: https://powerusers.microsoft.com/t5/Power-Apps-Portals/bd-p/PowerAppsPortals.

A questo link, invece, trovi la documentazione dettagliata: https://docs.microsoft.com/it-it/powerapps/maker/portals/compose-page#add-power-bi.


Le informazioni presenti in questo post, sono prese dall’articolo: https://powerapps.microsoft.com/en-us/blog/power-apps-portals-simplified-power-bi-integration-using-power-bi-component/

Lavorare con gli elenchi a cascata in SharePoint e Power Apps

Nella GIF qui sotto, vedrete come sia possibile collegare gli elenchi di SharePoint e mostrare solo un sottoinsieme dei dati.

Il collegamento a cascata è utile quando si dispone di più elenchi correlati tra loro e si desidera visualizzare solo le opzioni coerenti con la selezione operata in precedenza.

Nell’esempio qui sopra, viene creato un elenco che illustra le grandi innovazioni provenienti da vari paesi ed inserisce a cascata le innovazioni in base alla scelta della regione, filtrando i paesi per la regione specifica.

1. Liste SharePoint
Nell’esempio seguente vengono utilizzati tre diversi elenchi SharePoint.

Paese: contiene una singola riga di colonne di testo per il titolo e la regione. L’elenco è costituito da 231 paesi con regione associata. La vista utilizzata è il raggruppamento per regione. La tassonomia delle regioni del mondo, la trovate qui.

Regione: utilizzo del campo “Titolo” predefinito per il titolo della regione. Il campo di testo aggiuntivo “Paesi” viene utilizzato come segnaposto solo per la formattazione delle colonne.

Innovazioni: si tratta dell’elenco principale in questo esempio. In questo elenco è possibile aggiungere tutte le grandi innovazioni, utilizzando i campi di ricerca per “Regione” e “Paese” (e “Paese: Regione”) e una singola riga di colonna di testo per “Titolo”.

2. Formattazione delle colonne (JSON)

In questo passaggio viene costruito un oggetto JSON ed aggiunto alla formattazione della colonna per personalizzare la modalità di visualizzazione del campo colonna nell’elenco “Regione”. Al termine, il campo della colonna mostrerà un collegamento formattato alla vista raggruppata nell’elenco “Paese”.

Innanzitutto, verrà creato un collegamento di navigazione alla vista raggruppata nell’elenco “Paese”.

Fate click su un’intestazione di modo che l’elenco mostri solo quella. Quindi copiate l’URL e spostate “FilterValue1 =” alla fine dell’URL.

Passate all’elenco “Regione” e selezionate o create una nuova colonna di testo singolo denominata “Paesi”. Fate clic sull’intestazione della colonna “Paesi” e selezionate “Impostazioni colonna” e “Formatta questa colonna” per visualizzare la schermata di formattazione della colonna.

JSON

{
“$schema”: “http://columnformatting.sharepointpnp.com/columnFormattingSchema.json”,
“elmType”: “div”,
“style”: {
“display”: “inline-block”,
“padding”: “10px 0 10px 0”,
“min-height”: “auto”
},
“children”: [
{
“elmType”: “span”,
“style”: {
“display”: “inline-block”,
“padding”: “0 10px 0 0”
},
“attributes”: {
“iconName”: “Forward”
}
},
{
“elmType”: “a”,
“txtContent”: “Show Countries”,
“attributes”: {
“target”: “_top”,
“href”: {
“operator”: “+”,
“operands”: [
“INSERT_URL_HERE”,
“[$Title]”,
“&FilterType1=Lookup”
]
}
}
}
]
}

3. Power Apps (Filtro, Scelte)

Per personalizzare il modulo per l’elenco delle innovazioni aprire Power Apps nel browser. Nell’elenco “Innovazioni”, creare una nuova voce di elenco e scegliere “Modifica modulo”, quindi “Personalizza con PowerApps”. Attenzione, a seconda del vostro ambiente specifico, potreste visualizzare i comandi in maniera diversa. Per ulteriori informazioni vi rimandiamo all’articolo Personalizza un elenco di SharePoint o un modulo di libreria utilizzando Power Apps.

In Power Apps, selezionate la scheda “Paese” e nella scheda “Avanzate” selezionate “Sblocca per modificare le proprietà” per aprire le modifiche. A seconda dell’istanza specifica, i nomi forniti per i componenti potrebbero essere diversi: regolatevi di conseguenza.

Selezionate DataCardValue3 (Casella combinata) in Country_DataCard1 (Card) e poi il valore della funzione Items.

Poiché la funzione Scelte consente solo due valori (Id, Valore) per la ricerca nell’elenco Paesi, è necessario apportare alcune modifiche aggiuntive.

Assicuratevi che la colonna “Regione” sia selezionata nel campo di ricerca dell’elenco “Paese”. Fondamentalmente, apparirà in Power Apps come una tabella aggiuntiva.

Utilizzando la funzione “filtro” e l’operatore “in” ora è possibile fare riferimento ai valori in base all’Id dal “Paese” per mostrare il valore “Titolo” in base alla selezione della “Regione”.

Powerapps

Filter(Choices([@Innovations].Country), Id in Filter(Choices([@Innovations].’Country:Region’), Value = DataCardValue2.Selected.Value).Id)


Le informazioni presenti in questo post, sono prese dall’articolo: Working with Cascading Lists in SharePoint and Power Apps.

Nuove funzionalità geospaziali all’interno di Power Apps

Microsoft è entusiasta di condividere l’arrivo di nuove funzionalità geospaziali su Power Apps. Con queste nuove features, i produttori di app saranno in grado di introdurre rapidamente funzionalità basate sulla posizione nelle loro esperienze ed iniziare a digitalizzare i flussi di lavoro nello spazio fisico utilizzando gli strumenti che già conoscono.
Questi nuovi componenti sono basati sui servizi di Azure Maps .

Non è necessario essere uno sviluppatore professionista per trarne beneficio: i componenti possono essere aggiunti in modo molto semplice (drag-and-drop) e lo sviluppo è di tipo sviluppo low-code.

Mappe Interattive

Gif: Mappe Interattive in azione

Per migliaia di anni, le mappe sono state il modo migliore per visualizzare ed interpretare i dati di posizione: per questo, gli utenti si aspettano esperienze di mappatura dinamica di alta qualità. Con le nuove funzionalità geospaziali, i produttori saranno in grado di portare mappe interattive all’interno delle loro Power Apps.

Associare un set di dati contenente indirizzi o coordinate di latitudine e longitudine segnerà  tali posizioni sulla mappa come marcatori. Quando l’utente effettuerà lo zoom out, i marcatori potranno raggrupparsi per rappresentare gruppi di dati. La posizione corrente dell’utente può anche essere rappresentata sulla mappa su dispositivi mobili o esperienze web. Il componente mappa supporta anche le viste stradali e satellitari.

Suggerimento Indirizzo

GIF : suggerimento Indirizzo in azione

Inserire gli indirizzi è, molto spesso, un’attività frustrante e soggetta ad errori, specialmente in scenari mobile. Con il nuovo componente di input dell’indirizzo, durante la digitazione è possibile visualizzare suggerimenti di indirizzi dinamici. Utilizzando la logica di corrispondenza, il componente suggerirà diverse possibili  corrispondenze di indirizzi che l’utente potrà selezionare, rendendo più semplice e rapido l’inserimento di indirizzi precisi.

COVID 19
La pandemia di COVID-19 ha avuto un impatto senza precedenti su tutti. Reza Dorrani, MVP di Microsoft, ha creato un’app di monitoraggio Coronavirus che aiuta le persone a visualizzare i dati sulla diffusione del virus a livello globale. Per farlo, ha utilizzato il componente della mappa per mostrare i dati rilevati dalla Johns Hopkins University relativi al numero di casi in tutto il mondo. Reza ha potuto creare e pubblicare l’app in soli due giorni utilizzando Power Apps.
Per saperne di più sull’app e le funzionalità geospaziali, vi rimandiamo al canale YouTube di Reza.

Gif : app di Reza

Registratevi per la private preview
Le funzionalità sono in arrivo, in public preview, quest’estate assieme a molte altre feature. A questo link, potete Registrarvi per la preview ed iniziare a sperimentare.
Per ulteriori informazioni su queste e altre nuove entusiasmanti funzionalità sulla Power Platform, ecco l’evento di lancio virtuale di Microsoft Business Applications.

Le informazioni presenti in questo post, sono prese dall’articolo: New Geospatial Features in Power Apps.

Registrare i dati di telemetria delle app utilizzando Azure Application Insights

Microsoft è felice di annunciare una nuova funzionalità che consente agli app maker di raccogliere dati dettagliati di telemetria per le app Canvas.
Volete sapere quante persone stanno usando l’app, da dove accedono, quali siano le schermate più visitate, i dispositivi o i browsers più popolari? Oppure monitorare tutti gli errori presentati agli utenti? O ricevere automaticamente un avviso se gli errori aumentano improvvisamente? Con la vostra app connessa ad Azure Application Insights, è possibile raccogliere tutte queste informazioni per prendere decisioni aziendali più consapevoli e migliorare la qualità delle app.

Per iniziare
Prima di poter inviare i dati telemetrici per un’app, dovete creare una risorsa di Azure Application Insights dove immagazzinare gli eventi. Per creare una risorsa App Insights, seguite il seguente articolo.
Dopo aver creato la risorsa di App Insights, avrete bisogno della instrumentation key, che andrà copiata.

Registrare i dati di telemetria delle app utilizzando Azure Application Insights

Connettere la propria App ad Application Insights
Aprite la vostra app e selezionate l’oggetto App.
Nel pannello dell’oggetto App, aggiornate l’instrumentation key con l’instrumentation key di Azure App Insights.
Dopo averla aggiornata, salvate e pubblicate l’app.

Registrare i dati di telemetria delle app utilizzando Azure Application Insights

Questo è tutto quello che serve per iniziare a raccogliere i dati di telemetria per la vostra app.
Aprite l’app e navigate su varie schermate. Gli eventi di navigazione sulle varie schermate verranno automaticamente registrati in App Insights assieme alle informazioni su dove e da quali dispositivi e browsers è stata aperta l’app. Potrete vedere gli eventi e gli insights generati dall’aggiunta della instrumentation key all’app.

Visualizzazione degli eventi in App Insights
Aprite la risorsa di App Insights che è stata creata e selezionate Users nel menù di navigazione di sinistra. In questa schermata è possibile vedere quante persone hanno usato l’app (non si tratta di utenti unici, ma ne parleremo più avanti), il numero di sessioni per l’app e il numero di eventi registrati. Sono disponibili anche i dettagli su dove gli utenti siano localizzati, i browsers e i sistemi operativi utilizzati. Entrando in una delle sessioni degli utenti, è possibile esplorare informazioni dettagliate come per esempio la durata della sessione, le schermate visualizzate e i dettagli di transazione di basso livello.

Nella visualizzazione Events, troverete un sommario delle schermate visualizzate in tutte le sessioni dell’app. È possibile utilizzare queste informazioni per analizzare e capire l’uso delle schermate o delle funzionalità nell’app e prendere decisioni basate sui dati per tutte le nuove feature che intendete implementare. Per esempio, potreste maturate la decisione di voler interrompere investimenti futuri basandovi su specifiche schermate in cui si registra un basso utilizzo della funzionalità e concentrarvi su altre feature.

Registrare i dati di telemetria delle app utilizzando Azure Application Insights

Flow è un altro ottimo strumento che mostra come gli utenti navighino all’interno dell’app.
Potete utilizzarlo per analizzare i percorsi di navigazione più utilizzati.
È possibile ridurre i click e ottimizzare i percorsi alle funzionalità più popolari per gli utenti finali?

Registrare i dati di telemetria delle app utilizzando Azure Application Insights

Fino ad ora abbiamo visto dei minimi esempi delle funzionalità in App Insights.
Potete approfondire le prestazioni dell’app, Funnels e Cohorts e molte altre funzionalità predefinite di App Insights a questo articolo

Registrazione Personalizzata
Usando la nuova funzione Trace, è possibile scrivere tracce personalizzate direttamente in App Insights ed iniziare ad analizzare informazioni specifiche del proprio scenario.
Usate Trace per analizzare informazioni di utilizzo del controllo delle schermate, quali utenti specifici accedano all’app e quali errori si verifichino.
La funzionalità, può anche aiutarvi a diagnosticare diverse problematiche ed inviare le informazioni relative su come gli utenti navighino nell’app e compiano varie azioni.

La funzione Trace accetta un messaggio custom, un livello di gravità ed un record personalizzato contenente dati che possono essere registrati come dimensioni personalizzate per l’evento in App Insights. Oltre alle dimensioni personalizzate definite per ciascun evento di tracciamento, la piattaforma aggiungerà un set di dimensioni predefinite ad ogni evento generato.
Si tratta di: ms-appSessionId, ms-appName e ms-appId e possono essere utilizzati per capire a quale app e sessione l’evento sia correlato.

Quindi a cosa si può accedere? Praticamente a tutto.
Potete, ad esempio, registrare ogni volta che un utente seleziona un bottone nell’app, ogni volta che una nuova funzionalità viene usata, o l’indirizzo mail che l’utente utilizza per accedere all’app.
Nota: se inserite dati personali, dovrete tenere in considerazione ogni obbligo di conformità dei dati (ad esempio GDPR).
Di seguito riportiamo un esempio di un’espressione Trace che è possibile aggiungere all’evento App OnStart per raccogliere le informazioni di login dell’utente.

Registrare i dati di telemetria delle app utilizzando Azure Application Insights

Se volete sapere quanti errori si verificano nell’app o quante volte un record non è riuscito a scrivere nella risorsa dati, è possibile usare la funzione Errors.
La feature, controllerà la presenza di un errore di Patch durante la scrittura di un record e quindi registrerà l’evento.

Registrare i dati di telemetria delle app utilizzando Azure Application Insights

Da App Insights, è possibile poi creare un alert per mandare automaticamente una notifica nel caso in cui vengano registrati errori, o se ci sia stato un improvviso incremento degli errori nell’app.
Dopo aver pubblicato e aperto l’app, appariranno i nuovi eventi generati in App Insights. Questi eventi verranno mostrati nei dettagli della sessione o sarà possibile interrogarli direttamente dai registri.

Interrogazione dei registri di Application Insights
Se volete andare maggiormente in profondità, potete sfruttare tutta la potenza dei dati raccolti: bisognerà, molto probabilmente, porre delle domande al registro per analizzare le tabelle dati di App Insights. Le interrogazioni al registro sono molto potenti ed è possibile usarle per avere tabelle multiple, aggregare una grossa quantità di dati e completare operazioni complicate.
Maggiori informazioni qui.

Utilizzando le espressioni di Trace indicate sopra, si potrà sapere quali utenti specifici abbiano riscontrato un errore durante il salvataggio dei dati e a che ora si siano verificati tali errori. Per ottenere questo scenario, aprite i Log nella sezione Monitoring nel menu a sinistra, e nella finestra scrivete la seguente query.

Registrare i dati di telemetria delle app utilizzando Azure Application Insights

Dai risultati, potete vedere che tre utenti hanno ricevuto un errore durante il salvataggio dei dati.
In totale, ci sono stati 12 errori, e un utente ha ricevuto 5 errori in 30 minuti. Usando uno degli ID di sessione mostrati, è possibile approfondire ulteriormente i vari eventi di navigazione Trace e Screen che si sono verificati.

Altri miglioramenti in arrivo
Precedentemente, abbiamo parlato del fatto che i conteggi degli utenti visualizzati nel rapporto sull’utilizzo in App Insights non mostravano utenti unici.
Microsoft sta lavorando per risolvere questo problema e trasmettere un ID utente univoco con gli eventi App Insight registrati.
Verrà inoltre inviato l’ID della sessione di Power Apps, visibile agli utenti finali (a cui si accede dalla finestra di dialogo dei dettagli della sessione), che aiuterà ad analizzare ulteriormente le informazioni sulla sessione dell’utente e tutti gli errori che si sono verificati.
In conclusione, grazie alla strumentazione, si può iniziare a comprendere l’utilizzo dell’app, le prestazioni e identificare i problemi che potrebbero essere passati inosservati.


Le informazioni presenti in questo post, sono prese dall’articolo: Log telemetry for your Apps using Azure Application Insights.