> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/spanish/function-blocks/blocks-reference/data-logic/data-operations/is-none.md).

# Is None

Un bloque de utilidad sencillo que comprueba si un valor dado falta (`None`) y devuelve un resultado booleano. Úsalo para proteger la lógica y evitar errores cuando un bloque anterior puede no proporcionar un valor.

## 📥 Entradas

`Generic`\
Un valor a comprobar. Puede ser cualquier tipo de dato o una salida de imagen de otro bloque.

## 📤 Salidas

`Boolean`\
Devuelve True cuando la entrada es `None`, de lo contrario False.

## 🕹️ Controles

Este bloque no tiene controles configurables por el usuario.

## ✨ Features

* Verificación directa de presencia para cualquier dato entrante.
* Útil para dirigir flujos condicionales o activar comportamientos de reserva.
* Ligero y seguro de colocar antes de bloques que requieren datos válidos.

## 📝 Usage

* Conecta la salida de cualquier bloque a la entrada `Generic` para comprobar si ese bloque actualmente proporciona un valor.
* Usa la salida `Boolean` para controlar bloques lógicos (por ejemplo, para condicionar procesamiento, reiniciar flujos o habilitar acciones de respaldo).
* Coloca este bloque antes de bloques que fallarían o producirían resultados no deseados al recibir datos faltantes.

## 📊 Evaluation

Al evaluarse, el bloque devuelve un único valor booleano que indica si la entrada proporcionada falta. Esta salida puede usarse inmediatamente en operaciones lógicas o para activar pasos de recuperación.

## 💡 Tips and Tricks

* Combínalo con `Replace None` para suministrar automáticamente un valor de reserva cuando la entrada falte.
* Úsalo con `Data Memory` para congelar o mantener un valor válido previo y evitar la propagación repetida de None.
* Dirige el resultado a bloques lógicos como `Not`, `And` o `Or` para construir flujos condicionales complejos.
* Alimenta el booleano a `Set - Reset` o `All True` al implementar controles multi-condición o comportamiento de enclavamiento.
* Usa `Debug Input` para registrar o inspeccionar la entrada antes y después de la comprobación durante la configuración y solución de problemas.
* Al proteger cadenas de procesamiento de imágenes, combínalo con bloques de visualización/exportación como `Show Image` o `Image Logger` para pasar únicamente imágenes válidas a visores o destinos de archivo.

## 🛠️ Troubleshooting

* Si el bloque siempre devuelve True, verifica que el bloque aguas arriba esté conectado y produzca datos.
* Si el comportamiento es intermitente, considera mantener valores válidos con `Data Memory` o registrar las entradas con `Debug Input` para ver cuándo faltan los datos.
