Gestire una DropDown in una Form Power Apps con SQL
Se si usa Power Apps con SharePoint Online i campi di tipo ComboBox, ad esempio Choice o Lookup, vengono correttamente gestiti quando si usa il controllo Forms.
La stessa cosa non avviene con un connettore a SQL Server dove le relazioni uno a molti non vengono risolte automaticamente, vanno configurate a mano.
Aggiunta campo
Ad esempio in una situazione come questa, collegando il controllo Forms alla tabella Questionsschema DBe aggiungendo il campo TeachingDetailIdAggiunta campoquesto viene riconosciuto come un campo di tipo numerico, senza tener contro della relazione con la tabella TeachingDetailsTipo numericoil campo viene visualizzato come una TextBox che accetta solo numeri.
Modalità di visualizzazione
Fortunatamente è possibile cambiare la modalità di visualizzazione cliccando sui tre puntini (more Actions) scegliendo il template Allowed valuesModalità DropDownin questo modo il campo verrà visualizzato come un controllo di tipo DropDownanche se non ancora configurato.
Configurazione DataCard
Per completare la configurazione è necessario fare l'unlock della DataCard in modo da poter modificare le proprietà Update e AllowedValuesUnlockinserendo i valori corretti in base alla sorgente datiValoriin particolare AllowedValues dovrà contenere la formula che ricava i dati da visualizzare dalla tabella TeachingDetails
In ultimo va configurata la DropDown (DataCardValue33) per mostrare nell'elenco il campo desiderato, in questo caso NameCampo visualizzato
Risultato
Il risultato è questoRisultato finalee sul database verrà salvato l'Id corrispondente.
Aggiornamento (Default)
Attenzione nell'esempio riportato sopra non funziona la valorizzazione della DropDown quando viene letto il valore esistente dal database (modalità di edit). Questo perché la DropDown non si basa sul campo chiave della tabella (TeachingDetailId), ma solo con il valore visualizzato (Name)Campo visualizzatoquindi la proprietà Default va impostata con un espressione di questo tipo usando la funzione LookUp