Hi there,
I am using ASP.Net Ajax 2010, relase Q2 with Vstudio 2008 SP1.
I have a hierarchical Rad Grid, that only the selected Master Table row needs to be exported (i.e. Master row and all related Detail Data).
Attached is my Grid (hierarchy.jpg). If I do not expand the Master Row and click export, it just export Master Row Data (hierarchy export.jpg) not detail table data But If I expand the Master row, and click export it does output Master Detail Data (hierarchy export After Clicking Expand.jpg).
My question is that can I export the Master/Detal related row without expanding the Master Table row? My users will not be happy to expand the row first and later click the export button to export the data. Basically I want the result set will be (hierarchy export After Clicking Expand.jpg) without expanding the Master Table row.
Below is my complete code. Thanks
Gc_0620
_____
I am using ASP.Net Ajax 2010, relase Q2 with Vstudio 2008 SP1.
I have a hierarchical Rad Grid, that only the selected Master Table row needs to be exported (i.e. Master row and all related Detail Data).
Attached is my Grid (hierarchy.jpg). If I do not expand the Master Row and click export, it just export Master Row Data (hierarchy export.jpg) not detail table data But If I expand the Master row, and click export it does output Master Detail Data (hierarchy export After Clicking Expand.jpg).
My question is that can I export the Master/Detal related row without expanding the Master Table row? My users will not be happy to expand the row first and later click the export button to export the data. Basically I want the result set will be (hierarchy export After Clicking Expand.jpg) without expanding the Master Table row.
Below is my complete code. Thanks
Gc_0620
_____
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <telerik:RadGrid Skin="Sunset" AutoGenerateEditColumn="true" ID="RadGrid1" ShowStatusBar="true" DataSourceID="SqlDataSource1" runat="server" AutoGenerateColumns="False" AllowPaging="True" GridLines="None" PageSize="10"> <PagerStyle Mode="NumericPages"></PagerStyle> <MasterTableView HierarchyLoadMode="ServerOnDemand" DataSourceID="SqlDataSource1" DataKeyNames="CustomerID" AllowMultiColumnSorting="True" CommandItemDisplay="None"> <DetailTables> <telerik:GridTableView Name="Orders" DataKeyNames="OrderID" CommandItemDisplay="None" DataSourceID="SqlDataSource2" Width="100%" runat="server"> <ParentTableRelation> <telerik:GridRelationFields DetailKeyField="CustomerID" MasterKeyField="CustomerID" /> </ParentTableRelation> <Columns> <telerik:GridBoundColumn SortExpression="OrderID" HeaderText="OrderID" HeaderButtonType="TextButton" DataField="OrderID" UniqueName="OrderID"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="OrderDate" HeaderText="Date Ordered" HeaderButtonType="TextButton" DataField="OrderDate" UniqueName="OrderDate" DataFormatString="{0:D}"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Freight" HeaderText="Freight" HeaderButtonType="TextButton" DataField="Freight" UniqueName="Freight"> </telerik:GridBoundColumn> </Columns> <SortExpressions> <telerik:GridSortExpression FieldName="OrderDate"></telerik:GridSortExpression> </SortExpressions> </telerik:GridTableView> </DetailTables> <Columns> <telerik:GridBoundColumn SortExpression="CustomerID" HeaderText="CustomerID" HeaderButtonType="TextButton" DataField="CustomerID" UniqueName="CustomerID"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="ContactName" HeaderText="Contact Name" HeaderButtonType="TextButton" DataField="ContactName" UniqueName="ContactName"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="CompanyName" HeaderText="Company" HeaderButtonType="TextButton" DataField="CompanyName" UniqueName="CompanyName"> </telerik:GridBoundColumn> </Columns> <SortExpressions> <telerik:GridSortExpression FieldName="CompanyName"></telerik:GridSortExpression> </SortExpressions> </MasterTableView> <ClientSettings> <Selecting AllowRowSelect="true" /> </ClientSettings> </telerik:RadGrid> <br /> <br /> <asp:Button ID="Button1" runat="server" Text="Export to PDF selected items with Child Items" OnClick="Button1_Click" /> <asp:SqlDataSource ID="SqlDataSource1" ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>" ProviderName="System.Data.SqlClient" SelectCommand="SELECT * FROM Customers" runat="server"></asp:SqlDataSource> <asp:SqlDataSource ID="SqlDataSource2" ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>" ProviderName="System.Data.SqlClient" SelectCommand="SELECT * FROM Orders Where CustomerID = @CustomerID" runat="server"> <SelectParameters> <asp:SessionParameter Name="CustomerID" SessionField="CustomerID" Type="string" /> </SelectParameters> </asp:SqlDataSource> </div> </form> </body> </html> using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Telerik.Web.UI; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void RadGrid1_PreRender(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { if (RadGrid1.SelectedItems.Count != 0) { foreach (GridDataItem item in RadGrid1.MasterTableView.Items) { if (!item.Selected) item.Visible = false; } } RadGrid1.ExportSettings.OpenInNewWindow = true; RadGrid1.ExportSettings.ExportOnlyData = true; RadGrid1.MasterTableView.HierarchyDefaultExpanded = true; RadGrid1.MasterTableView.ExportToPdf(); } }