Generate several PDF every month, one for each client

Dear AppSheet no-coders,
I want to generate a monthly report of working hours for each client. I have several clients, so the number of reports will vary from month to month and I don’t want to setup an action for each of them.
I have already created the slice that contains all the un-invoiced hours, but I don’t know how to break it down by client so that the rows for each client will go into a separate PDF file. I looked for the solution on this forum and the AppSheet support articles but couldn’t find it: thanks for your help!


1 Like

Do you have a clients table?

1 Like

Yes, I have two simple tables: a clients table and a table logging the hours by client.

Setup a Report to run monthly then. Use a START expression in your body or attachment template to iterate through the list of Clients (or a Filtered list of Clients).

1 Like

Thanks @Marc_Dillon, I understand the iteration is performed by the START expression, but I suspect I will end up with all clients on the same PDF. So what does that expression need to include in order to generate a different PDF by client.
I hope I am clear enough…

I’m sorry I got confused between threads and gave you the wrong info in my previous reply.

You’ll want to set up your report to run on each row in the clients table. Optionally set a condition for each row.

Your template would NOT use a START expression that would iterate through clients. But rather a START expression that would iterate through records in a related table (like the slice of un-invoiced hours), based on each client.

1 Like

Thanks, no problem.
We are getting there. However, in my hours log table, I may have several rows with the same client, so I would end up with several reports per client now…
But I guess I could set it up the other way around: run the report on the client table, with a report for each row, and have the un-invoiced hours rows of the time log table as a “child” to the client table? Is that the idea ?

No you wouldn’t. You are running the report for each row of the client table.

That’s exactly what I already said.


1 Like

Great, I understand now. I went a little too fast when reading your answer :innocent:
Thanks again