Check Printing with Variable Invoice Lines and Per-Check Data Outside Table

Posted by: daniel on 24 February 2026, 11:20 am EST

  • Posted 24 February 2026, 11:20 am EST

    I am building an AP check printing report using a Page Report in ActiveReports. My JSON data source returns a flat array where each row represents one invoice line, with check-level fields (payee, address, amount, MICR line, signature) repeated on every row. Multiple invoice rows share the same check number.

    My goal is a standard check layout:

    • Check header area: payee name, address, check date, check number
    • Middle section: a table with repeating invoice lines (description, invoice number, amount)
    • Check bottom: total amount, written dollar amount, MICR line, and a base64 signature image

    I have the table working with a group on checkNumber and NewPage = Next to paginate per check. The invoice lines display correctly.

    The problem is that fields placed outside the table (the check header and footer areas) do not change from check to check — they stay stuck on the first check’s data.

    I looked at the sample invoice report that ships with ActiveReports and it appears to have fields outside the table that do change per invoice. I’m trying to understand the correct pattern to replicate this.

    My questions:

    1. What is the correct way to have free-floating fields outside a table update per group/per check in a Page Report?
    2. Is a List control the right approach as the outer container, with both the free fields and the table inside it?
    3. Or should all per-check fields actually live inside the table as Group Header/Footer rows?

    Any guidance or a pointer to the relevant sample would be greatly appreciated.

    Thank you

  • Posted 25 February 2026, 7:06 am EST

    Hi Daniel,

    Yes, you are on the right track. You’ll need to use a List to have free-floating fields outside a table for per-row/per-group data, as the list repeats for each row/group.

    To learn about working with list you may refer to List - Documentation.

    You may also refer to our list demo here List - Demos.

    Regards,

    Anand

  • Posted 25 February 2026, 11:24 am EST

    I was able to create the report with a list, but my check face needs to be anchored at the bottom of the page. It get’s pushed to the next page when I place it in a container at the bottom. I have a table at the top, which will be limited to a total number of rows that will fit on the stub. So it will never grow over the number of rows that will take up too much room for the check face to be printed at the bottom. How can I anchor the check face at the bottom of the page.

  • Posted 26 February 2026, 2:58 am EST

    Hi Daniel,

    To anchor some content to print at the bottom, you can replace your ‘List’ with a ‘BandedList’, which is the same as a List but with a Header and Footer.

    Then you can place the controls you wish to be printed at the bottom within the Footer, and then set the Footer’s ‘PrintAtBottom’ property to ‘true’.

    Also, remove any page break in your detail section (to prevent moving the footer to the next page) and instead set the Footer’s ‘PageBreakAtEnd’ to ‘true’.

    Note: If you want to place values unique to each data element in the Footer, then add a grouping to the BandedList and place the content in the GroupFooter. Also, make sure to bind the grouping to a value that is unique for each row so the GroupFooter repeats for each Detail and has the field values of the specific row.

    Please find attached a sample implementing the same.

    However, if the issue persists, please try sharing a minimal runnable sample that replicates the issue so we can test the same on our end and further assist you accordingly.

    Regards,

    Anand

    Sample-BandedList.zip

Need extra support?

Upgrade your support plan and get personal unlimited phone support with our customer engagement team

Learn More

Forum Channels