I controlli scheda sono i blocchi predefiniti dei controlli Modifica modulo e Visualizza modulo. Il modulo rappresenta l'intero record e ogni scheda rappresenta un singolo campo di tale record.

Il modo più semplice per interagire con le schede è tramite il riquadro destro quando è stato selezionato un modulo nell'area di lavoro di progettazione. In questo riquadro è possibile scegliere i campi da visualizzare, selezionare come deve essere visualizzato ogni campo e ridisporre i campi.

Per un'introduzione sulle schede, vedere aggiungere un modulo e informazioni sui moduli dati. La parte restante di questo argomento descrive in dettaglio come funzionano le schede e come è possibile personalizzarle o persino crearne di proprie.

Schede predefinite

PowerApps offre un set predefinito di schede per stringhe, numeri e altri tipi di dati. Nel riquadro destro è possibile vedere le variazioni disponibili e modificare la scheda usata per un campo:

In questo esempio viene selezionata una scheda di testo a riga singola, ma il testo dell'URL è più lungo dello spazio visualizzabile in una singola riga. Verrà modificato in una scheda di testo su più righe per offrire più spazio modificabile agli utenti:

Si noterà anche che alcuni campi dell'origine dati non sono visualizzati. Per visualizzarli o nasconderli, usare l'icona a forma di occhio:

Personalizzare una scheda

Le schede comprendono altri controlli. L'utente immette i dati in un controllo Input di testo standard aggiunto dalla scheda Inserisci.

Verranno ora esaminati alcuni esempi di modifica dell'aspetto della scheda mediante controlli.

  1. In primo luogo tornare alla scheda inserita più di recente, per il campo SecurityCode. Selezionare la scheda facendo clic o toccando una volta:

  2. Selezionare il controllo Input di testo nella scheda facendo clic o toccando il controllo stesso.

  3. Spostare il controllo nella scheda trascinando la casella di selezione e ridimensionarlo trascinando i punti di controllo lungo il bordo della casella di selezione:

    È possibile ridimensionare, spostare e apportare altre modifiche al controllo, ma non è possibile eliminarlo senza prima averlo sbloccato. La prossima sezione descrive come sbloccare una scheda.

  4. Inserire uno o più controlli nella scheda, come ad esempio la forma a stella, dal menu Forme nella scheda Inserisci:

    Questo nuovo controllo fa ora parte della scheda e ne seguirà i movimenti se, ad esempio, le schede verranno riordinate all'interno del modulo.

Come altro esempio, visualizzare un'immagine in un controllo Immagine anziché l'URL dell'immagine in un controllo Input di testo, come illustrato nella grafica

  1. Nella scheda Inserisci aggiungere un controllo immagine nella scheda ImageURL:

  2. Nella barra della formula impostare la proprietà Image del controllo su TextBox.Text, dove TextBox è il nome del controllo Testo di input che contiene l'URL:

    Suggerimento: per visualizzare il nome di ogni controllo, premere ALT.

    Ora è possibile visualizzare le immagini e modificarne gli URL. Si noti che si sarebbe potuto usare Parent.Default come proprietà Image, ma non sarebbe stata aggiornata nel momento in cui l'utente avesse immesso un nuovo URL.

  3. È possibile eseguire la stessa operazione nella seconda schermata dell'applicazione, in cui viene usato un controllo Visualizza modulo per visualizzare i dettagli di un record. In questo caso potrebbe essere necessario nascondere l'etichetta perché l'utente non modifica l'URL in questa schermata. In tal caso impostare la proprietà Visible del controllo della casella di testo, non la scheda, su false:

Sbloccare una scheda

Oltre a contenere i controlli, le schede stesse sono controlli che hanno proprietà e formule esattamente come qualsiasi altro controllo. Quando si sceglie di visualizzare un campo in un modulo, nel riquadro destro viene creata automaticamente la scheda e vengono generate le formule necessarie. Le formule verranno visualizzate nel riquadro Avanzate, disponibile nella scheda Visualizza:

Si noti una delle proprietà più importanti della scheda: la proprietà DataField. Questa proprietà indica quale campo dell'origine dati l'utente può visualizzare e modificare in questa scheda.

Nella vista Avanzate l'intestazione di grandi dimensioni nella parte superiore indica che le proprietà della scheda sono bloccate. Viene visualizzata anche un'icona a forma di lucchetto accanto alle proprietà DataField, Default, e DisplayName. Le formule sono state create nel riquadro destro e il blocco impedisce modifiche accidentali a tali proprietà.

Fare clic sull'intestazione in alto o toccarla per sbloccare le schede in modo che sia possibile modificare le proprietà:

Verrà modificata le proprietà DisplayName per inserire uno spazio tra Asset e ID. Apportando questa modifica, l'utente sta modificando ciò che è stato creato dal sistema. Nel riquadro destro la scheda ha un'etichetta diversa:

L'utente ha assunto il controllo della scheda e può modificarla ancora in base alle proprie esigenze. Ma è stata persa la possibilità di modificare la scheda da una rappresentazione all'altra. Ad esempio, da una sola riga di testo a più righe di testo, come fatto in precedenza. La scheda predefinita è stata trasformata in una "scheda personalizzata" che ora l'utente può controllare.

Una precisazione: non è possibile bloccare nuovamente una scheda dopo che è stata sbloccata. Per tornare a uno stato bloccato, rimuovere la scheda e reinserirla nel riquadro destro.

