LookUp Power Apps: cos'è e come utilizzarla (con esempi pratici!)

LookUp di Power Apps è una delle funzioni più apprezzate dell'ambiente di sviluppo low-code Microsoft. Questa funzionalità permette infatti di trovare un singolo record in base a criteri di ricerca personalizzati. In questo articolo, approfondiremo cos’è la funzione LookUp di Power Apps, quali caratteristiche la distinguono dalle funzioni Search e Filter, e come utilizzarla nelle nostre app aziendali con un caso d'uso da ricreare in 3 semplici passaggi.

Cosa troverai in questo articolo

  • LookUp Power Apps: una breve introduzione
  • Sintassi e parametri di LookUp in Power Apps
  • Le tre tipologie di LookUp in Power Apps
  • LookUp Power Apps: come utilizzarla?
  • LookUp Power Apps: qual è la differenza con Search e Filter?
  • LookUp Power Apps per aiutare un'azienda a gestire i suoi acquisti
LookUp Power Apps: cos'è e come utilizzarla (con esempi pratici!)

LookUp Power Apps: una breve introduzione

La funzione LookUp di Microsoft Power Apps è una delle funzioni fondamentali per manipolare e gestire i dati in un'applicazione sviluppata all’interno dell’ambiente di sviluppo low-code offerto da Microsoft e svolge un ruolo cruciale nell'aiutare gli utenti a cercare entry specifiche all’interno di grandi volumi di dati.

LookUp consente agli utenti di recuperare informazioni specifiche da una tabella o da una fonte dati, recuperando un singolo record corrispondente a determinati criteri di ricerca ed è utile quando si desidera trovare un record specifico che possa soddisfare determinate condizioni all'interno di un set di dati più ampio, velocizzando e semplificando enormemente il processo di ricerca delle informazioni che ci occorrono.

Quando un utente inserisce un determinato termine di ricerca per trovare righe corrispondenti, la funzione LookUp visualizza eventuali righe che corrisponderanno o il cui testo ha parziale somiglianza con la query inserita.

L’utilizzo di questa funzione per le nostre applicazioni Power Apps garantisce agli utenti ricerche più dinamiche e user-friendly e può semplificare moltissimo la navigazione attraverso i propri dati, consentendo agli utenti di trovare immediatamente ciò di cui hanno bisogno con il minimo dello sforzo e il massimo della precisione.

Sintassi e parametri di LookUp in Power Apps

Fondamentalmente, la funzione LookUp di Power Apps restituisce il primo record da una tabella in base a una o più condizioni o formule, aiutando gli utenti e le organizzazioni a cercare rapidamente i valori corrispondenti che si desiderano. È generalmente utilizzata per ordinare directory di dati importanti memorizzate all'interno dell'organizzazione dell'utente o per riconoscere le parti importanti all'interno delle tabelle correlate.

È molto simile a VLOOKUP e HLOOKUP di Excel, ma più flessibile e copre più ambiti come INDEX MATCH, perfetto se si sta lavorando con più origini dati in un'unica app.

Essenzialmente, i record in una tabella vengono filtrati in base a uno o più criteri specificati da una formula. Quando si esegue la funzione LookUp di Power Apps, la formula viene valutata su ciascun record della tabella. I record che corrispondono ai criteri di ricerca determinati saranno aggiunti alla tabella dei risultati.

È importante notare che se nessun record corrisponde alla formula fornita nella funzione di ricerca, quest’ultima non fornirà nessun risultato.

La sintassi generale della funzione dovrebbe apparire simile a questa:

LookUp(Table*, Formula [, *ReductionFormula* ] )

O come apparirà nell’interfaccia utente in Power Apps:

LookUp(Source,Condition,Result)

