Booking System: Check to see if resource is available

Hi all

I’ve got a base that records the bookings of meeting rooms. It’ll be used to schedule bookings across all the rooms available.

So I’ve got something like this:

{Room} - e.g Room 1 (This is a linked field)
{Start Date}
{End Date}

I need to be able to check whether a {Room} is available when making a booking. I don’t want a room to be available as an option if it’s been booked. If there’s a clash of dates, then a room can’t be selected.

What would be the best way of achieving this?

Hi @Keren_Aarons,

@Kamille_Parks has built a Custom App for exactly this purpose:

You’ll have to check with her about how/if she is distributing it.

1 Like

This seems more directly applicable to one of my other projects, Scheduler:

Or one of Scheduler’s four predecessor scripts. All of which are available on my GitHub (as well as the Check In/Out app’s code). https://github.com/thekamillionaire/airtableScripts

I’d say use the app if you want to select the Room, then the available dates. Use one of the scripts if you want to select the dates, then an available room.

3 Likes

Hi Kamille

Thanks so much for your response - your scripting skills are well beyonmd mine and you’ve created some amazing tools. I haven’t yet ventured into the scripting blocks at all, so will have to do some reading on exactly how I get this work. But it seems your “Create No-Conflict Asset Reservations” script is what I’m looking for. Much appreciated!

Hi Jeremy

Kamille’s blocks and scripts look amazing, but was wondering if you knew of a way to do this without using scripts or apps?

I do know of a way to accomplish this without scripting or apps, but it is quite complex, and by no means easy to explain in the text of a forum post.

I don’t really have the time to explain it, but I’ve crafted an example in this base:

The tables you are concerned with are:

  • ❓Availability
  • ⛱ Sites
    and
  • 📚 Bookings

You will find that they are related in such a way that the ❓Availability table is used as a querying table where a Site Type and desired dates can be entered to surface Available Sites in the “Availability Check” view of the ⛱ Sites table.

Frankly, my honest suggestion is to use Kamille’s excellent Marketplace App. Since it’s in the Marketplace, installation and setup should be a breeze, and you won’t have to do any scripting.

Alternatively, I have a much simpler Custom App than Kamille’s that only watches your table and detects scheduling conflicts, making them apparent and easily accessible in from the App. I’d be happy to provision this app into your base, if desired – but you’ll find Kamille’s is much more fully featured.

Here’s a little gif of that App in action:
https://github.com/jmoglesby/airtable-blocks-schedule-conflicts/blob/master/media/sched_conflict_block.gif

1 Like

Thanks so much for this Jeremy and I really appreicate your time and patience. I will work my way through your example - love learning new things!

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