4D View Pro: Muestra tus colecciones como tablas

Traducido automáticamente de Deepl

Usted ya lo sabe; 4D View Pro le permite cargar y mostrar fácilmente datos en hojas de cálculo.
4D v19 R6 trae novedades interesantes. Esta entrada del blog le mostrará la nueva función de tabla que le permite hacer mucho más y beneficiarse de propiedades adicionales como encabezados, redimensionamiento de la tabla, fila de resumen, ordenación de columnas, filtros y más. También descubrirás cómo cargar rápidamente los datos de las clases y colecciones de datos. Y no te pierdas la demostración, que ofrece un ejemplo completo y algunos gráficos visuales como extra.

HDI: 4DVP Crear tabla

Hay dos maneras de crear una tabla:

Saluda a VP CREATE TABLE

rellenar manualmente una tabla

En primer lugar, necesitas crear una tabla sin fuente. Utiliza el comando new VP CREATE TABLE y pásale como parámetro el rango donde debe aparecer la tabla:

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

Crea una tabla vacía con columnas de nombre por defecto:

Ahora sólo tenemos que rellenar nuestra tabla con la ayuda del comando VP SET VALUES 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 tabla se rellena ahora con los valores presentes en la colección:

blank

Ahora puede filtrar u ordenar la tabla fácilmente:

blank

Rellenar una tabla desde el contexto de datos

Para mostrar una selección de entidades como una tabla

blank

debe convertir su selección de entidades en una colección y añadirla a su contexto de datos de la hoja, definir las columnas y crear su tabla.

En primer lugar, debe crear un contexto de datos que contenga una colección de los datos que necesita mostrar. En el ejemplo siguiente, leemos los datos de una base de datos y los convertimos en una colección, luego los encapsulamos en un objeto:

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

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

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

Ahora que el contexto de datos está creado, definimos qué columnas mostrar:

$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"))

Sólo nos queda utilizar el comando VP CREATE TABLE indicando que queremos mostrar la colección contenida en el atributo people del contexto de datos:

// 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

Mira el IDH de arriba para ver estos comandos en acción. Además, asegúrese de leer la documentación para obtener más detalles.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené se unió al equipo de 4D Program en noviembre de 2016. Como Product Owner, está a cargo de escribir las historias de usuario y luego traducirlas a especificaciones funcionales. Su papel es también asegurarse de que la implementación de la característica entregada cumple con las necesidades del cliente. Después de obtener una licenciatura en Ciencias de la Computación en el CNAM, Fabrice se unió a una pequeña empresa de publicación de software como desarrollador Windev. A continuación, trabajó para diferentes empresas del sector industrial y comercial como desarrollador de Windev y de la web, así como asesor técnico de nuevas funcionalidades.