queryConvertForGrid
Description
Converts query data to a structure that contains a paged subset of the query. Used in CFC functions that return data to Ajax format cfgrid controls in response to a bind expression.
Categories
Related
History
ColdFusion
8: Added this function.
Syntax
QueryConvertForGrid(query, page, pageSize)
Attributes
| Attribute | Description | Required | Default |
|---|---|---|---|
| page | The specific page of query data to be returned. Pages are numbered starting with 1. | ||
| pageSize | Number of rows of query data on a page. | ||
| query | Name of the query whose data is returned. |
Returns
A structure
that contains one page of data from the query.
Usage
You can also create the return value for a cfgrid bind CFC without using this function if your query returns only a single grid page of data at a time. For more information see Using Ajax User Interface Components and Features in the Developing ColdFusion Applications.
Example
The
following example shows how a CFC function that is called by an
Ajax format cfgrid tag bind attribute.
uses the QueryConvertForGrid function to prepare
query data to return to the grid. The CFML page with the cfgrid tag has
the following code:
<cfform>
<cfgrid format="html" name="grid01" pagesize=5 sort=true
bind="cfc:places.getData({cfgridpage},{cfgridpagesize},
{cfgridsortcolumn},{cfgridsortdirection})" selectMode="row">
<cfgridcolumn name="Emp_ID" display=true header="Employee ID"/>
<cfgridcolumn name="FirstName" display=true header="Name"/>
<cfgridcolumn name="Email" display=true header="Email"/>
</cfgrid>
</cfform>
The getData function
in the places.cfc page has the following code:
<cffunction name="getData" access="remote" output="false">
<cfargument name="page">
<cfargument name="pageSize">
<cfargument name="gridsortcolumn">
<cfargument name="gridstartdirection">
<cfset query = "SELECT Emp_ID, FirstName, EMail
FROM Employees" >
<cfif gridsortcolumn neq "" or gridstartdirection neq "">
<cfset query=query & " order by #gridsortcolumn#
#gridstartdirection#">
</cfif>
<cfquery name="team" datasource="cfdocexamples">
<cfoutput>#query#</cfoutput>
</cfquery>
<cfreturn QueryConvertForGrid(team, page, pageSize)>
</cffunction>