I've seen similar behaviour. The only way it knows to fire a group footer is by reading the next record; maybe this has something to do with the problem.
One idea is to add a field to your cursor that would indicate the last line item for each invoice, and put this information in the detail band rather than the group footer. And use the print when/remove when empty for other records. Unfortunately, this might require another pass through the data cursor (backwards?) before printing to set the flags.
>
>Anyone have an idea why it happens and other work-around options?
Steve Gibson