> For the complete documentation index, see [llms.txt](https://docs.mensajerodigital.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mensajerodigital.app/campo-lista-tipo-tabla.md).

# Campo Lista tipo Tabla

La mayoría de los campos de un formulario reciben **un solo dato**: un nombre, una fecha, un valor. Pero hay información que por naturaleza es **una lista**: las personas que van a ingresar a la sede, los productos de un pedido, los equipos que se van a retirar, los asistentes a una capacitación.

Para eso existe el campo **Lista tipo Tabla**. Usted define las columnas una sola vez y quien diligencia el formulario agrega **tantas filas como necesite**, como si llenara una hoja de Excel dentro del formulario.

<figure><img src="/files/hkzX5CSxfhgGWygqYaRN" alt=""><figcaption></figcaption></figure>

### Conceptos clave

| Término                  | Significado                                                                                                    |
| ------------------------ | -------------------------------------------------------------------------------------------------------------- |
| **Columna**              | Cada dato que se pide por fila. Se configura una vez, al diseñar el formulario.                                |
| **Fila**                 | Cada elemento de la lista: una persona, un producto, un equipo. La agrega quien diligencia.                    |
| **Identificador**        | Código corto de la columna (`col1`, `col2`, …) que se usa para escribir operaciones numéricas. No es editable. |
| **Título de la columna** | El encabezado que ve quien diligencia. Es también el que debe traer el archivo cuando se importan filas.       |
| **Importar filas**       | Llenar la tabla de una sola vez desde un archivo de Excel o CSV, en vez de escribir fila por fila.             |
| **Plantilla**            | Archivo con los encabezados en el orden correcto, que el sistema genera a partir de las columnas configuradas. |

### 1. Cuándo usar este campo

Úselo cuando la cantidad de datos **no se sabe de antemano** y todos tienen la misma estructura.

| Situación                                                        | Campo adecuado                                                |
| ---------------------------------------------------------------- | ------------------------------------------------------------- |
| Un dato que siempre se pide una vez (nombre, fecha, valor total) | Campos normales                                               |
| Una lista de elementos con las mismas columnas                   | **Lista tipo Tabla**                                          |
| Un documento que se adjunta una sola vez al trámite              | Campo de archivo adjunto                                      |
| Un documento por cada elemento de la lista                       | **Lista tipo Tabla**, con una columna de tipo Archivo adjunto |

{% hint style="info" %}
Ejemplos reales: solicitudes de ingreso de contratistas (una fila por persona, con su soporte de seguridad social), pedidos (una fila por producto, con cantidad y valor calculado), inscripciones grupales, inventarios y actas de entrega.
{% endhint %}

### 2. Configuración de las columnas

La configuración la hace quien **diseña** el formulario, en el editor.

1. Entre al modo de edición del formulario.
2. Agregue un campo de tipo **Lista tipo Tabla**.
3. Póngale título al campo (por ejemplo, *Personas que ingresan*).
4. Configure las columnas en el bloque **Columnas de la Lista tipo tabla**.

<figure><img src="/files/hq8bjStMRxFu7bwN2MY6" alt=""><figcaption></figcaption></figure>

#### 2.1. Qué se define en cada columna

| Elemento      | Para qué sirve                                                                         |
| ------------- | -------------------------------------------------------------------------------------- |
| **Orden**     | Las flechas ▲▼ suben o bajan la columna. El número de la izquierda es su posición.     |
| **Título**    | El encabezado que se ve al diligenciar. Es obligatorio y no puede quedar vacío.        |
| **Tipo**      | Qué clase de dato se pide (ver 2.2).                                                   |
| **Ancho %**   | Qué porcentaje del ancho de la tabla ocupa la columna. Entre todas deberían sumar 100. |
| **Requerida** | Marca la columna como de llenado obligatorio (ver 2.5).                                |
| **Eliminar**  | Borra la columna. Es la papelera al final de la fila.                                  |

Junto al título aparece en gris el **identificador** de la columna (`col1`, `col2`, …). No se puede cambiar: es el nombre con el que se referencia esa columna dentro de las operaciones numéricas.

{% hint style="warning" %}
Los identificadores **no se reordenan** al mover las columnas ni se reutilizan al borrarlas. Es intencional: los registros ya guardados y las operaciones que usted haya escrito siguen apuntando a ellos. Por eso es normal ver una tabla cuyas columnas van `col1`, `col2`, `col5`.
{% endhint %}

#### 2.2. Tipos de columna

| Tipo                   | Qué recibe                                                                    |
| ---------------------- | ----------------------------------------------------------------------------- |
| **Texto**              | Texto libre.                                                                  |
| **Lista de Selección** | Una opción de una lista que usted define (ver 2.3).                           |
| **Fecha**              | Una fecha, con calendario.                                                    |
| **Numero**             | Un valor numérico.                                                            |
| **Correo Electronico** | Un correo, validado automáticamente.                                          |
| **Operación Numerica** | **No se digita**: el sistema la calcula a partir de otras columnas (ver 2.4). |
| **Archivo adjunto**    | Un archivo por fila (ver 2.6).                                                |

#### 2.3. Columnas de Lista de Selección

Al elegir el tipo **Lista de Selección** aparece un botón al lado para **configurar las opciones**. Cada opción tiene dos partes:

* **Texto** — lo que ve y elige quien diligencia (por ejemplo, *Cédula de ciudadanía*).
* **Código (opcional, para importar)** — un valor interno equivalente (por ejemplo, `13`).

El código es útil cuando la información viene de otro sistema. Si lo define, al importar un archivo la columna acepta **tanto el texto como el código**, y en ambos casos guarda el texto.

<figure><img src="/files/FrPUExsUwV8Yn8K9mqkP" alt=""><figcaption></figcaption></figure>

#### 2.4. Columnas de Operación Numérica

Sirven para calcular un valor a partir de otras columnas de la misma fila. Se escribe la fórmula usando los **identificadores** de las columnas:

```
(col2*col3) + ((col2*col3) * 0.19)
```

El resultado se muestra automáticamente y **no se puede digitar ni importar**: se recalcula solo cada vez que cambian las columnas de las que depende.

#### 2.5. Columnas obligatorias

Al marcar **Requerida**, esa columna no puede quedar vacía. Con una precisión importante:

{% hint style="warning" %}
Las columnas obligatorias **solo se exigen en las filas que tengan algún dato**. Una fila completamente vacía se ignora al enviar. Esto es necesario, porque la tabla siempre muestra una fila en blanco lista para escribir; si esa fila se exigiera, ningún formulario con tabla se podría enviar.

Como consecuencia, se puede tener columnas obligatorias y aun así **enviar el formulario sin ninguna fila**. Si eso no es lo que quiere, marque además el **campo** como obligatorio: el editor se lo advierte y le ofrece el botón **Exigir al menos una fila**.
{% endhint %}

#### 2.6. Columnas de Archivo adjunto

Una columna de tipo **Archivo adjunto** agrega un botón **Adjuntar** en cada fila. Sirve para el soporte que pertenece a **ese** elemento de la lista y no al trámite completo: el certificado de una persona, la ficha técnica de un producto.

* Un archivo por fila.
* Máximo **20 MB** por archivo, con las mismas extensiones permitidas que el resto de adjuntos del formulario.
* El archivo queda asociado a su fila y también aparece en los adjuntos del radicado.
* Se puede reemplazar o quitar mientras se diligencia.

{% hint style="info" %}
Una columna de archivo marcada como **Requerida** se exige al **enviar** el formulario, no al importar. Es a propósito: un archivo de Excel no puede traer documentos adentro, y el flujo normal es importar primero las filas y adjuntar los soportes después.
{% endhint %}

#### 2.7. Permitir llenar la tabla desde un archivo

La casilla **Permitir llenar la tabla desde un archivo** agrega, para quien diligencia, un botón **Importar desde archivo**.

{% hint style="warning" %}
Viene **desactivada**. Actívela solo en tablas donde se esperen muchas filas: en una tabla de dos o tres, el botón solo estorba a quien diligencia.
{% endhint %}

Al activarla, el editor le recuerda las reglas que aplicarán: el máximo de filas, que los encabezados del archivo deben coincidir con los **títulos** de las columnas, que las columnas de Operación Numérica se ignoran, y que en las de Lista de Selección puede definir un código.

<figure><img src="/files/zEOoYv2VyVikbHuTtrA1" alt=""><figcaption></figcaption></figure>

#### 2.8. Validar antecedentes por fila

En las empresas que tienen habilitada la consulta de antecedentes, aparece la casilla **Validar antecedentes por cada fila de la tabla**. Con ella, cada fila se consulta contra las listas restrictivas.

Requiere marcar, en el selector **Rol antecedentes** de cada columna, exactamente una columna como **Nombre** y otra como **Identificación**.

{% hint style="warning" %}
Con esta opción activa el máximo baja de 100 a **20 filas**, porque cada fila genera una consulta.
{% endhint %}

#### 2.9. Avisos del editor

El editor le avisa antes de que el problema llegue al formulario publicado:

| Aviso                                              | Qué significa                                                                                                                                  |
| -------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| Los anchos no suman 100 %                          | Si se pasan, la tabla se desborda y aparece scroll horizontal; si no llegan, queda más angosta. Hay un botón **Distribuir en partes iguales**. |
| Marcó columnas obligatorias pero el campo no lo es | Se podrá enviar el formulario sin ninguna fila. Hay un botón **Exigir al menos una fila**.                                                     |
| Columnas sin título                                | **Impide guardar** el formulario. El título es el encabezado que se ve y el que debe traer el archivo al importar.                             |
| Tabla sin columnas                                 | **Impide guardar** el formulario.                                                                                                              |

### 3. Cómo se diligencia el formulario

#### 3.1. Agregar y eliminar filas

La tabla aparece con una fila en blanco. Debajo está el botón **Agregar fila**, y cada fila tiene su papelera para eliminarla.

Si elimina la última fila que queda, la tabla vuelve a mostrar una fila en blanco: nunca queda sin filas.

<figure><img src="/files/WOdkYR1OS1rldtWdsUo3" alt=""><figcaption></figcaption></figure>

#### 3.2. Importar las filas desde un archivo

Si el campo tiene activada la opción, aparece el botón **Importar desde archivo**, que abre un asistente de tres pasos.

**Paso 1 — Archivo.** Descargue la **Plantilla Excel (.xlsx)** o la **Plantilla CSV**. La plantilla se genera a partir de las columnas que usted configuró, así que siempre trae los encabezados correctos y en orden. Llénela y cárguela. Si ya tiene su propio archivo, puede saltarse la descarga: lo importante es que los encabezados coincidan.

<figure><img src="/files/oDHK7qny3SDebwCjFRHe" alt=""><figcaption></figcaption></figure>

**Paso 2 — Revisión.** El sistema le muestra qué encontró antes de tocar nada:

* **Faltan columnas** — el archivo no trae algún encabezado esperado. Hay que corregirlo.
* **Se ignoraron algunas columnas** — el archivo trae columnas de más. Solo es informativo.
* **Errores** — una tabla con la **fila**, la **columna**, el **valor** y el **motivo** de cada error, que se puede **descargar**. Las filas con error no se importan, pero **las demás sí**.
* La vista previa de las filas que quedaron listas.

<figure><img src="/files/cfyaS5i3C7NZl25PzT6q" alt=""><figcaption></figcaption></figure>

**Paso 3 — Aplicar.** Elija qué hacer con lo que ya está en la tabla:

* **Reemplazar las filas actuales**
* **Agregar al final de las filas actuales**

<figure><img src="/files/f3P01yoMmIwwWZafWbGK" alt=""><figcaption></figcaption></figure>

#### 3.3. Cómo debe venir el archivo

| Regla        | Detalle                                                                                                          |
| ------------ | ---------------------------------------------------------------------------------------------------------------- |
| Encabezados  | Deben coincidir con los **títulos** de las columnas. No importan mayúsculas, tildes ni el orden.                 |
| Formato      | Excel (`.xlsx`) o CSV (`.csv`), máximo 5 MB. Del Excel solo se lee la **primera hoja**. El CSV admite `;` o `,`. |
| Fechas       | `dd/mm/aaaa`.                                                                                                    |
| Números      | Sin puntos de miles (`1500` o `1500,25`). Si necesita el separador de miles, use el archivo de Excel.            |
| Listas       | Se acepta el texto de la opción o su código, si lo configuró.                                                    |
| Operaciones  | Se ignoran: se calculan solas.                                                                                   |
| Archivos     | No se pueden importar. Se adjuntan después, fila por fila.                                                       |
| Filas vacías | Se descartan sin avisar.                                                                                         |

{% hint style="info" %}
El archivo que se **exporta** tiene exactamente el mismo formato que la plantilla que se **importa**. Puede exportar un registro, ajustarlo en Excel y volver a cargarlo sin ningún trabajo de conversión.
{% endhint %}

#### 3.4. Adjuntar el soporte de cada fila

Si la tabla tiene una columna de tipo Archivo adjunto, cada fila muestra su botón **Adjuntar**. El archivo se sube en el momento y queda asociado a esa fila.

<figure><img src="/files/hkzX5CSxfhgGWygqYaRN" alt=""><figcaption></figcaption></figure>

### 4. Consultar y exportar la información

#### 4.1. Ver los datos de un registro

Los datos de la tabla se ven completos en el **visor de datos del formulario**: desde **Ver registros**, desde el detalle del radicado en la bandeja de trabajo y desde el **Repositorio**. Los archivos adjuntos de cada fila aparecen como enlaces para abrirlos o descargarlos.

En el **explorador de registros**, la celda de un campo tabla se abre con la opción **Ver más**.

<div><figure><img src="/files/I9dhiN6BcLM5e8fT6FUk" alt=""><figcaption></figcaption></figure> <figure><img src="/files/gc7Q0d6AwxARe5Cdms9S" alt=""><figcaption></figcaption></figure></div>

#### 4.2. Exportar a Excel

En ambos lugares hay un botón **Exportar a Excel** sobre la tabla. El archivo trae:

* Una hoja con los datos, con los mismos encabezados y en el mismo orden que la plantilla.
* Fechas y números con su formato real, no como texto.
* Si alguna columna muestra totales, una segunda hoja llamada **Totales** — se deja aparte a propósito, para que la primera hoja se pueda volver a importar sin tener que borrar nada.

#### 4.3. En el PDF del formulario

La tabla se imprime como tabla en el PDF del registro, con sus totales. Las columnas de archivo salen como el nombre del documento enlazado.

### 5. Límites

| Límite                                          | Valor              |
| ----------------------------------------------- | ------------------ |
| Filas por tabla                                 | **100**            |
| Filas por tabla, con validación de antecedentes | **20**             |
| Tamaño del archivo a importar                   | 5 MB               |
| Tamaño de un adjunto de fila                    | 20 MB              |
| Columnas                                        | Sin límite técnico |

{% hint style="info" %}
El límite de filas aplica también cuando se agregan a mano: al llegar al tope, el botón **Agregar fila** avisa y no agrega más.

Aunque no hay límite de columnas, tenga presente que una tabla de muchas columnas es incómoda de llenar desde un celular. Si el formulario se va a diligenciar en móvil, procure no pasar de cinco o seis.
{% endhint %}

### Preguntas frecuentes

**No veo el botón «Importar desde archivo» en mi formulario.** No aparece solo: hay que activar **Permitir llenar la tabla desde un archivo** en la configuración del campo y guardar el formulario.

**Importé el archivo y algunas filas no entraron.** Las filas con error no se importan, pero el paso de revisión le dice exactamente cuáles y por qué, y puede descargar ese listado. Corrija esas filas en el archivo y vuelva a cargarlo, o agréguelas a mano.

**Las fechas quedaron corridas un día.** Escriba las fechas en la plantilla como `dd/mm/aaaa` y, si usa Excel, deje que la celda quede con formato de fecha. Si el archivo trae la fecha como texto en otro formato, el asistente se lo reporta como error en vez de adivinar.

**Un número con puntos de miles me dio error.** En CSV, `1.500` es ambiguo: puede ser mil quinientos o uno con quinientos milésimas. El sistema prefiere avisar antes que adivinar. Escríbalo sin puntos (`1500`) o use el archivo de Excel, donde el número viaja como número.

**Marqué columnas obligatorias y aun así se envió el formulario con la tabla vacía.** Las columnas obligatorias se exigen dentro de cada fila diligenciada. Para exigir que haya al menos una fila, marque el **campo** como obligatorio.

**¿Puedo subir los archivos de cada fila dentro del Excel?** No. Un archivo de Excel no transporta documentos. Importe primero las filas y luego adjunte el soporte de cada una con el botón **Adjuntar**.

**Cambié el título de una columna y las plantillas viejas dejaron de servir.** Es esperado: los encabezados del archivo se emparejan con los títulos actuales. Descargue la plantilla otra vez después de cambiar títulos.

**¿Puedo pasar de 100 filas?** No. Es un tope pensado para que el formulario siga siendo utilizable y para que el envío no falle. Si necesita cargar volúmenes mayores de información, consúltenos: ese caso se resuelve mejor con una importación de datos, no con un formulario.