Questa funzione valuta ogni record nella tabella specificata e mantiene solo i record che soddisfano i criteri specificati nella/e formula/e. Andiamo adesso a vedere a cosa corrispondono i parametri delle formule date sopra:

  • Table (Source): il luogo o il database in cui verranno cercati i record. Questo parametro è obbligatorio.
  • Formula (Condition): aiuta a identificare i record che corrispondono a uno o più criteri. La formula valuta ogni record nelle tabelle. Anche questo parametro è obbligatorio.
  • ReductionFormula (Result): si può utilizzare questa parte se si desidera ottenere un singolo valore risultante da una funzione di ricerca invece di un record o più record. In altre parole, la formula di riduzione converte un singolo record in un singolo valore.

Quando si utilizza la funzione LookUp, è di vitale importanza capire l’interazione tra i vari parametri che contribuiscono a produrre il risultato finale della nostra ricerca. Più formule si specificano, più preciso sarà il risultato.

Le tre tipologie di LookUp in Power Apps

In Microsoft Power Apps, la funzione LookUp può ricadere in tre tipologie principali differenti in alcuni aspetti e utilizzabili in contesti diversi a seconda delle proprie esigenze. Andiamo a vederli più da vicino e osserviamo cosa li differenzia e in che contesti possiamo utilizzarli.

1. LookUp Standard

Questo è il tipo più comune di funzione LookUp. Trova il primo record in una tabella che soddisfa una formula specificata. Può essere utilizzato per trovare un singolo record che corrisponde a uno o più criteri.

Ad esempio, potrebbe essere utilizzata per trovare un cliente specifico in una tabella di dati dei clienti in base al suo ID o al suo nome. La sintassi di base della funzione LookUp come abbiamo già visto è:

LookUp(Source, Condition, Result)

Questa tipologia di LookUp restituirà il primo record che soddisfa la formula specificata. Se nessun record corrisponde ai criteri definiti, verrà restituito un valore vuoto.

2. LookUp PartyList

La tipologia LookUp PartyList in Power Apps consente di selezionare più record da più tabelle. Ogni riga viene aggiunta alla tabella dei risultati. Fondamentalmente, ogni volta che viene aggiunto un record alla tabella, è possibile cercare un nuovo record nelle tabelle. È importante notare che non è possibile personalizzare il sistema né disabilitare le viste in questa tipologia di LookUp.

Questa tipologia di LookUp è utile quando si desidera selezionare più record da tabelle diverse e aggiungerli a una tabella dei risultati. Tuttavia, poiché non è particolarmente personalizzabile potrebbe non essere adatto per l’utilizzo in scenari più complessi che richiedono un maggiore controllo sull'interfaccia utente.

La sintassi per l’utilizzo della tipologia PartyList è la seguente:

FormContext.getAttribute(arg).getlsPartyList()

getlsPartyList è il riferimento all'API client che restituisce un valore booleano per indicare che si tratta di una funzione LookUp di tipo PartyList. Significa che se la funzione di ricerca restituisce true, allora si tratta di una funzione LookUp PartyList.

3. LookUp Regarding

La tipologia LookUp Regarding è particolarmente utile quando si desidera cercare dati da più tabelle all'interno di un'app Power Apps. Questa funzionalità consente di trovare un singolo record corrispondente a determinati criteri specificati dall'utente.

È un'opzione avanzata che richiede l'abilitazione delle "attività" di una tabella. È particolarmente utile per organizzazioni, team e individui in quanto semplifica significativamente le operazioni di ricerca.

Una volta abilitata, offre una serie di funzionalità avanzate che consentono agli utenti di personalizzare ulteriormente il processo di ricerca e di gestire i risultati ottenuti in modo efficace. Ad esempio utilizzando le API client, gli sviluppatori possono estendere e personalizzare le funzionalità di questa tipologia di ricerca.

Questa tipologia di LookUp supporta anche l'authoring intelligente, consentendo una rapida creazione di app e form.

La funzione LookUp Regarding ha una sintassi specifica che è simile a quella standard, ma include la possibilità di specificare il tipo di ricerca relativa. La sintassi generale è la stessa della funzione LookUp standard, ma include l'opzione per specificare il tipo di ricerca relativa utilizzando un parametro aggiuntivo.

LookUp(Source, Condition, Result, RegardingType)

