Skip to main content

Asset Reservations: No Double-Booking


Kamille_Parks11
Forum|alt.badge.img+25

Use Case: You have a table of assets (library books, conference rooms, etc.) that you want people to reserve, but don’t want people to be able to reserve an individual asset at the same time it has already been reserved.

Solution: No-Conflict Asset Reservations script by Kamille. This script allows you to schedule a new asset reservation in a form-like interface by setting a date range, then selecting from a list of assets which are un-reserved for that time period.

Potential Users: Event Planners, Inventory Managers, Librarians, etc.


Demo:


Special shoutout to @Jeremy_Oglesby for his wonderful Detect Scheduling Conflicts script, which inspired me to make my own script. Using both scripts together, I think Airtable users will never have to worry about double-booking an asset again!


Instructions: This script includes a “variables” section to be as plug-and-play as possible. To customize the script to fit your needs, edit the BaseSpecificNames values to match your base’s table and field names. If you’re combining this script with the Detect Scheduling Conflicts script, only BaseSpecificNames section is necessary, but make sure to include all variables.

You can copy the sample base from the Universe here:

or you can copy the script by itself from the link below:

10 replies

Forum|alt.badge.img+18

Really nice, @Kamille_Parks!

You utilized those UI elements extremely well, and made your script look and feel approachable and polished!


Kamille_Parks11
Forum|alt.badge.img+25
Jeremy_Oglesby wrote:

Really nice, @Kamille_Parks!

You utilized those UI elements extremely well, and made your script look and feel approachable and polished!


Thanks! This was my first script and a real kick in the butt to make my bases/code more adaptable for others.

I may do a Version 2 of this script to handle date/time.

My little wishlist of features to help me improve this script for Version 3:

  • Date Picker-type input
  • Ability to share/embed blocks (currently in beta)

kuovonne
Forum|alt.badge.img+27
  • Brainy
  • 6002 replies
  • March 20, 2020

Great script @Kamille_Parks
I really like your walkthrough video.
I agree on wanting a date picker input type.


Kamille_Parks11
Forum|alt.badge.img+25

I came up with a solution to handle times:


Kamille_Parks11
Forum|alt.badge.img+25

Surprise! If you thought I was done with this script, so did I. Until I was asked “How would someone reserve more than one asset at a time?”

Here’s how:


Hi @Kamille_Parks, thank you so much for sharing, this is priceless!
Question : instead of booking an asset for a date range, can this be used to book specific time range on a selected day?
Something like : start date/ time - end date/ time?
Trying to solve for the rooms no conflict booking for the meetings that are only a few hours, but not set hours if that makes sense.
Thank you.


Kamille_Parks11
Forum|alt.badge.img+25
Irina_Georgieva wrote:

Hi @Kamille_Parks, thank you so much for sharing, this is priceless!
Question : instead of booking an asset for a date range, can this be used to book specific time range on a selected day?
Something like : start date/ time - end date/ time?
Trying to solve for the rooms no conflict booking for the meetings that are only a few hours, but not set hours if that makes sense.
Thank you.


I’m not editing these scripts again. Just use the extension.


Thank you @Kamille_Parks, would love to add the extension, and, unfortunately, the enterprise account settings do not allow to add third-party extensions. Any tips on how to make it work are greatly appreciated. Thank you.


kuovonne
Forum|alt.badge.img+27
  • Brainy
  • 6002 replies
  • September 7, 2022
Irina_Georgieva wrote:

Thank you @Kamille_Parks, would love to add the extension, and, unfortunately, the enterprise account settings do not allow to add third-party extensions. Any tips on how to make it work are greatly appreciated. Thank you.


This is the default setting of an enterprise account. I recommend having a discussion with the enterprise admin to see if restricting third party extensions is by design or simply by default. If it is by default, it is a quick change in the admin panel to allow third party extensions. If it is by design, you can ask for their reasoning and work with them to better understand their concerns.


Forum|alt.badge.img+3
  • New Participant
  • 1 reply
  • November 20, 2024

What is your plan for deploying a script like this in AirTable?  I was hoping to use a public link that i could share but public links disable scripts.  How would you get a booking system like this out to the customers?