Proprietà speciali

Completato

I moduli hanno un paio di proprietà e due operatori denominati che vengono generalmente trascurati. Questa sezione illustra quando e come usare le proprietà Error e Unsaved e gli operatori denominati ThisItem e Parent.

Proprietà Error

La proprietà Error contiene l'output di tutti i messaggi di errore generati dal controllo Form. Per visualizzare il contenuto della proprietà, aggiungere un controllo Etichetta di testo alla schermata e per la proprietà Text immettere la formula Form1.Error. In assenza di errori la proprietà resta vuota, ma, se si prova a inviare un modulo senza immettere tutte le colonne obbligatorie, viene visualizzato il messaggio "Una voce è obbligatoria o ha un valore non valido. Correggere la voce e riprovare". Questo valore può essere usato nelle formule o in altri controlli per progettare la gestione degli errori nelle app.

Proprietà Unsaved

La proprietà Unsaved è una proprietà booleana che restituisce true quando un modulo è stato modificato ma non inviato. È possibile usare questa proprietà per verificare se l'utente ha apportato modifiche non salvate. Un esempio può essere la configurazione del pulsante Indietro nell'app per verificare se il modulo non è stato salvato e impedire di proseguire in presenza di dati non salvati. A tale scopo è possibile usare la formula seguente nella proprietà OnSelect di un controllo Pulsante.

If(YourFormName.Unsaved = false, Navigate(WelcomeScreen, ScreenTransition.Cover))

Questa funzione verifica se il controllo Form denominato NomeModulo restituisce false per la proprietà Unsaved. Se la proprietà restituisce false, l'utente visualizza la schermata denominata WelcomeScreen. Se la proprietà restituisce true, non accade nulla. Nell'app è possibile estendere questo concetto per aggiungere un messaggio di avviso o anche una finestra popup che informa l'utente del motivo per cui non può proseguire.

Oltre a queste proprietà, il controllo Form include gli stessi operatori denominati, ThisItem e Parent, del controllo Raccolta.

Operatore denominato ThisItem

All'interno del controllo Form o Raccolta si può fare riferimento ai valori del record corrente usando ThisItem. Ciò è utile quando si creano manualmente formule per fare riferimento ai valori del record. Se ad esempio si vuole aggiungere un'etichetta che combina le colonne FirstName e LastName in un'unica stringa con uno spazio centrale, è possibile usare la formula seguente.

ThisItem.FirstName & " " & ThisItem.LastName

Questa formula presuppone la presenza delle colonne denominate FirstName e LastName per il record visualizzato nel controllo Form.

Operatore denominato Parent

Nei controlli Form e Raccolta esiste il concetto di oggetto padre. Nel caso di un controllo Input o di un altro controllo in un controllo Form, è possibile estrarre una proprietà dalla scheda dati usando l'operatore Parent. e il nome della proprietà a cui si vuole fare riferimento. Un esempio è il valore predefinito. Le schede dati archiviano questo valore nella proprietà Default. Da un controllo Input è possibile fare riferimento a tale valore con la formula Parent.Default nel valore Default del controllo Input. Le raccolte hanno lo stesso concetto Parent per eseguire query sulle proprietà dal controllo Raccolta nei controlli all'interno della raccolta.