I'm trying to create an invoice where each generated PDF begins with a front page that includes summary information—such as the total, supplier name, and other key details—followed by a detailed table that may span multiple pages.
The PDFs should be dynamically split by 'document type', field meaning the number of PDFs generated can vary based on the data (from one to twenty or more).
I’ve successfully prepared the data for the table and used the Report Text tool to generate the front page. However, I’m struggling to ensure the front page appears only once at the beginning of each PDF, before the table starts.
Is this achievable using Alteryx's built-in reporting tools, or would I need to use a Python or third-party PDF plugin?
Solved! Go to Solution.
.
Hello @Laurence1 ,
In short, if I have understood your question properly, yes this is achievable in alteryx.
One way to tackel this would be as follows:
Firstly create your title page (either a generic one or one per Document Type). Then in the layout tool, set the layout height to fixed, at 12" (A4 size, adjust as needed for different page sizes). This will make sure that the tables will begin on the next page of the pdf report, instead of both the title and table starting on the same page.
If, like in my example, its one title page for all documents, then you will need to append all document types to this title page (otherwise you can skip this step).
To ensure the title page appears first, give it an order of 1 and then assign any order number greater than 1 to all of your tables.
Now union all of your records together to get the table shown in the results window below. As you will see, the title page (with order 1) appears many times.
Finally, in the render tool, make sure to check the "group data into seperate reports" option. You may need to specify a file path to do this. If you still want them to be stored in your temp directory then feel free to use the following: %Temp%/Output.pdf
I have attached the workflow below, but please let me know if you have any further questions. Hope this helps.
Regards - Pilsner
Thanks for your help, this solved it perfectly for me!