This is a migrated thread and some comments may be shown as answers.

Need Help in adding total and showing in Group header text for only single group

3 Answers 82 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Neetha
Top achievements
Rank 1
Neetha asked on 28 Feb 2014, 10:57 PM
Attached file for your reference

<telerik:RadGrid ID="RadGrid1" Width="50%" runat="server" DataSourceID="SqlDataSource1" OnItemDataBound="RadGrid1_ItemDataBound">
<MasterTableView AutoGenerateColumns="False" DataSourceID="SqlDataSource1">
<GroupByExpressions>
<telerik:GridGroupByExpression>

<SelectFields>

<telerik:GridGroupByField FieldName="MetricGroup" HeaderValueSeparator=""/>


</SelectFields>

<GroupByFields>

<telerik:GridGroupByField FieldName="MetricGroup" SortOrder="Ascending" />

</GroupByFields>

</telerik:GridGroupByExpression>
</GroupByExpressions>

<Columns>

<telerik:GridTemplateColumn DataField="Name" DataType="System.Double" FilterControlAltText="Filter Name column" HeaderText="Name" SortExpression="Name" UniqueName="Name" >
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2" align="center">
<b>John Doe #1</b></td>
</tr>
<tr>
<td style="width: 50%" align="center">

<b>Corrective Action</b>
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Name") %>
</ItemTemplate>

</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="Jan" DataType="System.Double" FilterControlAltText="Filter Jan column" HeaderText="Jan" SortExpression="Jan" UniqueName="Jan">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2">
<b>Jan</b></td>
</tr>
<tr>
<td style="width: 50%">

<asp:CheckBox ID="CheckBox1" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Jan") %>
</ItemTemplate>

</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="Feb" DataType="System.Double" FilterControlAltText="Filter Feb column" HeaderText="Feb" SortExpression="Feb" UniqueName="Feb">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2" >
<b>Feb</b></td>
</tr>
<tr>
<td style="width: 50%" >

<asp:CheckBox ID="CheckBox2" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Feb") %>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="Mar" DataType="System.Double" FilterControlAltText="Filter Mar column" HeaderText="Mar" SortExpression="Mar" UniqueName="Mar">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2" >
<b>Mar</b></td>
</tr>
<tr>
<td style="width: 50%" >

<asp:CheckBox ID="CheckBox3" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Mar") %>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="Apr" DataType="System.Double" FilterControlAltText="Filter Apr column" HeaderText="Apr" SortExpression="Apr" UniqueName="Apr">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2" >
<b>Apr</b></td>
</tr>
<tr>
<td style="width: 50%" >

<asp:CheckBox ID="CheckBox4" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Apr") %>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="May" DataType="System.Double" FilterControlAltText="Filter May column" HeaderText="May" SortExpression="May" UniqueName="May">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2" >
<b>May</b></td>
</tr>
<tr>
<td style="width: 50%">

<asp:CheckBox ID="CheckBox5" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"May") %>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="Jun" DataType="System.Double" FilterControlAltText="Filter Jun column" HeaderText="Jun" SortExpression="Jun" UniqueName="Jun">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2" >
<b>Jun</b></td>
</tr>
<tr>
<td style="width: 50%" >

<asp:CheckBox ID="CheckBox6" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Jun") %>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="Jul" DataType="System.Double" FilterControlAltText="Filter Jul column" HeaderText="Jul" SortExpression="Jul" UniqueName="Jul">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2" >
<b>Jul</b></td>
</tr>
<tr>
<td style="width: 50%" >

<asp:CheckBox ID="CheckBox7" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Jul") %>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="Aug" DataType="System.Double" FilterControlAltText="Filter Aug column" HeaderText="Aug" SortExpression="Aug" UniqueName="Aug">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2" >
<b>Aug</b></td>
</tr>
<tr>
<td style="width: 50%" >

