Hi,
I am exporting RadGridView data to excell.
I wanted to know, how to export data of aggregate function in excell sheet.
My XAML page is:
<telerik:GridViewDataColumn Header="Investment Category Name" DataMemberBinding="{Binding InvestmentCategoryName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Asset Class Name" DataMemberBinding="{Binding AssetClassName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Sbu" DataMemberBinding="{Binding SbuName}" Width="125" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Total Value" DataMemberBinding="{Binding TotalValue, StringFormat={}{0:c}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap">
<telerik:GridViewDataColumn.AggregateFunctions>
<telerik:SumFunction Caption="Total :" ResultFormatString="{}{0:c}" />
</telerik:GridViewDataColumn.AggregateFunctions>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn Header="Target Min" DataMemberBinding="{Binding TargetMin, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Target Max" DataMemberBinding="{Binding TargetMax, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Target Total" DataMemberBinding="{Binding TargetTotal, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Total Actual" DataMemberBinding="{Binding TotalActual, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Variance" DataMemberBinding="{Binding Variance, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap">
Please, let me know any quick solution to this.
Regards,
Hirak
I am exporting RadGridView data to excell.
I wanted to know, how to export data of aggregate function in excell sheet.
My XAML page is:
<telerik:GridViewDataColumn Header="Investment Category Name" DataMemberBinding="{Binding InvestmentCategoryName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Asset Class Name" DataMemberBinding="{Binding AssetClassName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Sbu" DataMemberBinding="{Binding SbuName}" Width="125" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Total Value" DataMemberBinding="{Binding TotalValue, StringFormat={}{0:c}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap">
<telerik:GridViewDataColumn.AggregateFunctions>
<telerik:SumFunction Caption="Total :" ResultFormatString="{}{0:c}" />
</telerik:GridViewDataColumn.AggregateFunctions>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn Header="Target Min" DataMemberBinding="{Binding TargetMin, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Target Max" DataMemberBinding="{Binding TargetMax, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Target Total" DataMemberBinding="{Binding TargetTotal, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Total Actual" DataMemberBinding="{Binding TotalActual, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Variance" DataMemberBinding="{Binding Variance, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap">
Please, let me know any quick solution to this.
Regards,
Hirak
6 Answers, 1 is accepted
0
Hello Hirak,
Vanya Pavlova
the Telerik team
Have you checked this demo?
Vanya Pavlova
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Public Issue Tracking
system and vote to affect the priority of the items
0

hirak
Top achievements
Rank 1
answered on 25 Apr 2011, 01:41 PM
Hi,
I had all ready seen that demo.
The issue is in my case, the column value is showing as null so it never goes to aggregate function call.
GridViewDataColumn column = e.Context as GridViewDataColumn;
QueryableCollectionViewGroup qcvGroup = e.Value as QueryableCollectionViewGroup;
if (column != null && qcvGroup != null && column.AggregateFunctions.Count() > 0)
{
e.Value = GetAggregates(qcvGroup, column);
}
Do you have any solution to my issue, which I have send.
Once again, I am resending my XAML page as below:
<telerik:GridViewDataColumn Header="Investment Category Name" DataMemberBinding="{Binding InvestmentCategoryName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Asset Class Name" DataMemberBinding="{Binding AssetClassName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Sbu" DataMemberBinding="{Binding SbuName}" Width="125" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Total Value" DataMemberBinding="{Binding TotalValue, StringFormat={}{0:c}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap">
<telerik:GridViewDataColumn.AggregateFunctions>
<telerik:SumFunction Caption="Total :" ResultFormatString="{}{0:c}" />
</telerik:GridViewDataColumn.AggregateFunctions>
</telerik:GridViewDataColumn>
Let me know, if you can quickly help me to resolve this issue.
Regards,
Hirak
I had all ready seen that demo.
The issue is in my case, the column value is showing as null so it never goes to aggregate function call.
GridViewDataColumn column = e.Context as GridViewDataColumn;
QueryableCollectionViewGroup qcvGroup = e.Value as QueryableCollectionViewGroup;
if (column != null && qcvGroup != null && column.AggregateFunctions.Count() > 0)
{
e.Value = GetAggregates(qcvGroup, column);
}
Do you have any solution to my issue, which I have send.
Once again, I am resending my XAML page as below:
<telerik:GridViewDataColumn Header="Investment Category Name" DataMemberBinding="{Binding InvestmentCategoryName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Asset Class Name" DataMemberBinding="{Binding AssetClassName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Sbu" DataMemberBinding="{Binding SbuName}" Width="125" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Total Value" DataMemberBinding="{Binding TotalValue, StringFormat={}{0:c}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap">
<telerik:GridViewDataColumn.AggregateFunctions>
<telerik:SumFunction Caption="Total :" ResultFormatString="{}{0:c}" />
</telerik:GridViewDataColumn.AggregateFunctions>
</telerik:GridViewDataColumn>
Let me know, if you can quickly help me to resolve this issue.
Regards,
Hirak
0
Hello Hirak,
Vanya Pavlova
the Telerik team
How the grid is bound in your case?
Please open a new support ticket and attach your sample application which we can use for further testing.
Thus we would be able to provide you with an appropriate solution.
Vanya Pavlova
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Public Issue Tracking
system and vote to affect the priority of the items
0

hirak
Top achievements
Rank 1
answered on 25 Apr 2011, 02:10 PM
Hi,
Please check my XAML code mentioned below:
<Grid x:Name="GridNonMarketable" >
<telerik:RadGridView Grid.Row="0" x:Name="RadGridNonMarketableSummary" ElementExported="RadGridNonMarketableSummary_ElementExported" RowLoaded="RadGridNonMarketableSummary_RowLoaded" Loaded="RadGridNonMarketableSummary_Loaded" telerikControls:StyleManager.Theme="Office_Blue" IsReadOnly="True" ItemsSource="{Binding TradeNonMarketableData.NonMarketableSummaryModel}" IsFilteringAllowed="False" CanUserFreezeColumns="False" AutoGenerateColumns="False" AutoExpandGroups="True" >
<telerik:RadGridView.ChildTableDefinitions>
<telerik:GridViewTableDefinition />
</telerik:RadGridView.ChildTableDefinitions>
<telerik:RadGridView.RowStyle>
<Style TargetType="{x:Type telerik:GridViewRow}">
<Setter Property="IsExpanded" Value="True"/>
</Style>
</telerik:RadGridView.RowStyle>
<telerik:RadGridView.Columns>
<telerik:GridViewDataColumn Header="Investment Category Name" DataMemberBinding="{Binding InvestmentCategoryName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Asset Class Name" DataMemberBinding="{Binding AssetClassName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Sbu" DataMemberBinding="{Binding SbuName}" Width="125" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Total Value" DataMemberBinding="{Binding TotalValue, StringFormat={}{0:c}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap" UniqueName="TotalValue">
<telerik:GridViewDataColumn.AggregateFunctions>
<telerik:SumFunction Caption="Total :" ResultFormatString="{}{0:c}" />
</telerik:GridViewDataColumn.AggregateFunctions>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn Header="Target Min" DataMemberBinding="{Binding TargetMin, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Target Max" DataMemberBinding="{Binding TargetMax, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Target Total" DataMemberBinding="{Binding TargetTotal, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Total Actual" DataMemberBinding="{Binding TotalActual, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Variance" DataMemberBinding="{Binding Variance, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap">
<telerik:GridViewDataColumn.CellStyle>
<Style TargetType="telerik:GridViewCell">
<Setter Property="Foreground" Value="{Binding TotalRange, Converter={StaticResource RangeConverter}}" />
</Style>
</telerik:GridViewDataColumn.CellStyle>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn Header="Total Range" DataMemberBinding="{Binding TotalRange}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap">
<telerik:GridViewDataColumn.CellStyle>
<Style TargetType="telerik:GridViewCell">
<Setter Property="Foreground" Value="{Binding TotalRange, Converter={StaticResource RangeConverter}}" />
</Style>
</telerik:GridViewDataColumn.CellStyle>
</telerik:GridViewDataColumn>
</telerik:RadGridView.Columns>
<telerik:RadGridView.HierarchyChildTemplate>
<DataTemplate>
<telerik:RadGridView x:Name="RadGridNonMarketableDetail" telerikControls:StyleManager.Theme="Windows7" CanUserFreezeColumns="False" AutoGenerateColumns="False" IsFilteringAllowed="False" ItemsSource="{Binding NonMarketableDetailModel}" ShowGroupPanel="False" IsReadOnly="True">
<telerik:RadGridView.Columns>
<telerik:GridViewDataColumn DataMemberBinding="{Binding FundName}" Header="Fund Name" Width="200" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Value / Unadjusted Value" HeaderTextAlignment="Right" TextAlignment="Right" Width="150" TextWrapping="Wrap" >
<telerik:GridViewDataColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Value,StringFormat={}{0:c}}"></TextBlock>
<TextBlock Text=" / "></TextBlock>
<TextBlock Text="{Binding UnAdjustedValue,StringFormat={}{0:c}}"></TextBlock>
</StackPanel>
</DataTemplate>
</telerik:GridViewDataColumn.CellTemplate>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn DataMemberBinding="{Binding ValueDate, StringFormat={}{0:d}}" Header="Value Date" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding TotalActual, StringFormat={}{0:n3}}" Header="Total Actual" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding FundCode}" Header="Fund Code" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding CalledToDate, StringFormat={}{0:c}}" Header="Called To Date" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding Commitment, StringFormat={}{0:c}}" Header="Commitment" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding TotalDistributions, StringFormat={}{0:c}}" Header="Total Distributions" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding ToBeCalled, StringFormat={}{0:c}}" Header="To Be Called" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
</telerik:RadGridView.Columns>
</telerik:RadGridView>
</DataTemplate>
</telerik:RadGridView.HierarchyChildTemplate>
</telerik:RadGridView>
<telerik:RadButton Name="ExporttoExcel" Margin="722,-33,0,0" Style="{DynamicResource NormalButtonStyle}" Content="Export to Excel" Width="102" HorizontalAlignment="Right" VerticalAlignment="Top" Height="27" Click="ExporttoExcel_Click"/>
</Grid>
Regards,
Hirak
Please check my XAML code mentioned below:
<Grid x:Name="GridNonMarketable" >
<telerik:RadGridView Grid.Row="0" x:Name="RadGridNonMarketableSummary" ElementExported="RadGridNonMarketableSummary_ElementExported" RowLoaded="RadGridNonMarketableSummary_RowLoaded" Loaded="RadGridNonMarketableSummary_Loaded" telerikControls:StyleManager.Theme="Office_Blue" IsReadOnly="True" ItemsSource="{Binding TradeNonMarketableData.NonMarketableSummaryModel}" IsFilteringAllowed="False" CanUserFreezeColumns="False" AutoGenerateColumns="False" AutoExpandGroups="True" >
<telerik:RadGridView.ChildTableDefinitions>
<telerik:GridViewTableDefinition />
</telerik:RadGridView.ChildTableDefinitions>
<telerik:RadGridView.RowStyle>
<Style TargetType="{x:Type telerik:GridViewRow}">
<Setter Property="IsExpanded" Value="True"/>
</Style>
</telerik:RadGridView.RowStyle>
<telerik:RadGridView.Columns>
<telerik:GridViewDataColumn Header="Investment Category Name" DataMemberBinding="{Binding InvestmentCategoryName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Asset Class Name" DataMemberBinding="{Binding AssetClassName}" IsVisible="False" />
<telerik:GridViewDataColumn Header="Sbu" DataMemberBinding="{Binding SbuName}" Width="125" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Total Value" DataMemberBinding="{Binding TotalValue, StringFormat={}{0:c}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap" UniqueName="TotalValue">
<telerik:GridViewDataColumn.AggregateFunctions>
<telerik:SumFunction Caption="Total :" ResultFormatString="{}{0:c}" />
</telerik:GridViewDataColumn.AggregateFunctions>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn Header="Target Min" DataMemberBinding="{Binding TargetMin, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Target Max" DataMemberBinding="{Binding TargetMax, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Target Total" DataMemberBinding="{Binding TargetTotal, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Total Actual" DataMemberBinding="{Binding TotalActual, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Variance" DataMemberBinding="{Binding Variance, StringFormat={}{0:n2}}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap">
<telerik:GridViewDataColumn.CellStyle>
<Style TargetType="telerik:GridViewCell">
<Setter Property="Foreground" Value="{Binding TotalRange, Converter={StaticResource RangeConverter}}" />
</Style>
</telerik:GridViewDataColumn.CellStyle>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn Header="Total Range" DataMemberBinding="{Binding TotalRange}" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap">
<telerik:GridViewDataColumn.CellStyle>
<Style TargetType="telerik:GridViewCell">
<Setter Property="Foreground" Value="{Binding TotalRange, Converter={StaticResource RangeConverter}}" />
</Style>
</telerik:GridViewDataColumn.CellStyle>
</telerik:GridViewDataColumn>
</telerik:RadGridView.Columns>
<telerik:RadGridView.HierarchyChildTemplate>
<DataTemplate>
<telerik:RadGridView x:Name="RadGridNonMarketableDetail" telerikControls:StyleManager.Theme="Windows7" CanUserFreezeColumns="False" AutoGenerateColumns="False" IsFilteringAllowed="False" ItemsSource="{Binding NonMarketableDetailModel}" ShowGroupPanel="False" IsReadOnly="True">
<telerik:RadGridView.Columns>
<telerik:GridViewDataColumn DataMemberBinding="{Binding FundName}" Header="Fund Name" Width="200" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn Header="Value / Unadjusted Value" HeaderTextAlignment="Right" TextAlignment="Right" Width="150" TextWrapping="Wrap" >
<telerik:GridViewDataColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Value,StringFormat={}{0:c}}"></TextBlock>
<TextBlock Text=" / "></TextBlock>
<TextBlock Text="{Binding UnAdjustedValue,StringFormat={}{0:c}}"></TextBlock>
</StackPanel>
</DataTemplate>
</telerik:GridViewDataColumn.CellTemplate>
</telerik:GridViewDataColumn>
<telerik:GridViewDataColumn DataMemberBinding="{Binding ValueDate, StringFormat={}{0:d}}" Header="Value Date" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding TotalActual, StringFormat={}{0:n3}}" Header="Total Actual" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding FundCode}" Header="Fund Code" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding CalledToDate, StringFormat={}{0:c}}" Header="Called To Date" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding Commitment, StringFormat={}{0:c}}" Header="Commitment" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding TotalDistributions, StringFormat={}{0:c}}" Header="Total Distributions" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
<telerik:GridViewDataColumn DataMemberBinding="{Binding ToBeCalled, StringFormat={}{0:c}}" Header="To Be Called" HeaderTextAlignment="Right" TextAlignment="Right" Width="90" TextWrapping="Wrap"/>
</telerik:RadGridView.Columns>
</telerik:RadGridView>
</DataTemplate>
</telerik:RadGridView.HierarchyChildTemplate>
</telerik:RadGridView>
<telerik:RadButton Name="ExporttoExcel" Margin="722,-33,0,0" Style="{DynamicResource NormalButtonStyle}" Content="Export to Excel" Width="102" HorizontalAlignment="Right" VerticalAlignment="Top" Height="27" Click="ExporttoExcel_Click"/>
</Grid>
Regards,
Hirak
0
Hi Hirak,
Vanya Pavlova
the Telerik team
Currently using the snippet provided we might be only guessing what is wrong. As I said in my previous post the best option is to open a new support ticket where we can see what happens.
Vanya Pavlova
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Public Issue Tracking
system and vote to affect the priority of the items
0

hirak
Top achievements
Rank 1
answered on 26 Apr 2011, 08:03 AM
Hi,
I have all ready posted a support ticket with my sample code. But, till now I have not received any response from you.
Please, let me know if there can be any quick solution to this issue.
Thanks & Regards,
Hirak
I have all ready posted a support ticket with my sample code. But, till now I have not received any response from you.
Please, let me know if there can be any quick solution to this issue.
Thanks & Regards,
Hirak