No Report Headers - Workarounds?

  • So RS does not have Report Headers, only Page Headers, which are created and appended after the body of the form is generated.  I had a fairly simple objective which is very difficult given the restrictions.

    I want to have a report header show up only once on the first page, like a report header should , but not on any other page.  This has a medium sized square image, as well as customer and report titles large and in bold, along with a month label. 

    For the other pages 2 - n, I want a collapsed, 1-line page header on each.  No image, just a customer, report name, and month label on a single line to save real estate.

    I know I can turn off the entire page header on the first page, but I also have to have a 8.5" colored bar across every page, so I can't.  The bar is there to make the reports appear like letterhead.

    I've messed with visibility, which works, but it doesn't collapse the white space up when visibility = false.  So I've had to put the one liner in the page header with a toggle on visibility, and the report header in the body at the top.  The problem I'm having is that I have to allow the blank visibility space on the first page which makes the 'report header' format wierd.  Any suggestions?  Thinking maybe something to collapse white space when visibility = false...

  • Have you though about placing a new data region prior top your existing data region?  I do this on reports to allow a parameter list to print on the first page, then force a page break so it appears on only the first page of the report.  The remaining pages then use the Report Header.

    Dave

  • By the way, RS does have Report Headers. Right click on that grey square in the upper left corner of the layout design window, and you can turn on the Report Header or Footer.

  • Actually Dave McF., that is a page header and not a report header.  There is a difference between the two, which is causing my prob.  Crystal has both that run independently of each other so you can configure settings on them separately.  SSRS chose to go with headers for page only.

    David Klug - That's kinda what I'm doing right now, only I can't have a page break after the header for my purposes, otherwise, that would be right on.  I'm only off by .25" on pages 2-n with the collapsed header but it bothers me.  You know how it goes...

    Thank you both the replies.

  • My bad, I had them switched in my head. I'm got a bit confused, as RS does allow for a Report Header, it's just in the body itself, which I see you've acknowledged. I just saw the "RS doesn't have Report Headers" and didn't get a full grasp on what you were getting at.

    Now that I see what you want to accomplish, back to your problem. I'm not at a machine with designer at the moment, but have you toyed with trying to get that colored bar into the report as a background image?

  • Wow, didn't even think of that.  Was trying to stay away from imaging as much as possible, but I'll give that a try next chance I get.  Thanks for the followup. 

  • Try putting the items that you want to use as "report header" within the "body" section but above the list or table that functions as the meat of the report.

    I do this concept for report "footers" by placing the items below the list or table, but still within the body section.

  • This is an interesting method. But the problem is that on the first page, the "report header" items appear BELOW the "page header" items.

  • You may convert your crystal report rpt to SSRS with Crystal Migration Services.

    http://www.crystalmigrater.com/Default.aspx

    Then you may know how it works. I wrote a draft about this. Here it is.

    Crystal Reports Header and Footer

    In Reporting Service (SSRS), there is no concept of Report header and footer. SSRS consists of three parts, page header, report body, and page footer. In Microsoft Crystal Reports migration guideline, it was advised that the Crystal Reports report header will go to the page header in SSRS, while report footer to the page footer. Actually this is only part of the story. Let us go into more details on why we can not always take this direction.

    In Crystal Reports, report header comes before the page area, and report footer goes before the page footer. First, if the report header or footer is too big, it may not fit in the page header or footer in SSRS. In a word, sizing may be a problem. Second, even if the size is OK, it will not a good idea for report header or footer to repeat for each page. Of course there is a choice to let report header to show up only in the first page and report footer only in the last page, but there are extra spaces in the pages other than the first page and last page. To remove the extra space, some people go by let the content in the report header or footer become subreports. This is a better solution, but it added extra complexity to the report. Finally you can not always convert the report header or report footer to page header and page footer in SSRS, because in Crystal Reports, report header and footer do not necessarily consist of only text and pictures, it can have charts, crosstab and olap objects. For all these objects, they will become charts and tablix objects in SSRS. It is well known that charts and matrix objects can not reside in page header or page footer.

    Since page header or page footer are not the right places to hold the conversion of Crystal reports header and footer, there is only one place left, that is, report body. Yes, this is exactly where report header and report footer should go. Report header will go to the start of the body in SSRS, while report footer to the end of the report body in SSRS. In SSRS, charts and tablix can be put into the report body. Here is the table to show how to convert Crystal Reports areas to SSRS areas.

    Crystal ReportsReporting Services

    Report HeaderBody (Start of the body)

    Page HeaderPage Header

    Group HeaderBody (Group row in Tablix)

    DetailsBody (Details row in Tablix)

    Group FooterBody (Group row in Tablix)

    Report FooterBody (End of the Body)

    Page footerPage Footer

    Now all the areas in Crystal Reports can be converted to areas in SSRS. However there is still a problem left. In the Crystal Reports when the report is printed, the Report header comes first, immediately after it is the page header, while in the converted SSRS report, the page comes first and the report header part comes after it. Is there a solution to maintain the same behavior in the conversion results? Yes, the solution is to convert the page header in two areas, one is the page header as above, the other to the report body immediately after the report header conversion result. In addition, make the first page header not visible in the first page. In doing so, the layout of the conversion results will be the same as that in the Crystal Reports.

  • brett grammar (1/25/2007)


    So RS does not have Report Headers, only Page Headers, which are created and appended after the body of the form is generated. I had a fairly simple objective which is very difficult given the restrictions.

    Ruh roh 😀 "Fairly simple" sets off warning bells for me when it comes to RS 😀

    I've messed with visibility, which works, but it doesn't collapse the white space up when visibility = false.

    There are some odd rules with visibility, it will act differently depending on whether you've hard-coded False, or if it's an expression; the behaviour may change between 2008 service packs because they noticed (and maybe fixed) this; and it will alter depending on if you're doing a preview or viewing the report through the web interface; and also alter depending on whether it's HTML or PDF output. Phew!

    A simple way around it is to create a single-row, single-column table instead of a text box, and create a static row group (group on the expression =1). Then use the Filter on the group to turn it on and off depending on what the setting of the Globals!PageNumber.Value is (I may have misspelt the name). It will always collapse the white space. This can't be done in the header or footer though, and you'll have to point it at any data set to get it to compile.

    I'm not sure if that answers the rest of your question because it's a little complicated and muddled for me, but you CAN definitely get it to collapse that white space using Filters.

Viewing 10 posts - 1 through 9 (of 9 total)

You must be logged in to reply to this topic. Login to reply