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 / Desarrollar una aplicación o un sitio web / Controles, ventanas y páginas / Controles: tipos disponibles / Control Tabla / Tabla rellenada mediante programación
  • Presentación
  • Inicialización de una población control Tabla mediante programación
  • Añadir filas en un control Tabla rellenado mediante programación
  • Gestión de columnas calculadas
  • Modificar una fila o una columna
  • Forzar la entrada
  • Agregar o eliminar una columna
  • Operaciones en las líneas y celdas
  • Eliminar una fila
  • Obtener el contenido de una fila o celda
  • Valor de una celda en la fila actual
  • Valor de una celda en una fila específica
  • Contenido de la fila actual
  • Contenido de una fila específica
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 presenta los principales conceptos para manipular controles Tabla mediante programación en WLanguage.
WLanguage incluye varias funciones para manipular este tipo de control en el código. Para saber más sobre estas funciones, consulte la documentación.
Para obtener más información, consulte Funciones de gestión de controles Tabla.
Inicialización de una población control Tabla mediante programación
Las filas no se crean automáticamente en los controles Tabla. Se debe especificar llamando a las siguientes funciones:
  • <Table>.Add o <Tabla>.AddLine: agrega una fila al final del control Tabla.
  • .Insert o <Tabla>.InsertLine: agrega una fila en el índice especificado o en el índice actual.
    Observación: si la opción "Entrada en cascada (Agregar)" no está seleccionada:
    • El control Tabla no contiene filas cuando se crea:
      TABLE_MyTable.Count = 0.
      En este caso, no se permite ninguna entrada y el valor de la propiedad Empty se establece en True.
    • Para insertar filas automáticamente en un control Tabla, escriba las siguientes líneas de código en el evento "Inicialización" del control:
      IF TABLE_MyTable.Empty = True THEN TABLE_MyTableAdd()
    Añadir filas en un control Tabla rellenado mediante programación
    Puede agregar filas a un control Tabla:
    .Insert: en una fila, el valor de cada columna está separado por TAB.
    WINDEVWEBDEV - Código ServidorJavaPHP Si se agregó una nueva fila en un control Tabla con <Table>.Add,
    .Insert, <Tabla>.AddLine o <Tabla>.InsertLine, la propiedad New se establece en True (de lo contrario, se establece en False).
    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. Por ejemplo:
    // COL_PBT: calculated column
    // COL_UPBT and COL_QTY: columns populated programmatically
    COL_PBT = COL_UPBT * COL_QTY
    Modificar una fila o una columna
    El contenido de las filas y columnas de un control Tabla puede ser modificado:
    • por el usuario, introduciendo los datos directamente en las columnas. Los cambios se guardan automáticamente en el control Tabla (no se requiere ningún código adicional). La propiedad Modified se establece en True.
    • mediante programación:
      • con la función <Tabla>.Modify para cambiar el contenido de la fila actual o de una fila determinada.
        Por ejemplo:
        TABLE_CUSTOMER.Modify("MOORE" + TAB + "Vince" + TAB + "Miami")

        Observación: también es posible utilizar el nombre del control Tabla directamente:
        // Modify the current row
        TABLE_CUSTOMER = "MOORE" + TAB +"Vince" + TAB + "Miami"
        // Modify row 3
        TABLE_DAY.Modify("Wednesday" + TAB + "Off", 3)
      • especificando directamente el nombre de la columna para cambiar el contenido (como para un control Campo de entrada). Para modificar la columna de una fila determinada, se debe especificar el número de fila (índice).
        Por ejemplo:
        COL_NAME[Index] = EDT_CustomerName

        Para modificar la columna de la fila actual, no es necesario especificar el índice. Por ejemplo:
        COL_NAME = EDT_CustomerName

        La propiedad Modified se establece en False (solo se establece en True cuando se introducen datos en el control Tabla).
    WINDEVWindowsJavaCódigo de Usuario (UMC)

    Forzar la entrada

    la función SetFocusAndReturnToUserInput reanuda la entrada en la columna de la fila actual.
    Por ejemplo:
    // Entry process in the COL_QTY column
    // COL_QTY cannot be entered,
    // if COL_PRODUCT is not entered
    IF NoSpace(COL_PRODUCT) = "" THEN
    Error("The Product column must be entered first")
    SetFocusAndReturnToUserInput(COL_PRODUCT)
    END
    WINDEVWEBDEV - Código ServidorWindowsJavaCódigo de Usuario (UMC)

    Agregar o eliminar una columna

    Es posible:
    • Agregar una columna a un control Tabla rellenado mediante programación con la función ControlClone.
    • Eliminar una columna de un control Tabla rellenado mediante programación con la función ControlDelete.
    Operaciones en las líneas y celdas

    Eliminar una fila

    Puede eliminar filas llamando a la función
    .Delete. La sintaxis utilizada es la siguiente:
    <Table control>.Delete([<Index>])
    Si se especifica un índice, la función
    .Delete elimina la fila que corresponde al índice. De lo contrario, se elimina la fila actual. Por ejemplo:
    TABLE_CUSTOMER.Delete()
    Una fila se puede seleccionar con la función <Tabla>.SelectPlus.
    La sintaxis utilizada es la siguiente:
    <Table control>.SelectPlus([<IIndex>])

    Obtener el contenido de una fila o celda

    El contenido de un control Tabla rellenado mediante programación puede obtenerse:
    • para toda la fila.
    • celda por celda.

    Valor de una celda en la fila actual

    Para obtener el valor de una columna (o celda) de la fila actual, la sintaxis es la misma que la de un control campo de entrada simple.
    <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

    Para obtener el valor de una columna que no se encuentra en la fila actual, se debe especificar el índice de la fila.
    <Value> = <Column name>[<Index>]
    Por ejemplo:
    // Add the total price before tax (PBT) for all the order lines
    TotalPrice = 0
    FOR Index = 1 _TO_ TABLE_ORDER.Count
    TotalPrice = TotalPrice + COL_PBT[Index]
    END

    Contenido de la fila actual

    Para obtener el contenido de la fila actual, utilice la siguiente sintaxis:
    <Value> = <Table control>

    Contenido de una fila específica

    Para obtener el contenido de la fila en el índice <Index>, utilice la siguiente sintaxis:
    <Value> = <Table control>[<Index>]

    Observación: El índice de la fila actual se puede obtener utilizando la función <Tabla>.Select.
    Por ejemplo:
    // Retrieve row #10 in the TABLE_CUSTOMER control
    CurrentRow = TABLE_CUSTOMER[10]
     
    // Name of selected customer
    CustomerName = COL_NAME[TABLE_CUSTOMER.Select()]
     
    // Retrieve the current row in the TABLE_CUSTOMER control
    CurrentRow = TABLE_CUSTOMER
Versión mínima requerida
  • Versión 23
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 27/05/2022

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