Interagire con il modulo

Dopo aver sbloccato la scheda, è possibile modificare le modalità di interazione con il modulo che la contiene.

Di seguito sono riportate alcune linee guida su come i controlli dovrebbero funzionare con la scheda e su come le schede dovrebbero funzionare con il modulo. Si tratta solo di linee guida. Come con qualsiasi controllo in PowerApps, è possibile creare formule che facciano riferimento a qualsiasi altro controllo in PowerApps, e ciò vale anche per le schede e i controlli in esse contenuti. In PowerApps si può essere creativi: è possibile creare un'app in molti modi.

Proprietà DataField

La proprietà più importante della scheda è la proprietà DataField. Questa proprietà attiva la convalida, determina il campo che viene aggiornato e altri aspetti della scheda.

Flusso di informazioni in entrata

Come un contenitore, il modulo rende disponibile ThisItem a tutte le schede che contiene. Questo record contiene tutti i campi per il record di interesse corrente.

La proprietà Default di ogni scheda deve essere impostata su ThisItem.FieldName. In determinate circostanze può essere opportuno trasformare il valore. Ad esempio, è possibile che sia necessario formattare una stringa o tradurre il valore da una lingua a un'altra.

Tutti i controlli della scheda devono fare riferimento a Parent.Default per ottenere il valore del campo. Questa strategia offre un livello di incapsulamento per la scheda così che la proprietà Default della scheda possa essere modificata senza modificare le formule interne della scheda.

Per impostazione predefinita, le proprietà DefaultValue e Required provengono dai metadati dell'origine dati in base alla proprietà DataField. È possibile eseguire l'override di queste formule con la propria logica, integrando i metadati dell'origine dati usando la funzione DataSourceInfo.

Flusso di informazioni in uscita

Dopo che l'utente modifica un record usando i controlli nelle schede, la funzione SubmitForm salva le modifiche apportate all'origine dati. Quando tale funzione viene eseguita, il controllo del modulo legge i valori della proprietà DataField di ogni scheda per sapere quale campo modificare.

Il controllo del modulo legge anche il valore della proprietà Update di ogni scheda. Questo valore viene archiviato nell'origine dati per il campo. Questo è il punto in cui applicare un'altra trasformazione, ad esempio per invertire la trasformazione che è stata applicata alla proprietà Default della scheda.

La proprietà Valid viene attivata dai metadati dell'origine dati, in base alla proprietà DataField. Si basa anche sulla proprietà Required e sulla presenza o meno di un valore nella proprietà Update. Se il valore della proprietà Update non è valido, la proprietà Error visualizza un messaggio di errore descrittivo.

Se la proprietà DataField di una scheda è vuota, la scheda è semplicemente un contenitore di controlli. Le relative proprietà Valid e Update non vengono inoltrate insieme con il modulo.

Analisi dettagliata di un esempio

Verranno analizzati i controlli che costituiscono una scheda di immissione di dati base. Lo spazio tra i controlli è stato aumentato per visualizzare ogni controllo più chiaramente:

Tenere premuto ALT per visualizzare i nomi dei controlli che costituiscono la scheda:

Sono quattro i controlli che fanno funzionare la scheda:

Nome Tipo Descrizione
TextRequiredStar Controllo Etichetta Visualizza una stella, che viene comunemente usata nei moduli di immissione di dati per indicare che un campo è obbligatorio.
TextFieldDisplayName Controllo Etichetta Visualizza il nome descrittivo del campo. Questo nome può non corrispondere a ciò che è presente nello schema dell'origine dati.
InputText Controllo Testo di input Visualizza il valore iniziale del campo e consente all'utente di modificarlo.
TextErrorMessage Controllo Etichetta Visualizza un messaggio di errore descrittivo per l'utente se si verifica un problema con la convalida. Verifica anche che il campo contenga un valore se necessario.

Per popolare questi controlli con i dati, è possibile attivarne le proprietà dalle proprietà della scheda, tramite queste formule chiave. Si noti che nessuna di queste formule fa riferimento a un campo specifico. Al contrario, tutte le informazioni provengono dalla scheda.

Proprietà del controllo Formula Descrizione
TextRequiredStar.Visible Parent.Required La stella viene visualizzata solo se il campo è obbligatorio. L'obbligatorietà deriva da una formula che viene attivata dall'utente o dai metadati dell'origine dati.
TextFieldDisplayName.Text Parent.DisplayName Il controllo casella di testo visualizza il nome descrittivo, specificato dall'utente o dai metadati dell'origine dati, e che viene impostato nella proprietà DisplayName della scheda.
InputText.Default Parent.Default Il controllo di input di testo inizialmente visualizza il valore del campo dall'origine dati, come specificato dal valore predefinito della scheda.
TextErrorMessage.Text Parent.Error Se si verifica un problema di convalida, la proprietà Error della scheda specifica un messaggio di errore appropriato.

Per estrarre informazioni da questi controlli e inserirle nell'origine dati, sono disponibili le formule chiave seguenti:

Nome del controllo Formula Descrizione
DataCard.DataField "ApproverEmail" Il nome del campo che l'utente può visualizzare e modificare in questa scheda.
DataCard.Update InputText.Text Il valore per convalidare e reinserire i dati nell'origine dati quando viene eseguita la funzione SubmitForm.