Is it possible to show or hide a table column with 4GL?

LYCIA


Problem

Is it possible to show or hide a table column with 4GL?
I tried to use the UI associated methods but it doesn't work.

Solution

Yes, you need to read all columns from the table into DYNAMIC ARRAY OF ui.TableColumn:

DEFINE t_columns DYNAMIC ARRAY OF ui.TableColumn
--get all columns 
LET t_columns = ui.Table.ForName("tb_dynamic").GetTableColumns()
-- change column visibility
CALL t_columns[1].SetVisible(FALSE)
-- apply changes
CALL ui.Table.ForName("tb_dynamic").SetTableColumns(t_columns)