Cerchi esperti in Power Apps?

Dev4Side Software è specializzata nella creazione di app aziendali con Power Apps, riducendo drasticamente i processi di sviluppo e mantenimento delle applicazioni interne.

Operando in maniera verticale sull'intero ecosistema Power Platform di Microsoft, abbiamo sviluppato una ottima competenza su Power Apps che ci permette di offrire soluzioni disegnate su misura ed completamente integrate all'interno del tuo tenant Microsoft 365.

Scopri come possiamo aiutarti a sfruttare al migliorare i tuoi processi interni: contattaci per trasformare le tue informazioni in azioni concrete.

LookUp Power Apps: come utilizzarla?

Ora che abbiamo dato una panoramica generale della funzione Lookup, andiamo a vedere come e con quali condizioni è possibile applicarla per cercare i dati che ci interessano.

A questo proposito prenderemo la tabella di dati qui sotto (che indicheremo come “TabellaDipendenti”) e la utilizzeremo come riferimento per tutte le modalità di applicazione che andremo ad analizzare.

Applicare la funzione LookUp con una singola condizione

Per esemplificare la funzione di ricerca con una singola condizione supponiamo di voler trovare il dipendente di nome "Giorgio Neri" e visualizzarne il dipartimento d’appartenenza. Utilizzando la funzione LookUp la sintassi sarebbe:

LookUp(TabellaDipendenti, Nome Dipendente = "Giorgio Neri", Dipartimento)

Questa formula cerca nella tabella il primo record in cui il campo "NomeDipendente" corrisponde a "Giorgio Neri" e restituisce il valore del campo "Dipartimento", in questo caso “Finanza”.

Applicare la funzione LookUp con più condizioni

Se invece volessimo utilizzare più condizioni per la nostra ricerca per visualizzare il nome di un dipendente che rispetti i parametri da noi scelti, la sintassi della funzione LookUp potrebbe essere simile a questa:

LookUp(TabellaDipendenti, Dipartimento = Marketing, Stipendio > 4000, Nome Dipendente)

Il risultato di questa funzione ci restituirà il nome di Anna Marrone, l’unica entry della tabella a rispettare entrambi i parametri settati.

Applicare la funzione LookUp per trovare il valore massimo

Supponiamo invece di voler cercare il valore massimo presente in una colonna all’interno della nostra tabella, in questo caso lo stipendio e sapere a chi è associato. La sintassi che utilizzeremo per la nostra funzione sarà questa:

LookUp(TabellaDipendenti, Stipendio = Max (Stipendio), Nome Dipendente)

La funzione ci restituirà come risultato il nome del dipendente a cui è associato il valore più alto nella colonna “Stipendio”, in questo caso Marco Rossi.

Applicare la funzione LookUp per trovare l'ultimo record

Come sappiamo, la funzione di ricerca di Power Apps restituisce di solito il primo record di qualsiasi tabella. Tuttavia, se si desidera ottenere l'ultimo record della tabella, è necessario applicare un ordinamento nella tabella dei risultati per restituire l'ultimo record.

La logica dietro a questa operazione è molto semplice, dobbiamo invertire la tabella dei risultati in modo che l'ultimo record della tabella dei risultati diventi il primo.

La sintassi della funzione che andremo a usare sarà questa:

LookUp(Sort(TabellaDipendenti,ID,descending), Nome Dipendente)

Il risultato della funzione sarà l’ultima voce della tabella ovvero “Giorgio Neri”.

LookUp Power Apps: qual è la differenza con Search e Filter?

Molto spesso LookUp risulta una funzione piuttosto confusionaria per chi si sta appena avvicinando al mondo dello sviluppo di Power Apps e viene spesso scambiata da utilizzatori alle prime armi con alcune delle altre funzioni di ricerca messe a disposizione dall’ambiente di sviluppo di Microsoft, come ad esempio Search o Filter.

Vediamo quindi di chiarire la confusione sull’argomento una volta per tutte e capire cosa differenzia LookUp dalle altre due funzioni sopracitate.

