Pages::getUiTable($param)
Version 4.1
Render pages in table
Version 4.1
Render pages in table
Render pages in html table using Taulukko viewtype.
Object UiTable
Render orders in table:
$uiTable = $Orders->getUiTable('client,order_date,total_amount');
You can add column preferences using colon. Set width and align:
$uiTable = $Orders->getUiTable('client, order_date, total_amount:100:right');
String definition allows linebreaks:
$uiTable = $Orders->getUiTable('
client,
order_date,
total_amount : 100 : right
');
Any argument not recognized as keyword is treated as title:
$uiTable = $Orders->getUiTable('
client : Client name,
order_date.getDaysTo() : Days to,
total_amount : Total : 100 : right
');
Column arguments can be given as array. You can mix string definitions and array definitions:
$uiTable = $Orders->getUiTable(Array(
'columns' => Array(
'client',
'order_date.getDaysTo() : Days to',
Array(
'field' => 'total_amount',
'content' => 'total_amount.getValue() eur',
'title' => 'Total',
'width' => 100,
'sum' => true,
'align' => 'right'
)
)
));
Argument | Description |
---|---|
header | Make column a header column |
freeze | Freeze column |
{numeric} | Width in pixels |
sum | Count coilumn sum |
{align} | left, right, center |
{color} | Text color |
{size} | Text size: Mini, small, Normal, Large, Jumbo |
bg-{color} | Taustaväri |
border-left | Add right border |
border-right | Add right border |
border-{color} | Border color |
{anytext} | Title |
You can set table to be selectable:
$uiTable = $Orders->getUiTable(Array(
'selectable' => 'form_name', // name='form_name[]' value='$id'
'columns' => 'client,order_date,total_amount'
));
You can set parameters before rendering to be selectable:
$uiTable = $Orders->getUiTable('client,order_date,total_amount')
->setParam('view/'link', 'workspace/order_center');
You can use nay Taulukko viewtype preferences:
$uiTable = $Orders->getUiTable(Array(
'view' => Array(
'cols' => Array(
'rownumber' => 1,
'select' => 1,
'edit' => 1,
'title' => Array(
'show' => 1,
'width' => 200
),
'color' => 1,
'info' => 1
)
),
'dataSource' => Array(
'columns' => 'order_date,total_amount',
'title' => 'client',
'description' => 'client.address.town',
'color' => Array(
'show_default' => 0
)
)
));