> For the complete documentation index, see [llms.txt](https://docs.skyone.cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.skyone.cloud/espanol/skyone-studio/integraciones/flujos/modulos-de-herramientas/modulo-bucle-do-while.md).

# Módulo Bucle Do While

* [Definición](#definicion)
* [Configuración del módulo](#configuracion-del-modulo-loop-do-while)
  * [Cree sus condicionales](#cree-sus-condicionales)
    * [Parámetro](#parametro)
  * [Ejemplo](#ejemplo)

***

### Definición

El módulo de herramientas **"Bucle Do While"**, módulo estándar de **Skyone Studio** para uso en cualquier flujo, fue creado para procesar datos externos relacionados con la cantidad de registros, sobre los cuales no tenemos información previa. Es útil debido a la necesidad de realizar una o más iteraciones para consumir todos los datos en un flujo, un proceso también conocido como **lectura paginada**.

El módulo **"Bucle Do While"** está compuesto por dos operaciones: **DO** y **WHILE**, que marcan respectivamente el inicio y el fin de una repetición (loop).

La estructura de este tipo de loop puede representarse de la siguiente manera:

```javascript
var loop_count = -1;
do 
{
    loop_count ++;
    //bloque de código que será ejecutado
}while(condition);
```

Observe que el **DO** se inicializa con el valor `loop_count = -1`, pero la primera instrucción ejecutada es su incremento a “0”. Esto mantiene la consistencia con el [**FOR**](/espanol/skyone-studio/integraciones/flujos/modulos-de-herramientas/modulo-bucle-for.md), en el cual la primera ejecución del loop también tiene el valor “0”. Además, al igual que en el FOR, la variable **loop\_count** también contiene, al salir del loop, el valor de la cantidad de ejecuciones menos uno.

Para representar el **loop\_count** (contador del loop), la operación **DO** del módulo **Do While** inicializa y mantiene un parámetro equivalente, que podrá ser accedido por cualquier módulo conectado al flujo, denominado **loopCount**. Este parámetro almacena la posición de ejecución del flujo, comenzando con el valor “0” en la primera ejecución e incrementándose en cada iteración.

***

### Configuración del módulo Loop Do While

El módulo **"Bucle Do While"** aparece en la opción **Herramientas** dentro de la edición de un flujo. Después de hacer clic para añadirlo, se mostrará la ventana modal de configuración.

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

{% hint style="info" %}
[Consulte sobre el **Encabezado del Módulo** aquí.](/espanol/skyone-studio/integraciones/encabezado-de-los-modulos.md)
{% endhint %}

***

### Cree sus condicionales

En el área de **"Cree su condicional"**, encontrará los siguientes campos y opciones:

* **Satisfacer todas**: si desea que se cumplan todas las condiciones configuradas;
* **Satisfacer cualquiera**: cuando no es necesario cumplir todas las condiciones configuradas;
* **Variable 1**: escriba o arrastre un parámetro de otro componente del flujo para definir una variable de comparación, o utilice una **SMOP** (en el ícono de +);
* **Condiciones**: comparaciones entre dos valores (igual, diferente de, mayor que, menor que, etc.);
* **Variable 2**: escriba o arrastre un parámetro de otro componente del flujo para definir otra variable de comparación, o utilice una **SMOP** (en el ícono de +);
* **Agregar condición**: haga clic para añadir una condición adicional;
* **Validar**: haga clic para validar las condiciones;
* **Resultado**: indica si la condición informada es verdadera o falsa (**True/False**).

<figure><img src="/files/3mlqirHjrdm8ruw08A1X" alt=""><figcaption></figcaption></figure>

### Parámetro

El parámetro **loopCount** de la operación **DO** siempre está disponible para cualquier módulo dentro del loop y también después de su ejecución, apareciendo en el lado izquierdo de la ventana modal de configuración de cada operación del flujo, siempre que las operaciones estén conectadas mediante las líneas del flujo.

Después de la finalización del loop, el parámetro **loopCount** contendrá el total de ejecuciones menos 1 (ya que la variable comienza en 0).

Para finalizar la configuración del módulo, haga clic en **"Guardar"**.

***

### Ejemplo

El módulo **"Bucle Do While"** requiere que otro módulo esté conectado a él. Observe el ejemplo:

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


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.skyone.cloud/espanol/skyone-studio/integraciones/flujos/modulos-de-herramientas/modulo-bucle-do-while.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
