Class kartik\grid\FormulaColumn
Inheritance | kartik\grid\FormulaColumn » kartik\grid\DataColumn » yii\grid\DataColumn » yii\grid\Column » yii\base\BaseObject |
---|---|
Implements | yii\base\Configurable |
Uses Traits | kartik\grid\ColumnTrait |
Available since version | 1.0 |
A FormulaColumn to calculate values based on other column indexes for the Grid widget kartik\grid\GridView.
This extends and builds upon the kartik\grid\DataColumn in the kartik\grid\GridView widget.
To add a FormulaColumn to the gridview, add it to the columns configuration as follows:
'columns' => [
// ...
[
'class' => FormulaColumn::class,
// you may configure additional properties here
],
]
Public Properties
Property | Type | Description | Defined By |
---|---|---|---|
$attribute | string | The attribute name associated with this column. | yii\grid\DataColumn |
$autoFooter | boolean | Automatically generate the footer. | kartik\grid\FormulaColumn |
$columnKey | string | An unique identifier for the Column. | kartik\grid\ColumnTrait |
$content | callable | This is a callable that will be used to generate the content of each cell. | yii\grid\Column |
$contentOptions | array|Closure | The HTML attributes for the data cell tag. | yii\grid\Column |
$enableSorting | boolean | Whether to allow sorting by this column. | yii\grid\DataColumn |
$encodeLabel | boolean | Whether the header label should be HTML-encoded. | yii\grid\DataColumn |
$exportMenuHeaderStyle | array | Configuration for the \kartik\export\ExportMenu column header cell style that will be utilized by
\PhpOffice\PhpSpreadsheet\Style\Style::applyFromArray() . |
kartik\grid\DataColumn |
$exportMenuStyle | array|Closure | Configuration for the \kartik\export\ExportMenu column cell style that will be utilized by
\PhpOffice\PhpSpreadsheet\Style\Style::applyFromArray() . |
kartik\grid\DataColumn |
$filter | string|array|null|false | The HTML code representing a filter input (e.g. a text field, a dropdown list) that is used for this data column. | yii\grid\DataColumn |
$filterAttribute | string|null | The attribute name of the yii\grid\GridView::$filterModel associated with this column. | yii\grid\DataColumn |
$filterInputOptions | array | The HTML attributes for the filter input fields. | yii\grid\DataColumn |
$filterOptions | array | The HTML attributes for the filter cell tag. | yii\grid\Column |
$filterType | string | The filter input type for each filter input. | kartik\grid\DataColumn |
$filterWidgetOptions | array | The options/settings for the filter widget. | kartik\grid\DataColumn |
$footer | string | The footer cell content. | yii\grid\Column |
$footerOptions | array | The HTML attributes for the footer cell tag. | yii\grid\Column |
$format | string|array|Closure | In which format should the value of each data model be displayed as (e.g. "raw" , "text" , "html" ,
['date', 'php:Y-m-d'] ). |
yii\grid\DataColumn |
$grid | yii\grid\GridView | The grid view object that owns this column. | yii\grid\Column |
$group | boolean | Whether to group grid data by this column. | kartik\grid\DataColumn |
$groupEvenCssClass | string|\kartik\grid\Closure, | The even group css class. | kartik\grid\DataColumn |
$groupFooter | array|Closure | Configuration of the group footer which will be displayed as a separate row. | kartik\grid\DataColumn |
$groupHeader | array|Closure | Configuration of the group header which will be displayed as a separate row above the group. | kartik\grid\DataColumn |
$groupOddCssClass | string|\kartik\grid\Closure, | The odd group css class. | kartik\grid\DataColumn |
$groupedRow | boolean|\kartik\grid\Closure, | Whether to add a separate group row for grouping. | kartik\grid\DataColumn |
$hAlign | string | The horizontal alignment of each column. | kartik\grid\ColumnTrait |
$header | string|null | The header cell content. | yii\grid\Column |
$headerOptions | array | The HTML attributes for the header cell tag. | yii\grid\Column |
$hidePageSummary | boolean | Whether to just hide the page summary display but still calculate the summary based on $pageSummary settings | kartik\grid\ColumnTrait |
$label | string|null | Label to be displayed in the header cell and also to be used as the sorting link label when sorting is enabled for this column. | yii\grid\DataColumn |
$mergeHeader | boolean | Whether to merge the header title row and the filter row. | kartik\grid\ColumnTrait |
$noWrap | boolean | Whether to force no wrapping on all table cells in the column | kartik\grid\ColumnTrait |
$options | array | The HTML attributes for the column group tag. | yii\grid\Column |
$pageSummary | boolean|string|Closure | The page summary that is displayed above the footer. | kartik\grid\ColumnTrait |
$pageSummaryFormat | string|array|Closure | In which format should the value of each data model be displayed as (e.g. "raw" , "text" , "html" ,
['date', 'php:Y-m-d'] ). |
kartik\grid\ColumnTrait |
$pageSummaryFunc | string|Closure | The summary function that will be used to calculate the page summary for the column. | kartik\grid\ColumnTrait |
$pageSummaryOptions | array | HTML attributes for the page summary cell. | kartik\grid\ColumnTrait |
$sortLinkOptions | array | The HTML attributes for the link tag in the header cell generated by yii\data\Sort::link() when sorting is enabled for this column. | yii\grid\DataColumn |
$stripTagsFromExport | boolean | Whether to strip HTML tags from the column during export. | kartik\grid\ColumnTrait |
$subGroupOf | integer|Closure | The column index of which this group is a sub group of. | kartik\grid\DataColumn |
$vAlign | string | The vertical alignment of each column. | kartik\grid\ColumnTrait |
$value | string|Closure|null | An anonymous function or a string that is used to determine the value to display in the current column. | yii\grid\DataColumn |
$visible | boolean | Whether this column is visible. | yii\grid\Column |
$width | string | The width of each column (matches the CSS width property). | kartik\grid\ColumnTrait |
$xlFormat | string | The cell format for EXCEL exported content. | kartik\grid\DataColumn |
Protected Properties
Property | Type | Description | Defined By |
---|---|---|---|
$_clientScript | string | The internally generated client script to initialize | kartik\grid\ColumnTrait |
$_rows | array | Collection of row data for the column for the current page | kartik\grid\ColumnTrait |
$_view | yii\web\View | The view instance | kartik\grid\ColumnTrait |
Public Methods
Method | Description | Defined By |
---|---|---|
__call() | Calls the named method which is not a class method. | yii\base\BaseObject |
__construct() | Constructor. | yii\base\BaseObject |
__get() | Returns the value of an object property. | yii\base\BaseObject |
__isset() | Checks if a property is set, i.e. defined and not null. | yii\base\BaseObject |
__set() | Sets value of an object property. | yii\base\BaseObject |
__unset() | Sets an object property to null. | yii\base\BaseObject |
canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\BaseObject |
canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\BaseObject |
className() | Returns the fully qualified name of this class. | yii\base\BaseObject |
col() | Gets the value of a column | kartik\grid\FormulaColumn |
getDataCellValue() | Returns the data cell value. | yii\grid\DataColumn |
hasMethod() | Returns a value indicating whether a method is defined. | yii\base\BaseObject |
hasProperty() | Returns a value indicating whether a property is defined. | yii\base\BaseObject |
init() | Initializes the object. | kartik\grid\DataColumn |
initColumnSettings() | Initialize column settings | kartik\grid\ColumnTrait |
parseExcelFormats() | Parses Excel Cell Formats for export | kartik\grid\ColumnTrait |
renderDataCell() | Renders a data cell. | kartik\grid\DataColumn |
renderFilterCell() | Renders the filter cell. | kartik\grid\ColumnTrait |
renderFooterCell() | Renders the footer cell. | yii\grid\Column |
renderHeaderCell() | Renders the header cell. | kartik\grid\ColumnTrait |
renderPageSummaryCell() | Renders the page summary cell. | kartik\grid\ColumnTrait |
Protected Methods
Method | Description | Defined By |
---|---|---|
calculateSummary() | Calculates the summary of an input data based on page summary aggregration function. | kartik\grid\ColumnTrait |
checkValidFilters() | Checks if the filter input types are valid | kartik\grid\ColumnTrait |
fetchContentOptions() | Parses and fetches updated content options for grid visibility and format | kartik\grid\ColumnTrait |
getFooterCellContent() | Get the raw footer cell content. | kartik\grid\FormulaColumn |
getHeaderCellLabel() | Returns header cell label. | yii\grid\DataColumn |
getPageSummaryCellContent() | Gets the raw page summary cell content. | kartik\grid\ColumnTrait |
initColumnKey() | Initializes the column key | kartik\grid\ColumnTrait |
initGrouping() | Initializes grid grouping | kartik\grid\ColumnTrait |
initPjax() | Initialize column specific JS functionality whenever pjax request completes | kartik\grid\ColumnTrait |
isValidAlignment() | Check if the alignment provided is valid | kartik\grid\ColumnTrait |
parseFormat() | Parses and formats a grid column | kartik\grid\ColumnTrait |
parseGrouping() | Parses grid grouping and sets data attributes | kartik\grid\ColumnTrait |
parseVal() | Parses a value if Closure and returns the right value | kartik\grid\ColumnTrait |
parseVisibility() | Checks hidden property and hides the column from display |
kartik\grid\ColumnTrait |
renderDataCellContent() | Renders the data cell content. | yii\grid\DataColumn |
renderFilterCellContent() | Renders filter inputs based on the filterType |
kartik\grid\DataColumn |
renderFooterCellContent() | Formatted footer cell content. | kartik\grid\FormulaColumn |
renderHeaderCellContent() | Renders the header cell content. | kartik\grid\DataColumn |
renderPageSummaryCellContent() | Renders the page summary cell content. | kartik\grid\ColumnTrait |
setPageRows() | Store all rows for the column for the current page | kartik\grid\ColumnTrait |
Constants
Constant | Value | Description | Defined By |
---|---|---|---|
FOOTER | -20000 | kartik\grid\FormulaColumn | |
SUMMARY | -10000 | kartik\grid\FormulaColumn |
Property Details
Automatically generate the footer. If set to true
, it will use the same formula to generate the footer. If set to false
, will use the default footer.
Method Details
Gets the value of a column
public string col ( $i, $params = [] ) | ||
$i | integer | The index of the grid column (the first column in the grid will be zero indexed). Note a
column's index is to be considered, even if the |
$params | array | Which will contain these keys:
|
throws | yii\base\InvalidConfigException |
---|
Get the raw footer cell content.
protected string getFooterCellContent ( ) | ||
return | string | The rendering result |
---|
Formatted footer cell content.
protected string renderFooterCellContent ( ) | ||
return | string | The rendering result |
---|