La funzione Filter viene utilizzata per trovare tutti i record in una tabella che soddisfano i criteri della formula. Questo è equivalente a come si utilizzerebbe il filtro di SharePoint o di Excel per restituire più record dall'elenco che corrispondono a uno o più criteri e scartare quelli che non lo fanno.

La funzione Search invece è pensata per cercare record che contengano una stringa e non che soddisfino una formula.

Invece la funzione LookUp, come abbiamo già visto, trova il primo record in una tabella che soddisfi le formule inserite nella funzione. Si usa LookUp per trovare un singolo record che corrisponda a uno o più criteri.

Prendiamo a esempio un elenco di Ticket di Servizio. L'elenco ha un campo di ricerca per una lista di dipendenti a cui è possibile assegnare un Ticket.

Se vogliamo vedere solo i Ticket di Servizio attualmente aperti, Filter è la soluzione giusta, mentre se desideriamo che ci vengano mostrati i ticket che sono stati Assegnati a qualcuno con "Marco" nel loro nome può tornarci più utile la funzione Search.

Se invece si vuole restituire come risultato il numero di telefono del dipendente a cui è assegnato il Ticket di Servizio selezionato nella tua tabella Power Apps, questo sarebbe un buon caso d'uso per la funzione LookUp perché per la nostra ricerca è necessario restituire un singolo record.

LookUp Power Apps per aiutare un'azienda a gestire i suoi acquisti

Ora che sappiamo come opera la funzione LookUp più nel dettaglio, vediamo insieme un esempio di applicazione della stessa in un possibile scenario reale.

Supponiamo di avere una app che consente agli utenti interni di un’azienda di richiedere l’acquisto e spedizione di attrezzature per l'ufficio e di farle consegnare al loro specifico ufficio.

Come origine dati utilizzeremo in questo caso una lista di SharePoint, ma in ogni caso ricordiamo la possibilità di utilizzare numerose altre fonti dati, come ad esempio Microsoft Excel.

1. Creare la Power App

Accediamo al portale di Power Apps con il nostro account Microsoft. Se non ne avete uno, non preoccupatevi. Basteranno pochi click per creare un account e in aggiunta è completamente gratuito.

Una volta ottenuto l’accesso al portale selezioniamo l'opzione "Nuova app" dal menu e scegliamo il tipo di app che desideriamo creare.

A screenshot of a computerDescription automatically generated

