Guida pratica alla scelta e gestione delle Power Apps
Power Apps è una suite di app, servizi e connettori nonché una piattaforma dati che fornisce un ambiente di sviluppo rapido per creare applicazioni personalizzate in base alle esigenze aziendali. Utilizzando Power Apps, si possono creare rapidamente app aziendali personalizzate che possono essere collegati a numerose fonti dati, sia online che onpremise.
Canvas Apps
Le Canvas APPs sono tipologie di applicazioni Microsoft Power Apps che permettono un alto grado di personalizzazione dell’aspetto grafico; possibili scenari di utilizzo sono: creazione di applicazioni semplici, flussi approvativi, data entry rapido, numero elevato di fruitori.
Gli elementi distintivi delle Canvas Apps sono: ampio margine di progettazione grafica, integrabili in Teams, personalizzazioni “low code”, completo controllo applicazione e possibili differenti data source. La gestione dei flussi e delle integrazioni da realizzare incide sul tipo di licenza necessaria (ad esempio se deve essere prevista una notifica dopo un controllo schedulato servirà la licenza Power Automate).

Per le Canvas Apps ci sono connettori free e connettori legati ad una licenza premium; la scelta sul connettore da usare:
- dipende dal back-end scelto per l’app;
- dipende dalle azioni che devono essere svolte;
- dipende da eventuali limitazioni dello stesso.
In una Canvas App la gestione dei ruoli è vincolata al back-end definito per l’app: gruppi Sharepoint se abbiamo SharePoint, user permissions se abbiamo SQL, security roles se abbiamo Dataverse, etc.
Per quanto riguarda la personalizzazione delle form, la Canvas permette di gestire logiche real time oppure il richiamo di processi. Non esiste una gestione nativa di business ruoles, business process flow, campi calcolati, etc.
E’ possibile gestire tramite codice logiche di: obbligatorietà o meno di campi, visibilità di campi per ruolo, obbligatorietà di campi in dipendenza da altri campi, filtered lookup, campi calcolati, gestione per ruolo della visibilità del contenuto di un campo (tipo field level security).
Model Driven APPs
- una gestione avanzata di sicurezza e profilazione per ogni ambiente, attraverso i security roles;
- una gestione avanzata della personalizzazione delle form, come logiche di controllo/validazione, obbligatorietà, etc

Apps custom progettate per Teams
Le apps custom progettate per Teams possono essere create su modelli Microsoft Teams oppure da zero. Queste app sono delle canvas sviluppate direttamente nel contesto di teams e possono accedere direttamente alle informazioni di contesto dell’utente fornite da Microsoft Teams. Per inizializzare l’ambiente sarà necessario avere un gruppo teams in cui procedere con lo sviluppo. Queste app possono avere come back-end DATAVERSE (con limite a 2GB) oppure possono puntare ad una base dati free (ovvero SharePoint), oppure entrambi contemporaneamente. Essendo sviluppate in un determinato team, le utenze che hanno accesso al team potranno vedere l’app. I permessi sono limitati in base a quelli del team (admin, membro, guest), eventuali livelli più granulari dovranno essere gestiti con custom (ad esempio una tabella con i permessi), ma non saranno più i security roles standard.
Possibili scenari di utilizzo sono: un’ App disponibile in specifici Teams oppure un’ App disponibile nel catalogo delle app Teams. Gli elementi distintivi delle apps per Teams sono: gestione del dato in Dataverse for Teams, gestione dato in Dataverse, integrazione con Power Automate, integrazione con Power Virtual Agent.
Ma come fare a capire qual è l’App giusta da scegliere?
- Back-End: la canvas app può avere come BE molteplici DB, sfruttando i connettori disponibili; Pages e Model-Driven, invece, possono avere come BE solo Dataverse.
- Grafica: la canvas è pensata per avere una definizione grafica molto spinta (si usa il designer di powe app, non serve HTML); la personalizzazione grafica per le model driven è molto limitata. Pages permette una gestione grafica custom spinta (ma non si possono personalizzare tutti gli elementi).
- Flussi: la canvas nasce per gestire logiche semplici, ad es. data entry (ci si può spingere un pochino oltre ma non troppo per non incidere troppo sulle performace); le Model driven permettono di gestire flussi complessi. Pages come standard propone una vista di record, con una form per la modifica del singolo record; eventuali processi differenti devono essere sviluppati.
- Licenza: Power Pages utilizza una licenza per range di utenti (1-100, 1-1000, etc); per le Model Driven e le Canvas App è possibile attivare licenze per user o per plan, mentre le uniche app con pricing differenziato sono le App for Teams.
Conclusione
In conclusione, non sempre è possibile definire immediatamente il tipo di Power Apps da utilizzare; la scelta si semplifica una volta aver chiarito:
- Flusso di dettaglio;
- UX / UI;
- Architettura generale (con dettaglio delle integrazioni da prevedere);
- Numero e tipologia di profili degli utilizzatori dell’app

Paola Napolitano
Microsoft Dynamics CRM Specialist