在 telerik 上合并 pdf 报告时设置页码
Set the page number when combining pdf reports on telerik
我用telerik reporting to generate PDF reports in an ASP.NET MVC app, then i combine them into a single one using iText Sharp.
每个报告都有一个页码,我使用设计器上的 PageNumber
绑定设置:
每个报告的 PageNumber
从 1 开始,所以当我将它们组合起来时,我有类似的东西; [1, 2, 3], [1, 2] ...
如何让报告从特定页码开始页码,这样我才能得到一致的报告 [1, 2, 3, 4, 5 ..]?
public class ReportGenerator : IReportGenerator
{
private byte[] GenerateReport<TReport, TData>(TData data) where TReport : Report, new()
{
Report reportDefinition = new TReport();
reportDefinition.DataSource = data;
ReportProcessor processor = new ReportProcessor();
RenderingResult result = processor.RenderReport("PDF", new InstanceReportSource() {ReportDocument = reportDefinition},
new Hashtable());
if (result.HasErrors)
{
throw new AggregateException("There were errors in the reportGeneration");
}
return result.DocumentBytes;
}
public byte[] GenerateMyReport(TheReportViewModel reportVM)
{
return GenerateReport<TheReportDefinedUsingTheDesigner,TheReportViewModel>(reportVM);
}
}
我使用 GenerateMyReport
生成多个报告,然后使用 iText Sharp.
将它们组合起来
如有任何帮助,我们将不胜感激。
我想通了。
页面绑定必须设置为=Cint(PageNumber) + Cint(Fields.StartPageNumber)
其中 PageNumber
是预定义的 telerik 报告字段,StartPageNumber
是您添加到报告的 ViewModel
的 属性
我用telerik reporting to generate PDF reports in an ASP.NET MVC app, then i combine them into a single one using iText Sharp.
每个报告都有一个页码,我使用设计器上的 PageNumber
绑定设置:
每个报告的 PageNumber
从 1 开始,所以当我将它们组合起来时,我有类似的东西; [1, 2, 3], [1, 2] ...
如何让报告从特定页码开始页码,这样我才能得到一致的报告 [1, 2, 3, 4, 5 ..]?
public class ReportGenerator : IReportGenerator
{
private byte[] GenerateReport<TReport, TData>(TData data) where TReport : Report, new()
{
Report reportDefinition = new TReport();
reportDefinition.DataSource = data;
ReportProcessor processor = new ReportProcessor();
RenderingResult result = processor.RenderReport("PDF", new InstanceReportSource() {ReportDocument = reportDefinition},
new Hashtable());
if (result.HasErrors)
{
throw new AggregateException("There were errors in the reportGeneration");
}
return result.DocumentBytes;
}
public byte[] GenerateMyReport(TheReportViewModel reportVM)
{
return GenerateReport<TheReportDefinedUsingTheDesigner,TheReportViewModel>(reportVM);
}
}
我使用 GenerateMyReport
生成多个报告,然后使用 iText Sharp.
如有任何帮助,我们将不胜感激。
我想通了。
页面绑定必须设置为=Cint(PageNumber) + Cint(Fields.StartPageNumber)
其中 PageNumber
是预定义的 telerik 报告字段,StartPageNumber
是您添加到报告的 ViewModel