How to prevent double booking?

Shaunrid

New member
Local time
Today, 19:15
Joined
Jan 23, 2013
Messages
2
On Microsoft Access 2010, I am creating a database project for a DJ booking system (not for professional use) and wondered how you can stop double booking from occurring that would provide you with an error message that I could personalise.

My current booking file looks like this:
Booking ID - Primary Key
Customer ID (Linked to customer table)
Venue ID (Linked to venue table)
Date Booked
Set Up Time
Start Time
Finish Time
Party Type
Discount Code

At the moment I have the date booked as Indexed (No Duplicates) however this gives me a long error message that I can not personalise.

If there is any way you can think that could solve the problem then it will be appreciated

Just to add, I'm not very familiar with Access 2010, I'm trying enhance my problem solving skills, and I just did not know what to do about double booking.
 
Do you have a data model?

When you are about to record a Booking, you have to ensure that the necessary resources for a "booking" are available.

For example, I'd like John theMechanic to fix my car at 10AM tomorrow.
John is booked on Tom's Truck starting at 9:30 tomorrow. So John is already booked, and can not work on my car.

You check John's availability before you create the record for me and my Car.
(He's not available)
You then check to see when Tom is free to take on work. (He's free at xxx)
You tell me the approximate time and ask if that's OK (The customer can say yes or no).
If yes, you make the booking.
If no, you ask if another mechanic is free (Customer can say Yes or No). If Yes you make the booking.
If no, you ask the customer for another possible/preferred booking time)
... and the process repeats

Just some thoughts to help.
 
You need to know if a particular time is already booked before entering a booking time to your database. Otherwise, the Conflicting Entry MsgBox will pop up everytime to you stab in a conflicting time, until one (eventually) sticks.

So, I imagine, you might have a Form set Continuous showing each record being a Date and each column being an hour in that date and then using Conditional Formatting to block out dates/time that are booked/available/unavailable.

This form can trigger the Conflicting Entry MsgBox if the entry is double booked.
 
You need to know if a particular time is already booked before entering a booking time to your database. Otherwise, the Conflicting Entry MsgBox will pop up everytime to you stab in a conflicting time, until one (eventually) sticks.

So, I imagine, you might have a Form set Continuous showing each record being a Date and each column being an hour in that date and then using Conditional Formatting to block out dates/time that are booked/available/unavailable.

This form can trigger the Conflicting Entry MsgBox if the entry is double booked.

This sounds like a great idea!
Could you explain how you would go about this?
By adding a table with a list of dates?
 
Table1 has the booking times with Field BookingDate which is the dates of the bookings you already have.

Query1 gets data from Table1 and looks like this (each block text below represents a column)

Field BookingDate
Table Query1
Total Group By
Sort Ascending

Field Day of the Week: Format([BookingDate],"dddd")
Table
Total Group By
Sort

This will give a list of dates that there are bookings with the day of the week next to it - useful if, say, Friday Nights are peak.

Add your other fields - create a Form in Datasheet view based on Query1 and there's a list of every date that is booked in the future.

If you've read any other post of mine you will see that I am still very new at this - I hope it turns out well for you.
 

Users who are viewing this thread

Back
Top Bottom