Busca en nuestra documentación, explora nuestros recursos y visita nuestro Foro de la Comunidad para obtener información más detallada
Última actualización: 20 mar 2026
La lógica de formularios controla el flujo y el comportamiento de tu formulario en función de las respuestas a preguntas anteriores. Te permite crear formularios dinámicos que se adaptan a la información ingresada por los usuarios. Por ejemplo, puedes usar la lógica de formularios para mostrar preguntas específicas solo cuando sean relevantes, validar respuestas o realizar cálculos automáticamente.
Los principales tipos de lógica de formularios son:
Lógica de omisión: Controla cuándo se muestran u ocultan las preguntas en función de respuestas anteriores.
Restricciones: Validan las respuestas para asegurarse de que cumplan con las reglas o criterios definidos.
Filtros de selección: Muestran solo las opciones de respuesta relevantes en función de respuestas anteriores.
Cálculos: Generan valores automáticamente mediante expresiones matemáticas o lógicas.
Lógica requerida: Define cuándo una pregunta debe ser respondida obligatoriamente.
La lógica de formularios se construye usando expresiones, que combinan referencias a preguntas, operadores, funciones y constantes. La expresión se evalúa como TRUE o FALSE para controlar el comportamiento del formulario.
Este artículo presenta los componentes básicos de la lógica de formularios en XLSForm, incluyendo la referencia a preguntas, los operadores y las funciones. Para obtener más información sobre cada tipo de lógica de formularios, consulta los artículos de ayuda sobre lógica de omisión, lógica requerida, restricciones, filtros de selección y cálculos en XLSForm.
La referencia a preguntas te permite incorporar la respuesta a una pregunta anterior en la etiqueta o la lógica de una pregunta posterior. La referencia a preguntas se usa con frecuencia en formularios avanzados:
En etiquetas o sugerencias de preguntas: Por ejemplo, puedes incluir el nombre del hijo de un encuestado en preguntas posteriores sobre ese hijo.
En la lógica de formularios: Por ejemplo, puedes mostrar u ocultar una pregunta en función de una respuesta anterior, o validar una respuesta comparándola con una anterior.
La referencia a preguntas usa el formato ${question_name}, donde question_name se reemplaza con el nombre único de la pregunta referenciada.
Si una referencia a una pregunta contiene un error ortográfico o es incorrecta, aparecerá un mensaje de error al previsualizar o enviar el formulario.
Nota: Al referenciar una pregunta dentro de su propia lógica (es decir, en su propia fila), se puede usar un punto . como atajo.
hoja survey
type |
name |
label |
constraint |
|---|---|---|---|
integer |
household_size |
How many people live in your household? |
|
integer |
total_under18 |
Out of the ${household_size} people, how many are under the age of 18? |
. < ${household_size} |
survey |
Los operadores matemáticos se usan para realizar cálculos aritméticos con valores numéricos en el formulario. Los operadores matemáticos en XLSForm incluyen:
Operador |
Descripción |
|---|---|
|
Suma |
|
Resta |
|
Multiplicación |
|
División |
|
Módulo (resto de una división) |
Los operadores de comparación se usan para comparar valores. Los operadores de comparación en XLSForm incluyen:
Operador |
Descripción |
|---|---|
|
Igual a |
|
Mayor que |
|
Menor que |
|
Mayor o igual que |
|
Menor o igual que |
|
Distinto de |
Los operadores lógicos se pueden usar en XLSForm para combinar múltiples condiciones. Los operadores lógicos en XLSForm incluyen:
and (todas las condiciones deben cumplirse)
or (al menos una de las condiciones debe cumplirse)
not (las condiciones no deben cumplirse)
hoja survey
type |
name |
label |
constraint |
|---|---|---|---|
integer |
household_size |
How many people live in your household? |
|
integer |
total_under18 |
How many are under the age of 18? |
. < ${household_size} and . >= 0 |
survey |
Las funciones son operaciones predefinidas que se usan para realizar cálculos o manipular datos en XLSForm. Las funciones hacen que los cálculos y la lógica de formularios sean más eficientes al realizar automáticamente tareas complejas, como redondear valores, calcular potencias o extraer la fecha actual.
Para consultar una lista completa de funciones en XLSForm, ver Usar funciones en XLSForm.
Una expresión regular (regex) es un patrón de búsqueda que se usa para identificar caracteres específicos dentro de una cadena de texto. Se usa ampliamente para validar, buscar, extraer y restringir texto en la mayoría de los lenguajes de programación, incluyendo en KoboToolbox.
Las expresiones regulares se pueden usar en restricciones para controlar la longitud y los caracteres ingresados en una pregunta (por ejemplo, limitar la entrada de un número de teléfono a exactamente 10 dígitos, controlar el formato de números de identificación o verificar que una dirección de correo electrónico sea válida). También se pueden usar en cálculos y en otros tipos de lógica de formularios.
En KoboToolbox, las expresiones regulares se evalúan con la función regex(., ' '), donde la expresión regular se ingresa entre apóstrofos y el punto . representa la pregunta actual. regex(., ' ') devuelve TRUE si se cumple la expresión regular, y FALSE en caso contrario.
Para obtener más información sobre el uso de expresiones regulares en KoboToolbox, ver Usar expresiones regulares en XLSForm.
¿Encontraste lo que buscabas? ¿La información fue clara? ¿Faltaba algo?
¡Comparte tus comentarios para ayudarnos a mejorar este artículo!
KoboToolbox es mantenido por Kobo Inc.