AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Ayuda / Desarrollar una aplicación o un sitio web / Controles, ventanas y páginas / Controles: tipos disponibles / Control Tabla / Tabla basada en un archivo de datos
  • Presentación
  • Seleccionar, agregar y modificar una fila en un control Tabla basado en un archivo de datos
  • Eliminar una fila de un control Tabla basado en un archivo de datos
  • Gestión de columnas calculadas
  • Obtener el contenido de una fila, columna o celda
  • Importante
  • Valor de la celda en la fila actual
  • Valor de una celda en una fila específica
  • Contenido de la fila actual
  • Contenido de la fila X
  • Contenido de las filas seleccionadas en una selección múltiple
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
Presentación
Esta página explica cómo programar controles Tabla basados en un archivo de datos. Existen varias funciones WLanguage para manipular este tipo de controles Tabla mediante programación.
Para saber más sobre estas funciones, consulte la documentación. Para obtener más información, consulte: Lista de funciones específicas de los controles Tabla.
Seleccionar, agregar y modificar una fila en un control Tabla basado en un archivo de datos
Una fila se puede seleccionar con la función TableSelectPlus.
Si no define ningún campo almacenado para el control Tabla, utilice la siguiente sintaxis:
<Table control> = <Number of row to select>
Para agregar y modificar filas en el control Tabla (o registros en el archivo de datos), siga los siguientes pasos:
  1. Agregue o modifique el registro en el archivo de datos (a través de una ventana o página de formulario, por ejemplo).
  2. Vuelva a cargar el control Tabla:
    • WINDEVAndroidiPhone/iPad actualice el control Tabla.
    • WEBDEV - Código Servidor actualice la página.
Eliminar una fila de un control Tabla basado en un archivo de datos
Para eliminar una fila del control Tabla basado en un archivo de datos, utilice la función TableDelete. La función TableDelete elimina el registro correspondiente del archivo de datos.
WEBDEV - Código Servidor En WEBDEV, la página debe volver a mostrarse.
Importante: Para eliminar un registro del archivo de datos, no utilice la función HDelete, de lo contrario podría perder los datos.
Gestión de columnas calculadas
La fórmula de cálculo de una columna calculada debe definirse en el evento "Visualización de una fila" de un control Tabla.
Ejemplo de código en el evento "Visualización de una fila" del control Tabla:
// COL_AlertMsg: a calculated column
// The COL_AlertMsg column displays "Alert" if COL_Stock<200
IF COL_Stock < 200 THEN
COL_AlertMsg = "Alert"
ELSE
COL_AlertMsg = ""
END

De forma predeterminada, una columna calculada no está enlazada a un campo: el valor asignado en el código de visualización de una fila se pierde al desplazarse verticalmente por las filas de un control Tabla.
Por ejemplo, no se puede utilizar la instrucción "FOR EACH LINE" para asignar u obtener el valor de una columna calculada en todas las filas del control Tabla.
Si el control Tabla utiliza una fuente de datos en memoria (opción "Cargado en memoria" seleccionada en la pestaña "Contenido" de la ventana de descripción del control), el valor de las columnas calculadas no se perderá en tiempo de ejecución.
Obtener el contenido de una fila, columna o celda

Importante

El contenido de una fila de un control Tabla basado en un archivo de datos puede obtenerse:
  • recuperando toda la fila.
  • celda por celda.

Valor de la celda en la fila actual

La celda se identifica con el nombre de la columna. Se debe utilizar la siguiente sintaxis:
<Value> = <Column name>
Ejemplo:
// COL_QTY is a column of the Table control
IF COL_QTY < 10 THEN
Info("Insufficient quantity")
END

Valor de una celda en una fila específica

La celda se identifica con el nombre de la columna. Se debe utilizar la siguiente sintaxis:
<Value> = <Column name>[<Row index>]
Ejemplo:
// Adds the price found in the COL_PBT column  
// for all the order lines displayed
TotalPrice = 0
FOR Index = 1 TO TABLE_ORDER.Count
TotalPrice = TotalPrice + COL_PBT[Index]
END

Contenido de la fila actual

Se debe utilizar la siguiente sintaxis:
<Value> = <Table control>
También puede usar la siguiente sintaxis:
<Value> = <Table control>[<Table control>]

Contenido de la fila X

Se debe utilizar la siguiente sintaxis:
<Value>=<Table control>[<Row index>]
Observación: La función TableSelect devuelve el índice de la fila.
// Retrieves the current row in TABLE_CUSTOMER
CurrentRow = TABLE_CUSTOMER
 
// Name of the selected customer
CustName = COL_NAME[TableSelect(TABLE_CUSTOMER)]

Contenido de las filas seleccionadas en una selección múltiple

Se debe utilizar la siguiente sintaxis:
<Value>=<Table control>[<Row index>]
Observación: Para obtener los índices de las filas seleccionadas, utilice las funciones TableSelectCount y TableSelect.
// Traces the content of the selected rows
i is int
NbSelected is int = TableSelectCount(TABLE_Product)
FOR i = 1 TO NbSelected
Trace("Selected row: " + ...
TABLE_Product[TableSelect(TABLE_Product, i)])
END
 
// Equivalent to:
// FOR EACH SELECTED ROW OF TABLE_Product
// Trace("Selected row: " + TABLE_Product[TableSelect(TABLE_Product, i)])
// END

Observación: Los controles Tabla de selección múltiple basados en un archivo de datos no están disponibles:
  • Si el control Tabla contiene barras de desplazamiento proporcionales.
  • Si el control Tabla es "Compatible con la versión 5.5".
  • En controles Tabla que se muestran en un Combo Box.
Observación: La propiedad Multiselection permite obtener el modo de selección de un control Tabla.
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: 09/09/2022

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