JasperReports - last line of a table on a page - jasper-reports

I have a table that gets split onto multiple pages due to it's size. The style of the table doesn't have the border between two rows and when the table gets split the last row doesn't seem right due to the missing bottom border.
I just want the last record to terminate with a border so that the page seems complete.
Is there a way to set the bottom border to the last line on the page or, how should I implement this behavior?

You can use a horizontal line in the border of the band in which you are using the table.
The option for drawing horizontal line is available in Palette.

Table column footers repeat just like column headers. By adding a top pen border to the column footer the effect is perfect.

As per your question i am not totally confident about my answer but may be u can do by just adding one sub-report after your table and just put one line from pallet in that report may be that will help u to make your report more clear.
Thanks,
Hiren patel

Related

Can a child text box grow with parent rectangle in SSRS

I have a rectangle with 2 subreports in it. I am trying to have a "header" text box to the left of the two reports that grows with the rectangle so that the "header" stays centered with the content. Current Arrangement
Desired Arrangement
I'm not sure how you have constructed the table/rectangles but this should work...
There is almost certainly a better way of doing this but this does work...
First insert a table. Delete the last two columns so you only have a single column left.
Then Delete the header row, you'll have a single cell remaining.
Now go to the Row Groups at the bottom of the screen, click the drop down and choose, "Add Group" --> "Parent Group".
In the dialogue, type 1 in the Group by field (this is just a dummy value) and select "Add group header". Click OK.
Optionally, you can right-click the details group and delete it. Select Delete Group Only when prompted.
Now the left column is merged so you can put your header text in there and set Vertical Align to "Middle". Add you sub reports as required and it will always be centred. Sere's some examples with different sized sub reports.
and finally with the text rotated which if your header is short and be formatted in a large enough font, sometimes looks better.
I left the ugly border in place so you can see the positioning more clearly.
Create a table with two cells. Your header cell on the left and a blank cell on the right. Then create a second table with your data. Drag and drop it into the blank cell.
The grouping in the parent cell will apply to the child cell in the table. The parent table's dataset will override a different dataset in the child table (which I doubt will cause any concern for you).
To make it look right you will want to remove the outside borders of the child table.

SSRS unusual Pagebreak in a long text

i am creating a report for SQL Server 2008.
i have a table with some rows. One of the row has a long text which will be displayed. If the text has a certain length, the whole row will be displayed on the second page and the half of the first page is empty.
If the text is a bit shorter, the text will be displayed correctly on the first page.
If the text is a bit longer, the text will also be displayed correctly (the first part of the text on the first page, the second part on the second page).
I cant find any settings for this problem.
Does anyone have a solution?
Thanks
Alex
You could look at the Keep together on one page if possible setting at the Tablix level.
You can also look at the KeepTogether property at the row level and at other levels, e.g. Group.
Another option is to insert any objects to be kept together in a parent Rectangle object; this will always keep items together where possible.

Dynamically resize if hiding rows conditional in SSRS report

I'm working on a report which displays a configuration for a product, which depending on the product choosen has specific properties. I thought it would be handy to have one rectangle with a table on the left (tblDetailsB) and one on the right side of the report (tblDetailsA) (don't mind the order of A and B here...).
Under the rectangle I have another table which shows a list of drawers (if they're part of the configuration), this list comes from another dataset.
My problem is the size of the rectangle which holds tblDetailA and tlbDetailB is fixed (that's usually why one chooses a rectangle to hold..) and my tlbLade subreport for the drawers is under a lot of whitespace..
I could use subreports for tblDetailsA and tblDetailsB but I don't want to have too many of them..
I got myself into this mess, maybe someone knows a much better idea to solve this?
Thanks to http://www.sqldev.org/sql-server-reporting-services/hidden-rows-still-displayed-9660.shtml
I found out I have to suppress / hide the rows in the static row group under the details group (switch to advanced mode first..).
When I did that the size of the Rectangle (container) was ignored when the rows where hidden :)
Regards,
Mike

Nested table height auto increase?

I am trying to create a report in SSRS using Report Builder 3.0 where there is an ungrouped section of data (in the screenshot this is called "Risks") followed by a grouped section of data "Controls". There can be many controls to one risk row as seen in the row with the "Ref" 3a. After the grouped set of controls it goes back to the ungrouped risk info (see below).
screenshot
I have made this work by using a nested table inside one of the cells, this all looked fine until I added a larger amount of data in the cell "Consequences". As you can see this does not look good at the moment as the inner table does not grow.
My question, is there a way to make the inner table grow, so the 2nd row text would be in the middle of that row and the background colour would take up the whole row, so it does not leave a white space?
I really appreciate any help you can give.
Thanks,
Glenn
I do not believe this to be possible as the nested tablix is by its own right optimised for space and visual appearance.
I know what you want to do and I can only suggest you tweak yourn report to query this data in one and produce one tablix. Not ideal I know as this will mess the arrangement.

iTextSharp and moving some data to next page

I am creating an invoice using the iTextSharp. That displays nicely but sometime, when invoice items are larger in qty, the summary portion (which displays subtotal, tax, discounts, grand total etc) is splitted. Some displayes in current page and some moves to next page. I was thinking to move entire summary portion into next page, if current height left is not enough for that.
However, to do that, I need to know that how much page height is left (after my current page content rendering). I wonder if someone know how to calculate current left height of the page? OR if there is a property in the pdfPTable which may force the table to print itself as a whole and dont let it split across multiple pages! I guess if second option is available, it will be easy.
In summary, I need to know if it is possible to calculate remaining page height, and also if that is possible to force a table to NOT split across multiple pages.
thank you.
Sameers
You can set SplitLate to false to avoid auto page break in a cell data exceeds limit.
......
table.addCell(cellData);
table.SplitLate = false;
......
I suggest you use a nested table for your summary section. I don't believe iText will split a given cell on a page boundary, so everything in that cell (even if its a nested table with cells of its own) will stay on the same page.
Use the table's cell's row span so it takes up an entire row on its own.
I'm not certain, but I'd wager a beer on it.
What object are you using to add your data to the PDF? MultiColumnText, Paragraph, Phrase?
You should be able to use Document.PageSize.Height property to return the height of the Page.
Then use PDFPTable.Height to return the height of your table.
So just use the logic Document.PageSize.Height - table.Height, and you'll have the remaining y-axis space available.
The PDFPTable object has properties named SplitLate and SplitRows. I believe you can use these properties to try and keep the table on one page.