Index one past the last row wanted, exclusive.
Active filters, keyed by column id. Empty when unfiltered.
Empty for the group level; the expanded group's value, as a string, when asking for the rows inside it.
Always empty. Present only for ag-grid wire compatibility.
Always false. Present only for ag-grid wire compatibility.
The column the grid is grouped by: one entry while grouped, empty otherwise. Only one level is supported.
Active sorts, primary first. Empty when unsorted.
Zero-based index of the first row wanted, inclusive.
The columns to aggregate on group rows, each with its HxColumnVO.aggFunc. Empty when not grouped.
What the grid asks the server for: one page, with the active sort and filters — and, while the grid is grouped, which level of the grouping.
Structurally compatible with ag-grid's
IServerSideGetRowsRequest, so an endpoint written for that model accepts this verbatim. Pivoting is not implemented, sopivotColsandpivotModeare always empty andfalse.Grouping follows the same server-side row model contract, one level deep:
rowGroupColsandgroupKeysare both empty. Return rows.rowGroupColshas one entry andgroupKeysis empty. Return one row per group, carrying the group value under the group column'sfield, eachvalueColsaggregate under that column'sfield, and the group's row count aschildCount(or wherever DataGridProps.getGroupChildCount reads it).lastRowis the number of groups.groupKeysholds the expanded group's value as a string. Return that group's rows, paged bystartRow/endRow, exactly as for an ungrouped request with an extra equality filter.Example: Handling the request on the server