Prevent header being split into multiple page - reporting-services

In SSRS, there is a KeepTogether attribute for groups to prevent them split across 2 pages. But is it possible to apply the KeepTogether attribute to headers?
I have a group that has 3 rows of headers, in some cases, when rendering the data, if it comes to the end of the page, but still able to fit 1-2 rows, it will print the 1-2 rows at the current page, and split the rest of the rows to the next page like. Thus, the header will be splitted when export to PDF like the image below:
Any idea on how to fix this?

You can try this to see if it works. Make sure your Row Groups window is showing at the bottom (go to the view menu and check grouping if it isn't). Then press the little down arrow at the top right of that bottom pane and enable advanced mode.
Click the groups. They will highlight a pane in your table. Find the one for the header you are having problems with. Now look at the properties pane on the right (you can use the view menu to turn it on if it's not there). There are a few properties to try here. Try experimenting with KeepTogether and KeepWithGroup options.
If that doesn't work out with you then it looks like your only option is going to be the Insert Page Break Before option in the table options menu.

Related

Using RStudio DevTools, can you prevent the Environment Pane from hiding column values with ellipses (...)

I'd like my data to at least extend horizontally to the edge of the environment pane, but it gets truncated even if there is plenty of room left in the pane. Columns of class "chr" appear to be restricted to showing only the first 4 entries (yellow arrows in the first picture), and columns of class "num" and "int" tend to show either 5 or 10 values (green arrow in the first picture).
Right-clicking on one of the rows and selecting "Inspect element" brings up RStudio DevTools; using that, I can at least enable a scroll bar by changing "overflow-x" from 'hidden' to 'scroll'. However, the scroll bar only scrolls to the original 4, 5, or 10 values that were shown, and then you still see the ellipsis. Changing "text-overflow" from 'ellipsis' to any of the other options seems to have no effect, nor does changing any of the other properties (padding-left/right, border, white-space).
I'd just like to see more data in that pane or enable a scroll bar at the bottom of the pane instead of for each individual row, but I can't find any settings to change to enable this. The theme I'm using is Tomorrow Night Bright if that matters.
You definitely can't do it using RStudio DevTools. RStudio implements their display using Chrome, so RStudio DevTools is just Chrome DevTools: the truncation of values has already happened before Chrome sees it.
There's probably a variable somewhere in the RStudio sources that controls how the truncation takes place, but I don't know where. You can look through the sources here if you want: https://github.com/rstudio/rstudio . I kind of doubt that it will be something you can control from R, but you never know.
So I can't offer a general solution, but I can offer a small hack. Normally I use this when I want to look at an expression: many debuggers let you watch expressions, but RStudio just shows you existing variables. However, if you want to see x+y in the environment pane, you can just calculate it in the console:
`x+y` <- x+y
and it will be displayed. (You've also created a new variable, and possibly stomped on an existing one.) This doesn't change like a live expression, so it's not that great, but it's better than nothing.
For your purpose, the thing to calculate would be something to display the missing bits of your display. If you want to see more manufacturer values, then do something like
mfr <- paste(mpg$manufacturer, collapse = " ")
This creates one long string, and will show as much of it as will fit.

SSRS: Remove empty spaces in report

Below is the output I'm getting. Even when all options are collapsed, I have a ton of empty space that I'd love to eliminate. I have tried row visibility and textbox visibility, but those are currently working to keep my expand/collapse working correctly, I believe. I also tried looking in the properties pane (F4) and messing with the CanGrow/CanShrink properties but no luck in changing output.
How do I fix this?
UPDATE: Here is the design view
Undo all the visibility changes you have made, and probably the undo the group expand collapse changes you made so you have a fresh start.. Even better, create the tablix from scratch again.
Then on the row group properties under the main design window, right-click the row group you want to initially hide and choose properties.
On the visibility tab.. Select "Hide" (if you want the rows in this group to be hidden when the report opens). Then Check the box "Display can be toggled by this report item" and choose the name of text box from the parent group that you want to click to expand. For example, if you were hiding the 'day' group, selected the text box that contains your month name (default this will be the same as the field name).
That's it, just those two steps to achieve what you want. You can repeat this process the month group using year as the toggle etc..
Ultimately, I found a solution by using Report Builder to do what I wanted it to do. I was able to get the output by visually confirming the template. What's strange, is that when I created it, I then opened it up in Visual Studio to see how it differed, and there was absolutely no visibility changes. Meaning, no cells or rows had the Hide option checkboxed.
Furthermore, it differs from what I built previously by not having the extra columns within the grouping, and maybe that's where the extra blank space was coming from. But unfortunately, I found no quantifiable explanation to better help others.

Form layers for fields in Access

A very simple problem to which I cannot find a solution:
I have a form with 2 (will be more in future) pages. So far I have completed the first page (Main) and now I'm about to do the second page. However, some fields are showing up on both pages.
How do I "anchor" the fields to a specific page so they don't show elsewhere?
Just make sure you have pages of even height, and set for the form AutoSize to True.
Also, hide the vertical scrollbar and implement your own paging control.
1) Go to Design View
2) Cut out the fields (ctrl+X) which are in wrong place
3) Go to sheet property and manually select the desired page location
4) Insert the fields there (ctrl+V)
For some reason it didn't work for me in any other way (ie. I couldn't select my page with a simple click on the page itself, I had to select it through properties).

Keep header row in each page

I'm writting a SSRS 2008 report using 1 tablix and 2 Row groups, I've flagged the page break options for the parent group and Rows headers options in the tablix properties.
The page break is working fine, but I can't show the header en each page. I was tried to many ways with unsucessfully result.
If you want a page header to appear on every page, there is an option to add page header sections in SSRS: on the design surface, right-click the report, point to Insert, and then click Header or Footer.
More information about page headers and footers in SSRS can be found here.
There's two sets of properties and both have to be set... one on the tablix itself (repeat on new page), then just above the group list there's a button on the right to go into advanced mode. That shows you some hidden (Static) groups, and once you select those they also have properties to repeat on new page that have to be set.

Different odd/even pages in MS Access reports

For a report in MS Access (2007) I need to put data of some columns on all odd pages and other columns on all even pages. It is for printing out double sided card files onto sheets of paper.
Does somebody have an idea how to do that?
Your question is too general. I would suggest you have all columns in all pages, and then add some code to the page header section (or even in the detail section) "On Format" to change the .Visible property of your Detail text boxes depending on the page number.
I think you'll need to have a Text Box in the page header or footer with "=[Page]" as source data in order to know the correct page number. My Access report knowledge might be severely outdated, though.
Well you can check whether "Page" is odd or even in an "On Format" event and maker columns visible or not visible depending on which page you are on. However, it would be far easier to:
Put in a couple of sections and put in a new page between them. Then it's just a matter of ensuring that you don't overflow the page with too many rows per card.
OR
Make the report wide enough that it forces a second page and then place those columns on a second page (i.e. the back of the first page). As I recall access's print order is left right top bottom, so pages set up like this:
A B
C D
would print like this:
A
B
C
D
In the case of having to display data from the same record on two consecutive pages, this is the option I would choose.
You could alternatively use a pair of queries, printing the first to side A, and the second to side B, perhaps?