Formula – Pensare fuori dagli schemi

Tradotto automaticamente da Deepl

Secondo la classifica dei 10 migliori post del 2019, il post Formula: Più potenza dietro la semplicità si è piazzato piuttosto in alto… tra i primi cinque. Sembra che Formula abbia davvero catturato la vostra attenzione, quindi ecco un altro consiglio che Vincent de Lachaux (sviluppatore ed esperto di 4D) mi ha mostrato e che condivido con voi!

Utilizzare la formula in una finestra di dialogo generica

Il comando FORM consente di creare facilmente una finestra di dialogo di avviso generica. È sufficiente indirizzare la finestra di dialogo a diversi testi da visualizzare in un oggetto:

$object:=New Object(\
"mainText"; "Sei sicuro di voler svuotare il cestino?";\
"additionalText"; "Non puoi annullare questa azione.";\
"okText"; "Svuota cestino";\
"cancelText"; "Annulla"\
)

È possibile arricchire ulteriormente questo oggetto con una formula per le azioni dietro i pulsanti OK e Annulla. La formula può richiamare un comando 4D o un metodo di progetto, con o senza parametri.

$object.okAction:=Formula(myMethod("Cestino"; "ok"))
$object .cancelAction:=Formula(myMethod("Cestino"; "annulla"))

Quindi, utilizzare il codice generico nei pulsanti:

Form.cancelAction.call()
// Oppure
Form .okAction.call()

Ecco fatto! Ora abbiamo una finestra di dialogo di avviso completamente generica.

Aggiungere formule nell’oggetto Storage

Se nel codice sono presenti funzioni di verifica o di calcolo, è possibile aggiungere formule all’oggetto Storage.

Ecco un esempio:

// Define common functions
If Use ( . = ) ( ) . := ( . ) . . := (....) . . := (....) StorageƒNull
UseStorage
StorageƒNew shared object
Storageƒ
// Register the function in Storage
StorageƒisValidFormula
StorageƒcomputeXFormula
End use
End use
End if

Utilizzando questa funzione, non si modifica il contenuto della memoria, quindi non è necessario Use/End Use.

Creare formule quando si carica un componente

Per utilizzare i metodi di un componente nel database host, occorre prima condividere il metodo. Tuttavia, quando si aggiungono metodi, può essere facile dimenticarsene. Ecco un’idea per condividere le formule dei componenti!

Nel vostro componente, create un metodo che restituisca un oggetto al database host. Questo oggetto contiene le formule che richiamano i metodi del componente. Risultato? Un solo metodo da condividere. Bello, vero?

Questo è tutto per questo post. Ora tocca a voi condividere questo suggerimento con qualcun altro!

Vanessa Talbot
- Product Owner - Vanessa Talbot è entrata a far parte del team di 4D Program nel giugno 2014. In qualità di Product Owner, è incaricata di scrivere le storie degli utenti e di tradurle in specifiche funzionali. Il suo ruolo è anche quello di assicurarsi che l'implementazione della funzionalità fornita soddisfi le esigenze del cliente. Ha lavorato sulla maggior parte delle nuove funzionalità di multi-threading preemptive e anche su un argomento molto complesso: la nuova architettura per le applicazioni con motore. Vanessa si è laureata presso Telecom Saint-Etienne. Ha iniziato la sua carriera presso il Criminal Research Institute come sviluppatrice per il dipartimento audiovisivo. Ha lavorato anche nei settori dei media e della medicina come esperta di supporto tecnico, produzione e documentazione di nuove funzionalità.