<asp:CheckBox ID="CheckBox8" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Aug") %>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="Sep" DataType="System.Double" FilterControlAltText="Filter Sep column" HeaderText="Sep" SortExpression="Sep" UniqueName="Sep">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2">
<b>Sep</b></td>
</tr>
<tr>
<td style="width: 50%" >

<asp:CheckBox ID="CheckBox9" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Sep") %>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="Oct" DataType="System.Double" FilterControlAltText="Filter Oct column" HeaderText="Oct" SortExpression="Oct" UniqueName="Oct">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2" >
<b>Oct</b></td>
</tr>
<tr>
<td style="width: 50%" >

<asp:CheckBox ID="CheckBox10" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Oct") %>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="Nov" DataType="System.Double" FilterControlAltText="Filter Nov column" HeaderText="Nov" SortExpression="Nov" UniqueName="Nov">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2" >
<b>Nov</b></td>
</tr>
<tr>
<td style="width: 50%" >

<asp:CheckBox ID="CheckBox11" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Nov") %>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn DataField="Dec" DataType="System.Double" FilterControlAltText="Filter Dec column" HeaderText="Dec" SortExpression="Dec" UniqueName="Dec">
<HeaderTemplate>
<table id="Table1" cellspacing="0" cellpadding="0" width="50" >
<tr>
<td colspan="2" >
<b>Dec</b></td>
</tr>
<tr>
<td style="width: 50%">

<asp:CheckBox ID="CheckBox12" runat="server" />
</td>

</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem,"Dec") %>
</ItemTemplate>
</telerik:GridTemplateColumn>




</Columns>
</MasterTableView>
<ClientSettings>
<Selecting AllowRowSelect="true" />
</ClientSettings>
</telerik:RadGrid>


<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:OperationsConnectionString %>" SelectCommand="SELECT Name, MetricGroup, JanGoal AS Jan, FebGoal AS Feb, MarGoal AS Mar, AprGoal AS Apr, MayGoal AS May, JunGoal AS Jun, JulGoal AS Jul, AugGoal AS Aug, SepGoal AS Sep, OctGoal AS Oct, NovGoal AS Nov, DecGoal AS Dec FROM oss.SalespersonMetricGoals"></asp:SqlDataSource>


3 Answers, 1 is accepted

Sort by
0
Pavlina
Telerik team
answered on 05 Mar 2014, 04:37 PM
Hi Neetha,

You can perform calculations in group header by attaching ItemDataBound event to your RadGrid. The following article shows how to calculate average and adds this calculated value to the DataCell.Text property of the grid header item:
http://www.telerik.com/help/aspnet-ajax/grid-perform-calculations-in-group-header.html

Give it a try and see if it works for you.

Regards,
Pavlina
Telerik

DevCraft Q1'14 is here! Join the free online conference to see how this release solves your top-5 .NET challenges. Reserve your seat now!

0
Neetha
Top achievements
Rank 1
answered on 05 Mar 2014, 05:15 PM
Thanks Pavlina. Is there any way that I can show aggregate on single group header not on all groupheaders?
0
Pavlina
Telerik team
answered on 10 Mar 2014, 04:27 PM
Hello,

To achieve the desired functionality you could try getting the header items and all grouped GridDataItems on RadGrid.PreRender with the following code snippet:
protected void RadGrid1_PreRender(object sender, EventArgs e)
{
    GridItem[] items = RadGrid1.MasterTableView.GetItems(GridItemType.GroupHeader);
    foreach (GridGroupHeaderItem item in items)
    {
         //access the desired group header item
         //perform the calculations
    }
 }

Regards,
Pavlina
Telerik

DevCraft Q1'14 is here! Watch the online conference to see how this release solves your top-5 .NET challenges. Watch on demand now.

Tags
Grid
Asked by
Neetha
Top achievements
Rank 1
Answers by
Pavlina
Telerik team
Neetha
Top achievements
Rank 1
Share this question
or