PageFooter section is invisible in ReportBook

7 posts, 1 answers
  1. Laurent
    Laurent avatar
    11 posts
    Member since:
    Mar 2014

    Posted 06 May 2015 Link to this post

     I created a method to print a bunch of invoices. Each one printed individually by another method (and resolver) has a correct output. However, when I use the report book method, the PageFooter sections does not appear at all.

     I pasted the resolver method because the design is correct and I don't see any other relevent part for this question. Please let me know for further information.

    01.private ReportSource ResolveInvoices(string ids)
    02.{
    03.    var book = new ReportBook();
    04.    ids.Replace("[Invoices]", "").Replace("\"", ""
    05.          .Split(',').ForEach(item =>
    06.    {
    07.        int id;
    08.        if (!int.TryParse(item, out id)) { return; }
    09. 
    10.        var report = Activator.CreateInstance(typeof(ReportDefinitions.Invoice)) as Report;
    11.        Debug.Assert(report != null);
    12.             
    13.        report.ReportParameters["InvoiceId"].Mergeable = false;
    14.        report.ReportParameters["InvoiceId"].Value = "=" + id;
    15.        book.Reports.Add(report);
    16.    });
    17.     return new InstanceReportSource
    18.    {
    19.        ReportDocument = book
    20.    };
    21.}

     

  2. Stef
    Admin
    Stef avatar
    3610 posts

    Posted 06 May 2015 Link to this post

    Hi Laurent,

    The ReportBook only gathers already existing reports and does not change their definitions. Please color each report's PageFooter section and check if it is rendered when reports are added in a ReportBook and  when they are displayed individually.

    In order to investigate the issue further, please send us a demo project with the problematic reports, including test data.

    Regards,
    Stef
    Telerik
     

    See What's Next in App Development. Register for TelerikNEXT.

     
  3. Laurent
    Laurent avatar
    11 posts
    Member since:
    Mar 2014

    Posted 07 May 2015 in reply to Stef Link to this post

    Hi Stef,

    Thank for replying.

    I added color to the PageFooterSection background and have seen nothing. This section is not rendered.

     I cannot seriously consider to create a demo project and potentially inject other bugs. Besides, when I print each report individually (without inserting them to a ReportBook), the invoice is correctly rendered. The only change is the resolving method.

     Maybe I miss something. I don't think there is an parameter issue. But I can't say for sure. This section is not rendered at all. If I put a breakpoint and watch values, the page footer section and textboxes visible property are set to true.

     

  4. Stef
    Admin
    Stef avatar
    3610 posts

    Posted 07 May 2015 Link to this post

    Hi Laurent,

    Please test if the PageFooter sections are visible in PrintPreview mode or on exporting the ReportBook in PDF format.

    You can send us directly the report definitions, the logic for adding reports in a ReportBook and displaying the ReportBook without making a whole demo project. If we need additional information to check the settings and run the code, we will let you know.

    Regards,
    Stef
    Telerik
     

    See What's Next in App Development. Register for TelerikNEXT.

     
  5. Laurent
    Laurent avatar
    11 posts
    Member since:
    Mar 2014

    Posted 11 May 2015 in reply to Stef Link to this post

    Hi Stef,

    The report foot is visible within the designer. Each invoice printed separately has all the sections. That is when I insert them in a reportBook that it does'nt work anymore.

    The resolver method is mentioned above. Here's the view:

    01.@{
    02.    ViewBag.Title = Menus.Invoice;
    03.    Layout = "~/Views/Shared/_ReportLayout.cshtml";
    04.}
    05. 
    06.@section styles
    07.{
    08.    <link href="/Content/ReportViewer/styles/telerikReportViewer-8.2.14.1204.css" rel="stylesheet" />
    09.    <style>
    10.        #reportViewer1 {
    11.            position: absolute;
    12.            left: 5px;
    13.            right: 5px;
    14.            top: 5px;
    15.            bottom: 5px;
    16.            overflow: hidden;
    17.            height: 100%;
    18.        }
    19.    </style>
    20.}
    21. 
    22. 
    23.@(Html.TelerikReporting().ReportViewer()
    24.        .Id("reportViewer1")
    25.        .ServiceUrl("/api/Reports/")
    26.        .TemplateUrl("/Content/ReportViewer/templates/telerikReportViewerTemplate-8.2.14.1204.html")
    27.        .ReportSource(ViewBag.ReportBookModel as string)
    28.        .ViewMode(ViewModes.PRINT_PREVIEW)
    29.        .ScaleMode(ScaleModes.SPECIFIC)
    30.        .Scale(1.0)
    31.        .PersistSession(true)
    32.)
    33. 
    34. 
    35.@section scripts
    36.{
    37.    <link href="//netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css" rel="stylesheet">
    38.    <link href="/Content/Kendo/kendo.common.min.css" rel="stylesheet" />
    39.    <link href="/Content/Kendo/kendo.bootstrap.min.css" rel="stylesheet" />
    40.    <script src="/Scripts/Kendo/kendo.all.min.js"></script>
    41.    <script src="/Scripts/Kendo/kendo.aspnetmvc.min.js"></script>
    42. 
    43.    <script src="/Content/ReportViewer/js/telerikReportViewer-8.2.14.1204.min.js"></script>
    44.    }

    Thanks for your time!

  6. Answer
    Stef
    Admin
    Stef avatar
    3610 posts

    Posted 11 May 2015 Link to this post

    Hello Laurent,

    Please include the report's definition and the logic for creating the ReportBook. Also what is the running value of ViewBag.ReportBookModel. We need this information in order to create a test project with the report and test displaying it in a viewer.

    You can open a support ticket if you prefer to keep the information private.

    Regards,
    Stef
    Telerik
     

    See What's Next in App Development. Register for TelerikNEXT.

     
  7. Laurent
    Laurent avatar
    11 posts
    Member since:
    Mar 2014

    Posted 12 May 2015 Link to this post

    Problem solved.

     In the resolver method, I replaced this line:

    1.var report = Activator.CreateInstance(typeof(ReportDefinitions.Invoice)) as Report;

    By this one:

    1.var report = Activator.CreateInstance(typeof (ReportDefinitions.Invoice)) as
                    ReportDefinitions.Invoice;

    It worked!

Back to Top