I have a solution which needs to produce subsummaries for groups of line items. This all works perfectly except for one thing. Every page should end with a summary of the costs of all the lines in the last group of that page. In other words, if there are 3 items in the group, and we’re near the bottom of the page, only put that group in if it doesn’t break across the group.
This worked fine in Filemaker (see attached), but is apparently ignored in Servoy. The lines belonging to a group are broken by a page break whether it is set to 'allowbreakacrosspagebounds is ticked or not. The trouble is that these estimates sometimes have hundreds of lines on them, so to insert blank lines to push items to the next page is impractical, and would be broken by any new lines being added to an estimate…
In the filemaker version, the page will not break across lines belonging to a group, like this (note the empty space below the subsummary, each page ends on a subsummary):
[attachment=0]Filemaker.png[/attachment]
This is the Servoy version:
[attachment=1]Servoy.png[/attachment]
Any ideas on what I need to do to make Servoy mimic Filemaker…
Definitely use Jasper for next time, but for now, I need to just make this damn form behave like it did in Filemaker… Is it not possible to do what we need??
It seems Servoy just thinks different currently than other software on the market. Servoy just does not think in subsummary groups of parts, to come close to what you want is to enable pageBreakAfterOccurrence on the trailing subsummary
What is the point therefore of the allowbreakacrosspagebounds options on the subsummary parts? Presumably this will always be a very short (in height) part, therefore unlikely to need to break across page bounds… Surely the more useful function would be to allow or not allow the group defined by the break field to break or not break across a page???
If I define my body part to NOT break across a page, (in list view - with the body part only tall enough to accommodate a normal text height dataprovider), it seems entirely ignored. None of the options to break or not break across page makes any difference.
I therefore see no point to the break options if it is not for doing what I am trying to do…
Well any part, including a subsummary part can grow…and it could be an option for the printing subsystem to break the part itself on a page boundary ,the allowbreakacrosspagebounds option tells what todo.
Except that turning on or off any of the options on my form makes no difference to the printed form (particularly the body part - which does grow in height with more and more lines), it still breaks across page bounds if I do NOT tick allowbreakacrosspagebounds. I think I’m failing to understand what the point of any of the break options are…
What you want to do in the initial post is not currently supported. The closest approach I can think of is what Jan suggested earlier, but then you have only one group per page.
About allowing parts to break across page boundaries: let’s say you have a trailing subsummary that contains 3 rows of components (labels, fields…). If that is to be printed at the end of a page that only has room for 2 of those component rows and allow break is true, then it will print 2 of them on that page and the other one on a new page. If allow break is false it will print all 3 on a new page. The same would happen with other parts as well.
A trailing subsummary is considered to contain only the part itself, not the records in it’s group (that are in fact body parts), that is why allow break does not affect groups of records - this is unsupported as I said before and could be added as a separate option.
While printing, there is currently only on possibly view type: list view (succession of record-view type body parts). So each record is interpreted as an independent BODY part. That is why allow break did not have the effect you desired when printing a list view form. You probably expected that the body would contain all records, while in fact, each record is seen a a separate part. If you had a multiple line body part defined in the form, you might have noticed the difference.