vai al contenuto principale

Attributi e valori di default

È possibile definire valori di default assunti dagli attributi nativi al momento della creazione e della modifica di un oggetto di una classe.

Il valore predefinito può essere di due tipi:

  • Constant: una costante dello stesso tipo di dato dell’attributo;
  • Expression: un valore calcolato a partire da un’espressione.

Imposta un valore di default costante #

Fai click destro su un attributo nativo per aprire il suo Attribute menu; seleziona l’opzione Constant per aprire il Value editor e digita il valore di default desiderato.

Imposta un valore di default costante

Imposta un valore di default calcolato #

Fai click destro su un attributo nativo per aprire il suo Attribute menu; seleziona l’opzione Expression per aprire il pannello Edit default expression.

Imposta un valore di default con un espressione

Usare un espressione per impostare un valore di default

Il pannello Edit default expression

Nel pannello Edit default expression è possibile definire quando calcolare il valore dell’attributo mediante l’espressione:

  • When creating a new object: il valore di default è calcolato al momento della creazione di un nuovo oggetto.
  • When editing an existing object: il valore di default è calcolato ogni volta che un oggetto è modificato.

Combinando le opzioni delle altre checkbox dell’editor è possibile imporre delle condizioni sulla reattività dell’espressione:

  • Initialize with computed value: imposta la form di creazione dell’oggetto con il valore definito dall’espressione già inserito;
  • Reset with computed value: ogni volta che l’oggetto viene modificato, il valore dell’attributo viene ricalcolato sulla base dell’espressione definita nell’editor;
  • Update automatically (unless set by User): sia in fase di creazione, sia in fase di modifica, il valore dell’attributo può anche essere aggiornato automaticamente, a meno che l’utente non sovrascriva manualmente il valore calcolato di default.

Rimuovi un valore di default #

Fai click destro su un attributo nativo per aprire il suo Attribute menu e seleziona l’opzione Remove default.

Rimuovi un valore di default

Esempio #

Nell’esempio mostrato in figura abbiamo modellato una classe di ordini online (Order); l’attributo date tiene traccia del momento in cui un ordine è stato creato.

Esempio

Vogliamo evitare che l’utente debba completare il campo relativo alla data ogni volta (nota che il campo è required), dunque ha senso assegnargli un valore di default. Se la data fosse stata sempre la stessa avremmo potuto usare una costante; tuttavia, nel nostro caso la data di creazione cambia letteralmente giorno per giorno, quindi è più indicato l’uso di un’espressione. Infatti, poiché la data dell’ordine è quasi sicuramente la stessa della creazione dell’oggetto all’interno della classe (ovvero la data odierna), l’attributo date è automaticamente calcolato sfruttando la proprietà di sistema __System.date.

Esempio espressione

Spuntando l’opzione Update automatically (unless set by user), nella sezione _When creating a new object la data sarà calcolata automaticamente dall’applicazione, senza che sia necessario inserirla manualmente. L’utente è comunque libero di modificarla a piacimento; per precauzione abbiamo quindi inserito un messaggio che lo avverte se sta inserendo una data diversa da quella calcolata di default.

In caso di modifiche successive, non vogliamo che la data venga ricalcolata e modificata; abbiamo dunque lasciato invariate le impostazioni della sezione When editing an existing object.