Nell'interfaccia di progettazione di Power Apps Studio, trasciniamo e rilasciamo elementi dalla barra degli strumenti come moduli, tabelle, pulsanti e controlli sull'area di progettazione della nostra app e organizziamo gli elementi dell'interfaccia utente in questo modo:

  • Nome = firstNameInput
  • Cognome = lastNameInput
  • Attrezzatura = equipmentInput
  • Ufficio di destinazione = deliveryOfficeInput
  • Posizione dell'ufficio = officeLocationInput (disabilitato per l'utente)
  • Metodo di spedizione = shippingMethodInput (disabilitato per l'utente)
  • Pulsante Salva = saveButton

A screenshot of a computerDescription automatically generated

La posizione dell'ufficio e il metodo di spedizione sono disabilitati poiché è in questi specifici campi che utilizzeremo LookUp e non vogliamo consentire l'immissione manuale di dati all’interno di questi due specifici campi.

2. Organizzare le liste e implementare LookUp

Ora occupiamoci delle nostre origini dati. In questo particolare caso ci avvarremo dell’utilizzo di SharePoint e organizzeremo i nostri elenchi nel seguente modo:

Il primo sarà una tabella degli ordini dove verrano salvati gli eventuali ordini effettuati dagli utenti e la chiameremo “TabellaOrdini”.

A screenshot of a computerDescription automatically generated

In secondo luogo avremo un elenco degli uffici disponibili e delle loro posizioni geografiche che denomineremo “TabellaUffici”.

A screenshot of a computerDescription automatically generated

Infine per le aziende di spedizioni preferite per le diverse località, creeremo un elenco che denomineremo “TabellaTrasportatori”.

A screenshot of a computerDescription automatically generated

Quando il nostro utente finale sta compilando il modulo e seleziona l'ufficio in cui desidera consegnare gli articoli, vogliamo popolare automaticamente gli input della Posizione dell'Ufficio e del Metodo di Spedizione, per farlo possiamo utilizzare la funzione LookUp.

Vogliamo inserire la nostra espressione nella proprietà "Predefinito" dell'input su cui stiamo lavorando, questo significa che il valore di testo predefinito dell'input sarà il risultato della funzione LookUp.

Innanzitutto, per popolare automaticamente la Posizione dell'Ufficio possiamo eseguire una ricerca in officesTable, per recuperare la regione, in base al nome dell'ufficio che l'utente seleziona nel modulo.

Quando trasponiamo i nostri valori nel modello, otteniamo:

LookUp(TabellaUfficio, NomeUfficio = UfficioConsegna.Selected.NomeUfficio, regione)

Questo sta chiedendo all'app di:

  • Guardare nella tabella degli uffici
  • Trovare il record in cui il nome dell'ufficio è uguale all'ufficio selezionato
  • Restituire il valore dal campo regione per quel record

In secondo luogo, possiamo fare un'altra ricerca nella tabella dei trasportatori per popolare l'input Metodo di Spedizione, in base alla posizione dell'ufficio popolata dalla precedente LookUp. Seguendo di nuovo il modello e inserendo i nostri valori, otteniamo:

LookUp(TabellaTrasportatori, regione = LocalitaUfficio.Text, trasportatore)

Questo sta invece chiedendo all'app di:

  • Guardare nella tabella dei trasportatori
  • Trovare il record dove la regione è uguale alla posizione dell'ufficio popolata nei passaggi precedenti
  • Restituire il valore dal campo trasportatore preferito per quel record

Ora, quando l'utente cambia l'ufficio di consegna desiderato, i due input per Posizione e Metodo di Spedizione cambieranno automaticamente in base agli elementi selezionati dall'utente.

A screenshot of a computerDescription automatically generated

A screenshot of a computerDescription automatically generated

3. Inserire la funzione Patch sul pulsante “Salva”

Concludiamo inserendo la funzione Patch sul pulsante "Salva" per salvare l'ordine nella nostra tabella utilizzando la seguente sintassi:

Patch(tabellaOrdini, Defaults(tabellaOrdini), {Title: CountRows(TabellaOrdini) + 1, nome: nomeInput.Text, cognome: cognomeInput.Text, attrezzatura: attrezzaturaInput.Selected.Value, ufficioConsegna: ufficioConsegnaInput.Selected.nomeUfficio, metodoConsegna: metodoConsegnaInput.Text})

Una volta inserita la funzione, il pulsante “Salva” sarà pienamente funzionante e potremo dedicarci a personalizzare l’estetica della nostra app a piacimento, testarla per verificare la presenza di eventuali errori da correggere o malfunzionamenti e poi distribuirla ai nostri utenti per l’utilizzo immediato.

Conclusione

In sintesi, utilizzare la funzione LookUp in Microsoft Power Apps ci permette di ottenere immediatamente il risultato desiderato nelle nostre ricerche, personalizzare le esperienze utente mostrando agli utilizzatori solo i dati pertinenti e automatizzare i processi all'interno delle proprie app per cercare e utilizzare automaticamente le informazioni che ci sono necessarie.

Applicando formule e criteri specifici per le nostre necessità, possiamo sempre mostrare solo le informazioni o i record necessari e rilevanti per le esigenze dei nostri utenti, senza incappare nelle problematiche comuni della regolare ricerca manuale.

Entra in contatto con il team

Modern Apps

Il team Modern Apps è specializzato nello sviluppo e nell'integrazione all'interno dell'intero ecosistema Microsoft 365. Progettiamo applicazioni native per le piattaforme Microsoft ed Azure e implementiamo processi aziendali che si integrano e massimizzano l'investimento aziendale effettuato con Microsoft 365.