I figured out a way to solve this problem (without using RepeatWith, RepeatOnNewPage or report background image)
I wrote simple code to add empty rows to a table in the body. The number of rows added will be determined by the height of the body and the height of the line.
For example, if the height of the body is 6 ", and the height of the line is 0.5", then only 12 lines can be inserted into one page. Therefore, if your table has 4 rows, add 8 additional black rows so that the height of the table is equal to the body of the report.
If the number of lines is more than 12, say 15, then you will add [12 - (15 mod 12)] lines, i.e. 9 blank lines.
And you can have side borders on any of the columns as needed, with the result that the vertical line runs throughout the page.
source share