DataTable Activities
Versión: 1.0.0 · ID: zoan-packages-datatable · Autor: Zoan Software
El paquete DataTable transforma tablas de datos en memoria: filtrarlas, ordenarlas, agregar columnas calculadas, sumar, agrupar y combinar. Es el complemento natural de los paquetes que producen tablas — Excel, CSV, Database y Google Sheets — y de Extract Table del navegador. Lees datos de una fuente, los procesas con estas actividades y escribes el resultado donde quieras.
Concepto clave: devuelven una tabla nueva
Sección titulada «Concepto clave: devuelven una tabla nueva»Casi todas estas actividades no modifican la tabla original: devuelven una tabla nueva con el resultado. Por eso siempre capturas su salida en una variable (que puede ser la misma u otra).
Filter DataTable table = = ventas ... → output: ventasFiltradasSort DataTable table = = ventasFiltradas column = "Total" → output: ventasOrdenadasPuedes encadenar operaciones pasando la salida de una como entrada de la siguiente, construyendo una “tubería” de transformaciones.
DataTable vs. expresiones (LINQ)
Sección titulada «DataTable vs. expresiones (LINQ)»Tienes dos formas de manipular tablas, y se complementan:
- Estas actividades: visuales, autoexplicativas, ideales para las operaciones comunes (filtrar, ordenar, agrupar). Recomendadas para la mayoría de los casos.
- Expresiones con LINQ (
asRows,Where,Select,OrderBy…): más flexibles para lógica a medida. Ver Expresiones › LINQ.
Actividades
Sección titulada «Actividades»Crear y leer
Sección titulada «Crear y leer»| Actividad | Tipo | Salida | Qué hace |
|---|---|---|---|
| Build DataTable | build-datatable | DataTable | Crea una tabla desde columnas y filas |
| Get Cell | get-cell | object | Lee una celda de una fila |
Filas y celdas
Sección titulada «Filas y celdas»Operan sobre filas individuales. Las que escriben modifican la tabla en sitio; las de lectura devuelven la fila, columna o valor.
| Actividad | Tipo | Salida | Qué hace |
|---|---|---|---|
| Add Data Row | add-row | DataRow | Añade una fila (por columna o por posición) |
| Get Data Row | get-row | DataRow | Obtiene una fila por índice |
| Find Data Row | find-row | DataRow | Primera fila que cumple condiciones |
| Set Cell | set-cell | — | Asigna el valor de una celda |
| Update Data Row | update-row | — | Actualiza varias columnas de una fila |
| Remove Data Row | remove-row | — | Elimina una fila por índice |
| Get Column | get-column | List<object> | Todos los valores de una columna |
| Clear DataTable | clear-datatable | — | Vacía todas las filas (conserva columnas) |
Filtrar y ordenar
Sección titulada «Filtrar y ordenar»| Actividad | Tipo | Salida | Qué hace |
|---|---|---|---|
| Filter DataTable | filter-datatable | DataTable | Filtra filas por condiciones |
| Sort DataTable | sort-datatable | DataTable | Ordena por una columna |
Columnas
Sección titulada «Columnas»| Actividad | Tipo | Salida | Qué hace |
|---|---|---|---|
| Add Column | add-column | DataTable | Añade una columna calculada |
| Drop Column | drop-column | DataTable | Elimina columnas |
| Rename Column | rename-column | DataTable | Renombra una columna |
Resumir y combinar
Sección titulada «Resumir y combinar»| Actividad | Tipo | Salida | Qué hace |
|---|---|---|---|
| Aggregate Column | aggregate-column | double | Suma/promedio/min/max/conteo de una columna |
| Group By | group-by | DataTable | Agrupa por una columna y resume |
| Join DataTable | join-datatable | DataTable | Une dos tablas por una columna común |
Un flujo típico
Sección titulada «Un flujo típico»Leer un Excel, quedarse con los pendientes, ordenarlos y obtener el total:
Read Excel Sheet path = = asset("facturas.xlsx") → output: facturas
Filter DataTable table = = facturas conditions: Estado equals "Pendiente" → output: pendientesSort DataTable table = = pendientes column = "Vencimiento" direction = asc → output: ordenadasAggregate Column table = = pendientes column = "Total" operation = sum → output: totalPendiente
Log message = = "Hay " + rowCount(ordenadas) + " facturas pendientes por $" + totalPendienteSiguientes pasos
Sección titulada «Siguientes pasos»- Tipos de datos › DataTable — fundamentos.
- Filter DataTable — la operación más común.
- Expresiones › LINQ — manipulación avanzada.