4D View Pro: Visualizzare le collezioni come tabelle

Tradotto automaticamente da Deepl

Lo sapete già: 4D View Pro consente di caricare e visualizzare facilmente i dati nei fogli di calcolo.
4D v19 R6 porta con sé interessanti novità. Questo post del blog vi mostrerà la nuova funzione di tabella che consente di fare molto di più e di beneficiare di proprietà aggiuntive come intestazioni, ridimensionamento della tabella, riga di riepilogo, ordinamento delle colonne, filtri e altro ancora. Scoprirete anche come caricare rapidamente i dati da classi e raccolte di dati. Non perdetevi la demo, che fornisce un esempio completo e alcuni grafici visivi come bonus.

HDI: 4DVP Creare una tabella

Esistono due modi per creare una tabella:

Salutate VP CREATE TABLE

popola manualmente una tabella

Innanzitutto, è necessario creare una tabella senza origine. Utilizzare il comando nuovo VP CREATE TABLE e passargli come parametro l’intervallo in cui deve apparire la tabella:

VP CREATE TABLE(VP Cells("ViewProArea"; 1; 1; 3; 4); "EmptyTable")

Crea una tabella vuota con colonne dal nome predefinito:

Ora dobbiamo solo riempire la nostra tabella con l’aiuto del comando VP SET VALUES con l’aiuto del comando

$data:=New collection
// Titles 
$data.push(New collection("First Name"; "Last Name"; "Score"))
// Data
$data.push(New collection("Andrea"; "Butterfield"; "70"))
$data.push(New collection("Faye"; "Back"; "100"))
$data.push(New collection("Shane"; "Frazier"; "50"))

VP SET VALUES(VP Cell("ViewProArea"; 1; 1); $data)

La tabella viene ora popolata con i valori presenti nella raccolta:

blank

È ora possibile filtrare o ordinare facilmente la tabella:

blank

Popolare una tabella dal contesto dei dati

Per visualizzare una selezione di entità come tabella

blank

è necessario convertire la selezione di entità in una raccolta e aggiungerla al contesto dati del foglio, definire le colonne e creare la tabella.

Per prima cosa, è necessario creare un contesto di dati contenente una raccolta dei dati da mostrare. Nell’esempio che segue, leggiamo i dati da un database e li convertiamo in una raccolta, quindi li incapsuliamo in un oggetto:

$p:=ds.People.all().toCollection()

$data:=New object
$data.people:=$p

VP SET DATA CONTEXT("ViewProArea"; $data)

Ora che il contesto di dati è stato creato, si definiscono le colonne da mostrare:

$parameter:=New object
$parameter.tableColumns:=New collection
$parameter.tableColumns.push(New object("name"; "First name"; "dataField"; "Firstname"))
$parameter.tableColumns.push(New object("name"; "Last name"; "dataField"; "Lastname"))
$parameter.tableColumns.push(New object("name"; "Email"; "dataField"; "email"))
$parameter.tableColumns.push(New object("name"; "Birthday"; "dataField"; "Birthday"; "formatter"; "dddd dd MMMM yyyy"))
$parameter.tableColumns.push(New object("name"; "Country"; "dataField"; "Country"))

Non resta che utilizzare il comando VP CREATE TABLE indicando che si vuole mostrare la collezione contenuta nell’attributo persone del contesto dati:

// Table creation
VP CREATE TABLE(VP Cells("ViewProArea"; 1; 1; $parameter.tableColumns.length; 1); "ContextTable"; "people"; $parameter)
// Automatic column sizing
VP COLUMN AUTOFIT(VP Column($area; 0; 4))

blank

Guardate l’HDI qui sopra per vedere questi comandi in azione. Inoltre, assicuratevi di leggere la documentazione per maggiori dettagli!

Fabrice Mainguené
- Product Owner -Fabrice Mainguené si è unito al team di 4D Program nel novembre 2016. In qualità di Product Owner, è incaricato 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.Dopo aver conseguito una laurea in Informatica presso il CNAM, Fabrice è entrato a far parte di una piccola società di pubblicazione di software come sviluppatore Windev. In seguito ha lavorato per diverse aziende del settore industriale e commerciale come sviluppatore Windev e web e come consulente tecnico su nuove funzionalità.