Tablas de Datos (DataTable)
Las tablas de datos en Dinaup son estructuras de datos eficientes, manipulables mediante scripts. Permiten la organización, manipulación y generación de documentos en formatos como HTML, CSV y JSON,
¿Dónode se pueden crear tablas de datos?
Las tablas de datos están disponibles en los documentos dinámicos.
Casos de uso
Generar un JSON para exponer datos en un webhook.
Generar un JSON para iniciar VUE.js
Generar una tabla HTML para crear una plantilla de impresión. (Ej: Libro registro de facturas emitidas / recibidas)
Generar un CSV.
Generar un XML.
Ejemplo de uso
Consideremos un escenario donde necesitamos gestionar una lista de productos con su respectiva cantidad y precio unitario. Inicialmente, creamos la tabla y definimos sus columnas.
Usaremos las siguientes funciones
F.DataTable_New
crea una instancia en memoria para almacenar la tabla de datos, devuelve el ID de la tabla.F.DataTable_AddRow
agrega una fila vacía a la tabla de datos.F.DataTable_SetValueText
asigna un valor de texto a una celda en la última fila agregada.F.DataTable_SetValueNum
asigna un valor numérico a una celda en la última fila agregada.F.DataTable_SetValueMoney
asigna un valor de moneda a una celda en la última fila agregada.
Ejemplo
Para añadir datos a nuestra tabla, insertamos filas que representen cada producto:
Cómo Renderizar
Una vez que la tabla está llena de datos, se puede renderizar en diferentes formatos para su visualización o exportación. A continuación, se muestra cómo renderizar la tabla creada en diferentes formatos:
Este proceso de renderización convierte la tabla de datos en una cadena en el formato deseado, lista para ser incorporada en documentos HTML, descargada como archivo CSV o utilizada en aplicaciones que consuman JSON.
Formatos disponibles para renderizar tabla de datos
CSV: Genera un archivo con datos separados por comas, ideal para hojas de cálculo o importaciones a bases de datos.
HTML: Produce una tabla HTML permitiendo personalización mediante atributos, adecuado para visualizaciones en páginas web.
JSON: Convierte datos en una estructura JSON estándar con todos los valores como strings, evitando errores de deserialización.
JSONF: Ofrece una representación JSON que mantiene los tipos de datos originales, para desarrollos que requieren precisión en el tipo de dato.
HTML Con VUE
Los documentos dinámicos puede generar HTML y documentos pdf. Una forma que recomendamos para separar la lógica de la interfaz es utilizar VUE.
Formato avanzado HTML
Cuando una tabla de datos se renderiza a HTML, Dinaup asigna atributos que permiten formatear mediante CSS según el tipo de datos.
HTML: Renderizado de Valores Sí / No
El renderizador de HTML produce este resultado en las celdas tipo Sí / No
(bool).
Para aplicar estilos a estas celdas basándose en su valor booleano, se utiliza una combinación de los atributos data-f="1"
(identificando el tipo de dato como booleano) y data-s
(indicando el valor específico del dato). Los estilos asignan colores distintivos para resaltar visualmente los valores de verdadero y falso, mejorando la legibilidad y la interpretación de los datos:
HTML: Renderizado de Valores Numéricos / Decimales
Cuando se trata de representar valores numéricos o decimales en HTML, el enfoque se centra en el uso de atributos de datos data-f
, data-r
, y data-s
para especificar el formato, el rol (en este caso se mantiene en 0 como un valor placeholder, indicando que no se aplica un rol específico), y el signo del valor, respectivamente.
Esto facilita la aplicación de estilos condicionales y mejora la legibilidad de los datos numéricos:
HTML: Renderizado de Valores Moneda
Los valores de moneda se representan con una estructura HTML que descompone el valor en sus componentes principales, permitiendo estilizar de manera independiente el símbolo de la moneda, la parte entera, el separador decimal, y la parte decimal.
HTML: Renderizado de Valores Porcentaje
Para los valores porcentuales, la estructura HTML se asemeja a la de los valores monetarios, con la diferencia de que se añade el símbolo de porcentaje al final. Los atributos de datos permiten aplicar estilos específicos a estos valores, mejorando la claridad visual.