We are an accounting firm, and we have some jobs/tasks that are repeating in time, like… Quarterly VAT filings and things like that.
Outside of Grist what I would do is:
Have an “Obligation” table listing what has to be done: client, form no, months, user.
MSFT INC, VAT Form, 1;4;7;10, marc
Grist Inc, ThatOtherForm, 4;10;12, john
Then at the start of the month I would just query that table and create a new line on another table “Task”: client, obligation, user, month, status.
I use the secondary table because we need to keep a log of all those instances, I cannot have a single “status” field on Obligation.
As far as I see there is no way to “schedule” functions (to create the Task lines). I guess I could do something with Pabbly, Zapier, etc. But… Maybe there’s a native way to achieve what I want? Maybe with another structure, dunno.
I also have an accounting firm and everything up in Flexie.io in the past (before companyhub). I still create tasks through flexie though but I also have a solution for you.
First I will let you know how I have set up my company.
I created 3 tables for this (lots more but for VAT I would recommend 3). 1 Clients, 2 Years, 3 VAT returns.
In clients I have fields for active (yes/no), reports (yes/no) and VAT (yes/no).
In Years I have fileds to let me know when someone asked for a report, when its done, when its send and when its approved. But also fields to calculate and check the yearly VAT returns.
In VAT returns I fill in the same fields. So the fields to control how we are doing with all the vat returns for that period but also fields that I can see how much should have been paid.
Okay now your request. You van use Pabbly, but maybe this is easier.
I would suggest to filter all active clients and export this to excel.
Import that file in GetGrist (or use webhooks) to create the year in the years table
If a new client gets created, a webhook should create a year so at all times you have all the years you need. When a new quarter arrives filter all years with VAT active and then you can create new entries for VAT returns.
Here you can see my clients dashboard: Image-2023-09-27-at-1.50.14-PM
First widget are the clients details with amongst others Actiefklant (client yes or no), BTW (Vat active yes or no) and Jaarrekening (do we need to set up an annual statement
Second widget shows me all years for that client
Widget 3 calculates from THE 4rd widget all VAT returns for that year and shows me the difference with the bookkeeping (1501 to 1508 are ledgeraccounts for VAT)
Widget 4 shows me the filled in VAT return and the satus of this and I fill in all ledgerdetails when we filled the VAT return. So later I can see and recalculate if necessary (things changes in the bookkeeping as you know).
I also have my timespending there, invoices, costs, messages and tasks. I have a seperate task survey, but VAT returns are period specific so I don’t create records for that.