Creare un elenco interattivo di dati con 4D Qodly Pro

Tradotto automaticamente da Deepl

Nel blog di questa settimana esploriamo la creazione di una pagina dinamica per la visualizzazione dei dati. Ci concentreremo su un’applicazione pratica: la creazione di un sistema per generare rapporti annuali sulle prestazioni dei dipendenti. Questo progetto è disponibile su GitHub.

Il nostro obiettivo è progettare un’interfaccia facile da usare che visualizzi un elenco di dipendenti con opzioni per filtrare i risultati in base al reparto e allo stato di occupazione.

Applicazione per la valutazione delle prestazioni

Ecco il risultato finale:

Impostazione delle fonti Qodly

Nella sezione Fonti di Qodly, definiremo le diverse fonti utilizzate dai nostri componenti.

In questo esempio, creiamo una fonte intitolata “Employees”, di tipo entity selection, basata sulla classe di dati “Employee”. Il valore iniziale è impostato su tutti i dipendenti.

blank

Nota:

  • Le sorgenti raggruppate sotto “This.page” hanno un ambito limitato alla pagina corrente. Utilizzarle per la gestione di dati temporanei o specifici della pagina.
  • Le fonti raggruppate sotto “Namespaces” hanno un ambito globale, che le rende adatte a dati o impostazioni condivise tra più pagine.

Creare un datatable

Con 4D Qodly Pro è possibile utilizzare i componenti datatable o matrix per presentare efficacemente un elenco di dati. In questo esempio, utilizziamo il componente datatable, simile alla casella di riepilogo di tipo Collection o Entity Selection in 4D.

Il campo “Fonte Qodly” consente di assegnare una selezione di entità per popolare il datatable. Il campo “Elemento selezionato” recupera l’entità selezionata, che equivale all'”elemento corrente” nella casella di riepilogo.

blank

Poi, nella sezione “Colonne”, si possono aggiungere colonne e definire le loro espressioni. Ad esempio, definiamo una colonna per “Firstname”, che è un attributo diretto della classe di dati “Employee”, e “Department.Name”, che è un attributo correlato.

blank

Filtrare i dati

In questa implementazione, l’elenco dei dipendenti può essere filtrato in base al loro reparto o al loro stato di dipendenti attivi.

blank

Funzione loadEmployees()

Sul lato 4D, aggiungiamo una funzione nella classe “Employee” per restituire una selezione di entità in base ai criteri di filtraggio.

Ecco un frammento di codice:

exposed Function loadEmployees return ($departement: Object; $isActive: Boolean) : cs.EmployeeSelection
If ($departement#Null)
return This .query("ID_Dipendente = :1 AND isActive = :2"; $departement.ID; $isActive)
Else
This .query("isActive = :1"; $isActive)
End if

 

Filtro per stato attivo

Per implementare il filtraggio in base allo stato di occupazione, creiamo una fonte booleana di Qodly denominata “isActive” e impostiamo il valore iniziale su true. Quindi, aggiungiamo una casella di controllo collegata a questa fonte.

blank

Per ottenere un aspetto simile a un interruttore, impostiamo la proprietà “Variant” su Switch.

blank

Quindi, la funzione “loadEmployees” viene associata all’evento “On Change” della casella di controllo.

blank

Per ulteriori dettagli sugli eventi, consultare la documentazione sugli eventi di Qodly.

Filtro per reparto

Per filtrare per reparto, utilizziamo un selectBox simile a un menu a tendina in 4D.

Creiamo due fonti di dati:

  • “dipartimenti” di tipo entità di selezione
  • “dipartimento” di tipo entità

 

Quindi, aggiungiamo un componente selectBox impostando “reparti” come sorgente Qodly e “reparto” come elemento selezionato.

blank

Quindi, all’interno del selectBox, inseriamo un componente di testo collegato alla sorgente “$This.Name”.

blank

Infine, sull’evento “On Change” del componente SelectBox, richiamiamo la funzione “loadEmployees” con i parametri “department” e “year”.

blank

Voilà!

blank

Stilizzazione del datatable

Il passo finale consiste nell’adattare il datatable alle linee guida del design della vostra azienda o all’identità visiva della vostra applicazione. Si può personalizzare

  • regolando le proprietà del widget, come colori, bordi e altri stili,
  • oppure applicare una classe CSS.

L’uso di una classe CSS offre il vantaggio di mantenere uno stile coerente tra tutti i Datatable dell’applicazione, garantendo un’esperienza utente coesa.

In un prossimo post del blog, esploreremo le varie possibilità di utilizzo dei CSS in Qodly Studio. Se non potete aspettare, la classe CSS utilizzata nell’applicazione Performance Review si chiama “DataTable”.

I prossimi passi

Congratulazioni! Ora avete una pagina funzionale in grado di visualizzare e filtrare i dati dei dipendenti. Questo sistema interattivo fornisce una solida base per la gestione dinamica dei dati nelle applicazioni Qodly.

Per migliorare ulteriormente la comprensione dei datatable e delle loro azioni, esplorate le seguenti risorse:

 

Buona programmazione e arrivederci al prossimo blog!

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