ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Controls, pages and windows / Table functions
  • Characteristics of inserted row
  • Position of inserted row
  • Limitations: Maximum number of rows displayed
  • Miscellaneous
  • Adding rows
  • Cascading input
  • Table or TreeView Table control based on a data file: Modifications in the linked data file
  • Table or TreeView Table control based on a data file: Inserting several rows
  • Inserting images
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Inserts a row into:
  • a Table control,
  • a TreeView Table control,
Remarks:
Example
// Insert the "Vince" and "Moore" elements
// in the 5th row of "TABLE_CustomerTable" control
ResInsert = TableInsert(TABLE_CustomerTable, "Vince" + TAB + "Moore", 5)
Syntax
<Result> = TableInsert(<Table control> [, <Row> [, <Index>]])
<Result>: Boolean
  • True if the element was inserted,
  • False otherwise.
<Table control>: Control name
Name of the control to be used. This control can correspond to:
  • a Table control.
  • a TreeView Table control.
If this parameter corresponds to an empty string (""), the control used will be the control to which the current event belongs.
<Row>: Optional character string
Row to insert. This row has the following format:
<Element column1> + TAB + <Element column2> + TAB + ...

If this parameter is not specified, an empty row is inserted into the control. For a control based on a data file, the default values defined in the linked data file are taken into account.
<Index>: Optional integer
Index of the row to insert. The index of the first row is set to 1.
Index not specifiedThe row is inserted before the current row. If no row is selected, the row is inserted at the bottom of the control.
Index greater than the number of control rows.The row is inserted at the bottom of the control.
Index equal to 0The row is inserted at the beginning of the control.
Index equal to -1The row is inserted before the current row.
Remarks
TableInsert can be used on:
  • a Table or TreeView Table control based on a data file.
  • a Table or TreeView Table control populated programmatically.
  • a single-selection or multi-selection control.
    WEBDEV - Server codePHP Reminder: Multi-selection is not available for Table controls in "Server" mode.
WEBDEV - Server codePHP This function is available for Table controls in "Server" and "Server + AJAX" mode, and for TreeView Table controls.
WEBDEV - Browser code This function is available for Table controls in "Browser" mode only.
WEBDEV - Browser code The TreeView Table control is not available.

Characteristics of inserted row

  • Each inserted element is converted into the type of relevant column.
  • To specify no value for an element, use an empty string ("") or 0 (according to the type of column). For example:
    TableInsert(TABLE_CustomerTable, "Moore" + TAB + "Vince" + TAB + "" + TAB + "06/21/72")
  • If an element corresponds to the calculation result, the numeric expression must be enclosed in brackets. For example:
    TableInsert(TABLE_CalcTable, (53+29) + TAB + (83-21))

Position of inserted row

By default, the row is inserted at the specified position.
Special cases:
  • If the control is sorted with TableSort, the new row is positioned according to the current sort and not the specified index.
  • If the control is sorted by the user, the sort is ignored when inserting the row. The row is inserted at the specified position.

Limitations: Maximum number of rows displayed

The maximum number of rows that can be displayed in a Table or TreeView Table control is limited by the amount of available memory (theoretical maximum: 2 billion rows).
However, we do not advise you to use large Table or TreeView Table controls for performance and user-friendliness reasons (time required to fill the control for example).

Miscellaneous

To add rows at the end of a Table or TreeView Table control, use TableAddLine.
WEBDEV - Server codePHP

Adding rows

The NewLine property is used to determine if the current row has just been created by TableInsert (NewLine = True).
WEBDEV - Server codePHP

Cascading input

To perform a cascading input, TableInsert must be used in the "Exit from a row" event of the Table control:
IF TABLE_CustomerTable.NewLine = True THEN
TableInsert(TABLE_CustomerTable)
END
WEBDEV - Server codePHP This operating mode is available for Table controls in Ajax mode only.
WEBDEV - Server codePHP

Table or TreeView Table control based on a data file: Modifications in the linked data file

If the cascading input is enabled, the content of data file linked to the control is automatically modified when the user goes to the next row.
If the cascading input is not enabled, the content of data file linked to the control is not modified. To write the content of inserted row into the data file, TableSave must be called after TableInsert.
Remarks:
  • The "Cascading input (Add)" option can be selected in the "Details" tab of the control description.
  • WEBDEV - Server code Cascading input is only available for "Server + AJAX" Table controls based on a data file.
WEBDEV - Server codePHP

Table or TreeView Table control based on a data file: Inserting several rows

A virtual row is created each time TableInsert is called in a Table or TreeView Table control based on a data file. The information will be saved in the data file during the call to TableSave.
If TableInsert is successively called in the same process without being followed by TableSave, only the FIRST call is effective (the following calls are ignored). Only one row is added to the Table or TreeView Table control.
WEBDEV - Server codePHP This operating mode is only available for "Server + AJAX" Table controls based on a data file.

Inserting images

To insert an image into a Table control:
  • WEBDEV - Server codePHP specify the path and name of image to insert. The path is relative to the "<Project_Name>_WEB" directory. For example:
    // Adds the image found in the "WB_MyApp_WEB" directory
    TableInsert(TABLE_MyTable, "MyImage.BMP")
Remark: The column must be an Image column otherwise the added image will not be displayed properly.
Component: wd290obj.dll
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 06/23/2022

Send a report | Local help