Pages::getUiTable($param)

Version 4.1

Render pages in table

Render pages in html table using Taulukko viewtype.

Return value

Object UiTable

Arguments

$param
string Column definitions
array Viewtype preferences

Example

Render orders in table:

$uiTable = $Orders->getUiTable('client,order_date,total_amount');

Full documentation

Column preferences

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'
        )
    )
));

String definition arguments

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

Table preferences

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
        )
    )
));