Generate multiple PDF reports (one per row) automatically after editing final table values

Hello everyone,

I have an AppSheet app that manages a list of machines. Each machine has multiple characteristics, and I already have a document template where these fields are filled in.

What I want to achieve is:

  • Each row (machine) should generate its own PDF report using the template.

  • After I finish editing or updating the final values in my main table (for example, after confirming all data is correct), I want AppSheet to automatically generate all the individual PDFs at once — not one by one manually.

I already have a working template for individual reports, but I’m looking for the best way to trigger mass generation of all the PDFs (for every row) after final data confirmation — ideally from an automation, a bot, or a single button/action.

Has anyone implemented something similar or can suggest the most efficient approach?

Thanks in advance!

Assuming

  1. When you mention you have a main table , we assume it is a different table from the Machines table.

  2. In the Machines table you have a list of machines with each machine having its own row of data. The PDF template is based on this row of data for each machine.

If so, please try below.

  1. Please add a physical column called something like [Run_Machine_Report] in the Machines table. The column type -Number, Initial Value 0, Please disable the Show_if for this column.

  2. In the Main table , add an action type “Execute an action on a set of rows” with the following settings. In the expression Machines[Machine_ID] , MAchines is the name of the Machines table and [Machine_ID] is the name of the key column of Machines table. Please change with the actual names you have.

  1. Create an action called “Create Individual Machine Report” of type “Data” Set teh values of some columns in this row” in the Machines table with the details like below

The expression for the action [Run_Machine_Report}+1

Please hide this action.

  1. Create a bot on the Main Table with settings like below

Bot on the table Machines. The bot to run on updates to the table. The bot to have condition [_THISROW_BEFORE].[Run_Machine_Report]<> [_THISROW_AFTER].[Run_Machine_Report]

  1. The step “Create Individual Report” in the bot would have the typical PDF generation step with ypur PDF template.

  2. When the user taps on the “Create All Machine Reports” action in the Main table, the Individual reports will be created.

Please ensure there are just handful of machines and not hundreds of machine because the report will be generated for each machine .

Another alternative , if you do not wich to have on demand reports but just say daily once reports , you could use scheduled bots that say run in the evening or at the beginning of the work day etc.

1 Like

Hi Suvrutt,

Thank you for your explanation. I just want to clarify one point: in my case, I do not have a Main table and a Machines table. Instead, all the information is in a single table, where each row corresponds to a machine. I am not using an additional “Main table”.

Is it possible to apply your solution using just this single Machines table? Should I adapt the actions and the bot so that everything is triggered from the same table?

Thank you in advance for your guidance.

I am attaching a screenshot of my table for reference.

Best regards.

1 Like

Thank you for the update. Here is revised suggestion :slightly_smiling_face:

  1. Please add a physical column called something like [Run_Machine_Report] in the Machines table. The column type -Number, Initial Value 0, Please disable the Show_if for this column.

  2. In the Machines table , add an action type “Execute an action on a set of rows” with the following settings. In the expression Machines[Machine_ID] , Machines is the name of the Machines table and [Machine_ID] is the name of the key column of Machines table. Please change with the actual names you have. Please have the condition for this action as [_ROWNUMBER]= 2 . This means this action will always be available only from 1st Machine’s row.

image911×567 82.7 KB

  1. Create an action called “Create Individual Machine Report” of type “Data” Set teh values of some columns in this row” in the Machines table with the details like below

The expression for the action [Run_Machine_Report}+1

Please hide this action.

image

image852×540 66.3 KB

  1. Create a bot on the Machines table with settings like below

Bot on the table Machines. The bot to run on updates to the table. The bot to have condition [_THISROW_BEFORE].[Run_Machine_Report]<> [_THISROW_AFTER].[Run_Machine_Report]

image

image1253×652 101 KB

  1. The step “Create Individual Report” in the bot would have the typical PDF generation step with your PDF template.

  2. When the user taps on the “Create All Machine Reports” action in the Machines table in row 2 Machine record, the Individual reports will be created.

Please ensure there are just handful of machines and not hundreds of machine because the report will be generated for each machine .

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.