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
  • Sintaxis 1: Iterar sobre los elementos de control
  • Sintaxis 2: Navegando por los elementos seleccionados de control
  • Navegar por las filas de un control Tabla
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 instrucción FOR EACH se usa para realizar diferentes tipos de navegación en los controles (controles List Box, Table o Looper):
  • Navegando por los elementos de control.
  • Visualización de los valores de los elementos seleccionados.
  • Navegar por los subíndices de los elementos seleccionados.
Observación: Se aceptan las sentencias FOR ALL, FOR EACH. La instrucción FOR EACH se usará en esta documentación, pero se puede reemplazar con FOR ALL .
Limitación: Esta declaración no se puede utilizar en los controles Combo Box.
La instrucción FOR EACH también se puede utilizar para navegar por los objetos.net que implementan la interfaz IEnumerable.
Ejemplo
// For each user selected in TABLE_User
FOR EACH SELECTED ROW OF TABLE_User
// Send an email
Proc_SendMessage(COL_Name, COL_Email)
END
Sintaxis

Navegación por los elementos de control (Tabla, Caja de Listas y Looper) Ocultar los detalles

FOR EACH ROW [<Index> [, <Counter>]] OF <Control>
  ...
END
<FOR EACH ROW>:
Marca el inicio del bloque de instrucciones.
<Subscript>:
Variable opcional de tipo Integer. Por cada iteración, contiene el índice de la fila actual.
<Counter>:
Variable opcional de tipo Integer. Esta variable cuenta el número de iteraciones.
<Control>:
control para navegar: List Box, Tabla o control Looper.

Navegando por los elementos seleccionados Ocultar los detalles

FOR EACH SELECTED ROW [<Index>, [<Counter>]] OF <Control>

    ...
END
<FOR EACH SELECTED ROW>:
Marca el inicio del bloque de instrucciones.
<Subscript>:
Variable de tipo Integer. Por cada iteración, contiene el índice de la fila actual seleccionada.
<Counter>:
Variable opcional de tipo Integer. Esta variable cuenta el número de iteraciones (número de filas seleccionadas, por ejemplo).
<Control>:
control para navegar: List Box, Tabla o control Looper.
Observaciones

Sintaxis 1: Iterar sobre los elementos de control

Esta sintaxis se utiliza para recorrer todas las filas, Visible o no, de un Cuadro de Lista, Tabla o control Looper.
Por cada fila navegado:
  • devuelve el índice del fila actual . <Índice> también se puede utilizar para averiguar el índice del fila actual .
  • [] devuelve todas las columnas separadas por caracteres TAB. Esta sintaxis es equivalente a <Nombre control>[<Índice>].
  • devuelve el valor de la columna de la fila actualmente consultada.
La navegación no tiene ningún efecto sobre la selección actual.
El comportamiento es indefinido si el número de elementos de control se modifica durante la navegación.

Sintaxis 2: Navegando por los elementos seleccionados de control

Esta sintaxis se utiliza para recorrer todas las filas seleccionadas, Visible o no, de un Cuadro de Lista, Tabla o control Looper.
Por cada fila navegado:
  • devuelve el índice del fila seleccionado en ese momento . <Índice> también puede utilizarse para averiguar el índice del fila seleccionado en ese momento.
  • [] devuelve todas las columnas separadas por caracteres TAB.
  • devuelve el valor de la columna de la fila actualmente consultada. También puede usar la siguiente sintaxis: <Columna>[<Índice>]
Cambio de comportamiento en la versión 12: Antes de la versión 12, la operación de navegación no tenía ninguna influencia en la selección actual. A partir de ahora, la fila actual en el tabla se mueve siempre durante la navegación.
El comportamiento es indefinido si el número de elementos de control se modifica durante la navegación.

Navegar por las filas de un control Tabla

Al navegar por las filas de un control Tabla:
  • la pantalla de esta control Tabla está bloqueada. MultitaskRedraw no se tiene en cuenta.
  • las filas seleccionadas y/o la fila actual no deben ser modificadas (TableSelectMinus, TableSelectPlus, ...).
  • para un control Tabla de navegación, en el bucle de navegación, el Record actual es el Record procesado por la navegación.
Versión mínima requerida
  • Versión 10
Esta página también está disponible para…
Comentarios
FOR EACH ROW... Locks the display of the Table
If you try to use For Each Row of table... to alter the display of a table -
This will not work.
FOR EACH ROW of Table_SomeData
If col_amount < 0 Then
col_Amount..brushcolor = LightRed
END
END
This does work-
FOR Row = 1 _to_ Table_SomeData..occurrence
If Table_SomeData[nRow].col_amount < 0 Then
Table_SomeData[nRow].col_Amount..brushcolor = LightRed
END
END

Chris
01 03 2018

Última modificación: 07/04/2023

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