Prevent new registrations for course after designated number of participants is reached

Good morning.
I could not find a sollution to the following Problem:

I have a table for which I provide a web form, where users can make entries, if they want to participate on certein courses.
The number of participants per course is limited.
Now, I want to automatically prevent registrations for courses that are already full.

Ideally, the webform would disable the selection of a course if the max number of registrations is met.

How to achieve this or something similar?

Hello, SeaTable does not support limiting the number of forms filled in at present.You can try to add a creation time column to manually filter registrants.

Thank you for your reply. Unfortunately, that would be a horrible sollution, as a participant, who fills in the form, rightfully expects his place to be set. Such thing would require the admin responsible for training spaces to manually contact each and every person, who signed up after the limit was reached and apologize etc.

I fear inthis case, Excel will continue to do the trick…

You can write a script that is checks for the number of records and disables the form. The script is then executed regularly via an automation rule:

The max. frequency for the script execution is currently daily. Is that enough?

1 Like

Well, i would let it run and check the number of entries against a max count, whenever a new entry is added. But how to disable a form script wise?

You cannot disable a form. This does not work in the web interface either.

But there is an API call to delete a form:

You can also change the submission deadline to a date in the past via API:

Thank you. That might work. Yet, I have solved it otherwise:

I created a table for each and every training and for each one a registration form, in which I check a counter column, if a max counter is hit. Then I send an email to the applicant, telling him his registration could not be met, due to the course being full.

Although this works, there are would have been a much nicer way:

  1. Have the different trainings being defined in an own table
  2. Have the registrations in another table and link each registration to its training and cutomer
  3. have an automation rule check, if the max counter of a training is hit

But: I found no formula or whatever to count entries based on a expression. For example: one cannot count the registrations for the training “How to recognize SPAM Mails”.

In contrast, if I group the registration table view by the kind of training booked, I get that sum easily shown in the grouped view.
Why is there no function to count by expression, or did I just miss it and it is there, somewhere?

This is the data model that I would use:

  • Table 1: Courses
  • Table 2: Registration

Every registration in table 2 is linked to one (and only one) course. Every course can have 0 to many registrations.

Now use a rollup (link formula column) with function count to count the registrations for a course. If the count is equal to the maximum number of participants, a formula field returns “Full”.

The result “Full” could be the trigger for a script to disable the registration form.

Blockquote
This is the data model that I would use:

Table 1: Courses
Table 2: Registration

That is exactly what I tried, but to no avail. Because in table 2, you then have something like this:

linked column:
Course1
Course1
Course 1
Course 2
Course 1
Course 2
Course 1
Course 2
Course 2

I could not count the Course 1 registrations and the course 2 registrations. So I did somehting wrong, or there is no funktion to do it.

Of course you can. In the table “Courses”, add a link formula field as use the formula “countlinks”. Done.

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