I have a datatable with more than 300 rows. I want each page to present only 10 rows in it. I want to force the xtrareport to break after 10 rows.
Any idea on how this is done ?
I have a datatable with more than 300 rows. I want each page to present only 10 rows in it. I want to force the xtrareport to break after 10 rows.
Any idea on how this is done ?
You can force a page break on certain conditions. This page has an example at the bottom.
Hi Cary,
To accomplish this task you can either add a GroupFooter band and set the GroupFooter.PageBreak to AfterBand. or put a XRPageBreak control, handle the Detail.BeforePrint and adjust the visibility of the XRPageBreak as you need. To get processing row you need to use the XtraReport.GetCurrentRow() method. Please try this solution, and let us know the results.
Thanks,
Andrew
you need to create a Repport Merging.
here is an example :
private void printInvoicesButton_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
int[] selection = this.ordersGridView.GetSelectedRows();
XtraReport reportMerge = new XtraReport();
reportMerge.CreateDocument();
IList<XtraReport> reportList = new List<XtraReport>();
// Create a report.
//invoiceReport report = new invoiceReport();
for (int j = 0; j < selection.Length; j++)
{
XtraReport report = new XtraReport();
string filePath = @"Reports/invoiceReport1.repx";
report.LoadLayout(filePath);
InvoiceData invoice = new InvoiceData();
for (int i = 0; i < DataRepository.Orders.Orders.Count; i++)
{
if (
ordersGridView.GetRowCellValue(selection[j], "InvoiceCode").Equals(
DataRepository.Orders.Orders[i].InvoiceCode))
{
BindingSource dataSource = new BindingSource();
invoice = InvoiceData.AdaptFrom(DataRepository.Orders.Orders[i], DataRepository.Orders,
DataRepository.Products.Products,
DataRepository.ProductOptionMaster,
DataRepository.ProductOptionDataSet,
DataRepository.CustomerShippingAddresses,
DataRepository.Customers.UserMaster,
DataRepository.AttributesData.Product_Attributes);
dataSource.Add(invoice);
report.DataSource = dataSource;
//report.ShowPreview();
report.CreateDocument();
}
}
reportList.Add(report);
}
for(int i=0;i<reportList.Count;i++)
{
reportMerge.Pages.AddRange(reportList[i].Pages);
}
// Show the report's preview.
reportMerge.ShowPreviewDialog();
}