CodeCharge Studio |
All ASP PHP Perl ColdFusion Java C#.NET VB.NET |
This example shows how to create a simple report. The Grid form in this example contains a list of employees whereby each employee belongs to a department. The Grid lists the employees (: ID, Name and Title) in such a manner that a Header row indicates the department of the employee records appearing in the rows below it.
| ID | Name | Title |
| Finance | ||
|---|---|---|
| 2 | John Smith | Manager |
| 5 | Rob McDonald | Manager |
| Software | ||
| 1 | Bob Kuch | Sr. Developer |
| 3 | Pablo Sanchez | Developer |
| 7 | David Snyder | Developer |
| Support | ||
| 6 | Stefan Fey | Support |
Make sure that you are in HTML mode then:
<!-- BEGIN Row -->
<!-- BEGIN Label department_name -->
<tr>
<td bgcolor="#336699" colspan="3"><font color="White">{department_name}</font></td>
</tr>
<!-- END Label department_name -->
<tr>
<td class="ClearDataTD">{Label1} </td>
<td class="ClearDataTD">{emp_name} </td>
<td class="ClearDataTD">{title} </td>
</tr>
<!-- END Row --
Dim DepName Function departments_BeforeShowRow(Sender) If DepName = departments.department_name.Value Then departments.department_name.Visible = False Else departments.department_name.Visible = True DepName = departments.department_name.Value End If End Function
function departments_BeforeShowRow(& $sender) {
global $DepName;
global $departments;
if ($DepName == $departments->department_name->GetValue()) {
$departments->department_name->Visible = False;
} else {
$departments->department_name->Visible = True;
$DepName = $departments->department_name->GetValue();
}
}sub departments_BeforeShowRow() {
if ($DepName eq $departments->{department_name}->GetValue()) {
$departments->{department_name}->{Visible} = 0;
} else {
$departments->{department_name}->{Visible} = 1;
$DepName = $departments->{department_name}->GetValue();
}
}<!---departments_BeforeShowRow ---> <CFPARAM Name="DepName" Default=""> <CFIF DepName EQ flddepartment_name> <CFSET hideDepartment_name= True> <CFELSE> <CFSET hideDepartment_name=False> <CFSET DepName=flddepartment_name> </CFIF>
//'departments_BeforeShowRow
String depName = (String) e.getPage().getRequest().getAttribute("departmentname");
if ( depName == null ) {
depName = "";
}
if (depName.equals(e.getGrid().getControl("department_name").getValue()) ) {
e.getGrid().getControl("department_name").setVisible(false);
} else {
e.getGrid().getControl("department_name").setVisible(true);
e.getPage().getRequest().setAttribute("departmentname", e.getGrid().getControl("department_name").getValue());
}<!-- BEGIN Row -->
<tr id="departmentsNameTR" runat="server">
<td bgcolor="#336699" colspan="3"><font color="White">{department_name}</font></td>
</tr>
<tr>
<td class="ClearDataTD">{Label1} </td>
<td class="ClearDataTD">{emp_name} </td>
<td class="ClearDataTD">{title} </td>
</tr>
<!-- END Row -->
'End Forms Definition Dim DepName As String
//End Forms Definition protected String DepName;
'departments_BeforeShowRow
If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
Dim departmentsNameTR As Control = e.Item.FindControl("departmentsNameTR")
If DepName = DataItem.department_name.Value Then
departmentsNameTR.Visible = False
Else
departmentsNameTR.Visible = True
DepName = DataItem.department_name.Value
End If
End If
//departments_BeforeShowRow
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) {
Control departmentsNameTR = e.Item.FindControl("departmentsNameTR");
if (DepName == DataItem.department_name.Value.ToString()) {
departmentsNameTR.Visible = false;
} else {
departmentsNameTR.Visible = true;
DepName = DataItem.department_name.Value.ToString();
}
}