Hi,
I am trying to export a radgrid to pdf which is having data in NestedViewTemplate.
When I try to do so the error come, please see the attached snapshot for error details.
My code is as belows:
<telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server">
<telerik:RadGrid ID="radGridShippedOrders" runat="server" GridLines="None" AllowPaging="True"
PageSize="15" AllowSorting="True" AutoGenerateColumns="false" ShowStatusBar="true" ShowHeader="false"
HorizontalAlign="NotSet" AllowMultiRowEdit="false" OnNeedDataSource="radGridShippedOrders_NeedDataSource"
OnItemCommand="radGridShippedOrders_OnItemCommand" AllowCustomPaging="true" VirtualItemCount="5"
Width="800px" AllowMultiRowSelection="False" AllowFilteringByColumn="true" ShowGroupPanel="True">
<PagerStyle Mode="NextPrevAndNumeric" AlwaysVisible="true"></PagerStyle>
<ExportSettings ExportOnlyData="true" IgnorePaging="true" OpenInNewWindow="true">
<Pdf PageTitle="Shipped Orders" />
<Excel Format=ExcelML />
</ExportSettings>
<MasterTableView GroupLoadMode="Client" CommandItemDisplay="None" DataKeyNames="OAHSSQ" Name="MTVShippedOrders">
<Columns>
<telerik:GridBoundColumn UniqueName="OAORGN" HeaderText="OAORGN" DataField="OAORGN">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="OAHSSQ" HeaderText="OAHSSQ" DataField="OAHSSQ">
</telerik:GridBoundColumn>
</Columns>
<NestedViewTemplate>
<b>Invoice Header</b><br />
<telerik:RadGrid ID="radGridInvoiceHeader" runat="server" GridLines="None" AllowPaging="True"
PageSize="20" AllowSorting="True" AutoGenerateColumns="false" ShowStatusBar="false" ShowHeader="false"
HorizontalAlign="NotSet" AllowMultiRowEdit="false" OnNeedDataSource="radGridInvoiceHeader_NeedDataSource"
Width="100%" AllowMultiRowSelection="False" AllowFilteringByColumn="false">
<PagerStyle Mode="NextPrevAndNumeric" AlwaysVisible="true"></PagerStyle>
<ExportSettings ExportOnlyData="false" IgnorePaging="true" OpenInNewWindow="true">
<Pdf PageTitle="Invoice Header" />
</ExportSettings>
<MasterTableView CommandItemDisplay="Bottom">
<Columns>
<telerik:GridBoundColumn UniqueName="OHORNO" HeaderText="Order Number" DataField="OHORNO"></telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="OHCSNM" HeaderText="Customer Name" DataField="OHCSNM"></telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="OHCAD1" HeaderText="Sold To Add 1" DataField="OHCAD1"></telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
<br />
<b>Invoice Details</b><br />
<telerik:RadGrid ID="radGridInvoiceDetails" runat="server" GridLines="None" AllowPaging="True"
PageSize="20" AllowSorting="True" AutoGenerateColumns="false" ShowStatusBar="false" ShowHeader="false"
HorizontalAlign="NotSet" AllowMultiRowEdit="false" OnNeedDataSource="radGridInvoiceDetails_NeedDataSource"
Width="100%" AllowMultiRowSelection="False" AllowFilteringByColumn="false" OnItemDataBound="radGridInvoiceDetails_ItemDataBound">
<PagerStyle Mode="NextPrevAndNumeric" AlwaysVisible="true"></PagerStyle>
<ExportSettings ExportOnlyData="false" IgnorePaging="true" OpenInNewWindow="true">
<Pdf PageTitle="Invoice Header" />
</ExportSettings>
<MasterTableView CommandItemDisplay="Bottom" ShowFooter="true">
<Columns>
<telerik:GridBoundColumn UniqueName="ODITNO" HeaderText="Item Number" DataField="ODITNO"></telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="ODITD1" HeaderText="Item Description" DataField="ODITD1"></telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="ODQTOR" HeaderText="Quantity Ordered" DataField="ODQTOR"></telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
</NestedViewTemplate>
</MasterTableView>
<ClientSettings AllowGroupExpandCollapse="True" ReorderColumnsOnClient="True" AllowDragToGroup="True"
AllowColumnsReorder="True">
</ClientSettings>
<GroupingSettings ShowUnGroupButton="true" />
</telerik:RadGrid>
CODE BEHIND
protected void btnExportToPDF_Click(object sender, EventArgs e)
{
radGridShippedOrders.ExportSettings.OpenInNewWindow = true;
radGridShippedOrders.ExportSettings.ExportOnlyData = true;
radGridShippedOrders.ExportSettings.IgnorePaging = true;
foreach (GridDataItem gi in radGridShippedOrders.MasterTableView.Items)
{
gi.Expanded = true;
if (gi.HasChildItems)
{
RadGrid rgHeader = (RadGrid)gi.ChildItem.NestedViewCell.Controls[0].Controls[1];
rgHeader.Rebind();
RadGrid rgDetails = ((RadGrid)gi.ChildItem.NestedViewCell.Controls[0].FindControl("radGridInvoiceDetails"));
rgDetails.Rebind();
}
}
radGridShippedOrders.MasterTableView.HierarchyDefaultExpanded = true;
radGridShippedOrders.MasterTableView.ExportToPdf();
}
I am trying to export a radgrid to pdf which is having data in NestedViewTemplate.
When I try to do so the error come, please see the attached snapshot for error details.
My code is as belows:
<telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server">
<telerik:RadGrid ID="radGridShippedOrders" runat="server" GridLines="None" AllowPaging="True"
PageSize="15" AllowSorting="True" AutoGenerateColumns="false" ShowStatusBar="true" ShowHeader="false"
HorizontalAlign="NotSet" AllowMultiRowEdit="false" OnNeedDataSource="radGridShippedOrders_NeedDataSource"
OnItemCommand="radGridShippedOrders_OnItemCommand" AllowCustomPaging="true" VirtualItemCount="5"
Width="800px" AllowMultiRowSelection="False" AllowFilteringByColumn="true" ShowGroupPanel="True">
<PagerStyle Mode="NextPrevAndNumeric" AlwaysVisible="true"></PagerStyle>
<ExportSettings ExportOnlyData="true" IgnorePaging="true" OpenInNewWindow="true">
<Pdf PageTitle="Shipped Orders" />
<Excel Format=ExcelML />
</ExportSettings>
<MasterTableView GroupLoadMode="Client" CommandItemDisplay="None" DataKeyNames="OAHSSQ" Name="MTVShippedOrders">
<Columns>
<telerik:GridBoundColumn UniqueName="OAORGN" HeaderText="OAORGN" DataField="OAORGN">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="OAHSSQ" HeaderText="OAHSSQ" DataField="OAHSSQ">
</telerik:GridBoundColumn>
</Columns>
<NestedViewTemplate>
<b>Invoice Header</b><br />
<telerik:RadGrid ID="radGridInvoiceHeader" runat="server" GridLines="None" AllowPaging="True"
PageSize="20" AllowSorting="True" AutoGenerateColumns="false" ShowStatusBar="false" ShowHeader="false"
HorizontalAlign="NotSet" AllowMultiRowEdit="false" OnNeedDataSource="radGridInvoiceHeader_NeedDataSource"
Width="100%" AllowMultiRowSelection="False" AllowFilteringByColumn="false">
<PagerStyle Mode="NextPrevAndNumeric" AlwaysVisible="true"></PagerStyle>
<ExportSettings ExportOnlyData="false" IgnorePaging="true" OpenInNewWindow="true">
<Pdf PageTitle="Invoice Header" />
</ExportSettings>
<MasterTableView CommandItemDisplay="Bottom">
<Columns>
<telerik:GridBoundColumn UniqueName="OHORNO" HeaderText="Order Number" DataField="OHORNO"></telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="OHCSNM" HeaderText="Customer Name" DataField="OHCSNM"></telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="OHCAD1" HeaderText="Sold To Add 1" DataField="OHCAD1"></telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
<br />
<b>Invoice Details</b><br />
<telerik:RadGrid ID="radGridInvoiceDetails" runat="server" GridLines="None" AllowPaging="True"
PageSize="20" AllowSorting="True" AutoGenerateColumns="false" ShowStatusBar="false" ShowHeader="false"
HorizontalAlign="NotSet" AllowMultiRowEdit="false" OnNeedDataSource="radGridInvoiceDetails_NeedDataSource"
Width="100%" AllowMultiRowSelection="False" AllowFilteringByColumn="false" OnItemDataBound="radGridInvoiceDetails_ItemDataBound">
<PagerStyle Mode="NextPrevAndNumeric" AlwaysVisible="true"></PagerStyle>
<ExportSettings ExportOnlyData="false" IgnorePaging="true" OpenInNewWindow="true">
<Pdf PageTitle="Invoice Header" />
</ExportSettings>
<MasterTableView CommandItemDisplay="Bottom" ShowFooter="true">
<Columns>
<telerik:GridBoundColumn UniqueName="ODITNO" HeaderText="Item Number" DataField="ODITNO"></telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="ODITD1" HeaderText="Item Description" DataField="ODITD1"></telerik:GridBoundColumn>
<telerik:GridBoundColumn UniqueName="ODQTOR" HeaderText="Quantity Ordered" DataField="ODQTOR"></telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
</NestedViewTemplate>
</MasterTableView>
<ClientSettings AllowGroupExpandCollapse="True" ReorderColumnsOnClient="True" AllowDragToGroup="True"
AllowColumnsReorder="True">
</ClientSettings>
<GroupingSettings ShowUnGroupButton="true" />
</telerik:RadGrid>
CODE BEHIND
protected void btnExportToPDF_Click(object sender, EventArgs e)
{
radGridShippedOrders.ExportSettings.OpenInNewWindow = true;
radGridShippedOrders.ExportSettings.ExportOnlyData = true;
radGridShippedOrders.ExportSettings.IgnorePaging = true;
foreach (GridDataItem gi in radGridShippedOrders.MasterTableView.Items)
{
gi.Expanded = true;
if (gi.HasChildItems)
{
RadGrid rgHeader = (RadGrid)gi.ChildItem.NestedViewCell.Controls[0].Controls[1];
rgHeader.Rebind();
RadGrid rgDetails = ((RadGrid)gi.ChildItem.NestedViewCell.Controls[0].FindControl("radGridInvoiceDetails"));
rgDetails.Rebind();
}
}
radGridShippedOrders.MasterTableView.HierarchyDefaultExpanded = true;
radGridShippedOrders.MasterTableView.ExportToPdf();
}