AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Sintaxis WLanguage / Instrucciones estructuradas
  • Otras sentencias utilizadas para salir de un bucle
  • Ejemplo de uso de la etiqueta "BREAK:".
  • Declaración "BREAK:".: Caso de bucles anidados
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
La palabra clave BREAK puede corresponder:
  • a la instrucción BREAK:
    La instrucción BREAK se usa para salir de un bloque de instrucción y ejecutar el resto del Process actual.
    La instrucción BREAK se puede utilizar en los siguientes tipos de bucles: Observación: La declaración BREAK no se puede usar para salir de un Procedure. Utilice las palabras clave RETURN y RESULTADO.
  • al BREAK: etiqueta:
    La etiqueta "BREAK:" se utiliza para declarar un código en un bucle.
    • Este código se ejecutará al salir del bucle con una sentencia "BREAK.
    • Este código nunca se ejecutará para cada iteración del bucle.
Sintaxis

La declaración BREAK utilizada en una declaración FOR

FOR <Control variable> = <Initial value> TO <Final value> [STEP <x>]
  ...
  IF <Condition> THEN BREAK
  ...
END
<Rest of process>

La declaración de BREAK usada en una declaración de FOR EACH

FOR EACH <File> ON <Key item>
  ...
  IF <Condition> THEN BREAK
  ...
END
<Rest of process>

La declaración BREAK utilizada en una declaración LOOP

LOOP
  ...
  IF <Condition> THEN BREAK
  ...
END
<Rest of process>

La declaración de BREAK utilizada en una declaración de WHILE

WHILE <Condition>
  ...
  IF <Condition> THEN BREAK
  ...
END
<Rest of process>
The following operations are performed if <Condition> is True:
- Exit statement block.
- Run the rest of the current process.
Observaciones

Otras sentencias utilizadas para salir de un bucle

Hay varias declaraciones disponibles:
  • RETURN: Salir del bucle y de la Process actual (o Procedure).
  • RETURN: Devuelva un estado reporte al llamado Process. Salir del bucle y de la Process actual (o Procedure).
Cerrar se utiliza para salir del bucle y cerrar la ventana actual.
Atención: RETURN y RETURN no pueden utilizarse en el mismo Process.

Ejemplo de uso de la etiqueta "BREAK:".

En este ejemplo, se visualiza el total que representa la suma de las últimas 10 facturas..
NbInvoices is int
TotalOfInvoices is currency
 
NbInvoices = 0
// Iterate over invoices starting from last invoice
HReadLast(ORDER, OrderNumber)
WHILE NOT HOut()
 
IF NbInvoices >= 10 THEN BREAK // Jump directly to the BREAK: label
// Adds the invoices
TotalOfInvoices += ORDER.TotalInclTax
NbInvoice ++
 
HReadPrevious(ORDER, OrderNumber)
BREAK:
// Exits from the loop after 10 iterations
Info("The total for the last 10 invoices is: ", TotalOfInvoices)
END

Declaración "BREAK:".: Caso de bucles anidados

Cuando hay varios bucles anidados, es posible que tenga que salir de una iteración para volver al nivel anterior o incluso a un nivel superior.
Para ello, la sentencia BREAK acepta un parámetro que indica el número de niveles a subir para la salida. La sintaxis es la siguiente:
BREAK(<Number of levels>)
donde es un número entero entre 1 y N, N representa el número de niveles anidados para el bucle.
Por ejemplo:
x, y, z are int

FOR x = 1 TO 15 // Loop 1
FOR y = 1 TO 25 // Loop 2
FOR z = 1 TO 50 // Loop 3
IF <My condition is checked> THEN
BREAK(2) // Exits from loop 3 and loop 2
// and goes to the next iteration in loop 1
END
END
END
END
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 18/04/2023

Señalar un error o enviar una sugerencia | Ayuda local