Creazione di moduli al volo con i nuovi comandi di origine dati

Tradotto automaticamente da Deepl

Nello sviluppo di un’applicazione, spesso è necessario creare moduli in modo dinamico. Ad esempio, si potrebbe voler generare al volo un modulo di ricerca, adattato alle esigenze dell’utente. In 4D esistono due approcci principali per la creazione di moduli dinamici: costruire l’intero modulo in modo programmatico o aggiungere oggetti a un layout di modulo esistente. Per quanto riguarda la seconda opzione, fino ad ora era possibile duplicare gli oggetti con OBJECT DUPLICATEe modificare l’origine dati con OBJECT SET DATA SOURCEutilizzando un approccio classico basato sui puntatori.

Con 4D 20 R10, nuovi e potenti comandi, OBJECT SET DATA SOURCE FORMULA e OBJECT Get data source formulaconsentono agli sviluppatori di vincolare una formula come origine dati degli oggetti del modulo. Inoltre, è possibile assegnare dinamicamente le formule alle proprietà chiave delle caselle di riepilogo con il comando LISTBOX SET PROPERTY come l’elemento corrente, la posizione dell’elemento corrente e gli elementi selezionati.

Questo apre la strada a un approccio più moderno, flessibile e leggibile, grazie soprattutto a espressioni come Form.xx o le classi.

HDI_SetDataSourceFormula

Nuovi comandi per manipolare la proprietà dell’origine dati

Sono stati aggiunti due nuovi comandi per modificare la proprietà dell’origine dati:

OGGETTO SET DATA SOURCE FORMULA ( {* ;} oggetto ; formula)
OGGETTO Get data source formula ( {* ;} oggetto) : formula

Esempio 1: Aggiornamento della formula

Immaginiamo di avere un input di testo chiamato “myInput” in un modulo e di voler legare la sua origine dati alla formula “Form.myText”.

$myFormula:=Formula(Form.myText)
OBJECT SET DATA SOURCE FORMULA (*; "myInput"; $myFormula)

Esempio 2: Recupero della formula

Per recuperare la formula associata a un oggetto modulo, ad esempio un input di testo denominato “mioInput”, è sufficiente scrivere:

$formula:=OBJECT Get data source formula(*; "mioInput")

Questi nuovi comandi facilitano la creazione di modelli di modulo generici e riutilizzabili, che possono essere configurati dinamicamente.

Funzionalità estese per le ListBox

Queste proprietà sono accessibili utilizzando le seguenti costanti con i comandi LISTBOX Get property e LISTBOX SET PROPERTY:

  • lk current item expression
  • lk current item pos expression
  • lk selected items expression

Esempio:

LISTBOX SET PROPERTY(*; "myListBox"; lk selected items expression; "Form.selectedItems")

Conclusione

Con OBJECT SET/GET DATA SOURCE FORMULA e le nuove costanti delle proprietà delle caselle di riepilogo, 4D offre un modo nuovo, elegante e potente di costruire interfacce dinamiche.

Abbracciando le formule e la programmazione orientata agli oggetti, è ora possibile creare moduli più adattabili, manutenibili e facili da leggere.

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à.