web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Time slot booking system
Power Apps
Answered

Time slot booking system

(0) ShareShare
ReportReport
Posted on by 6

Hi, I’m looking to build a Time slot booking system. Here’s what I’m trying to do..

I have multiple rooms and I want users to be able to book a 15 mins time slot for each room but there can be up to 20 bookings made for one 15mins slot.

each booking will be able to state how many users they want to book in between 1 and 20

I want to be able to show available slots on a selected date but also based on how many users being booked it. For example if they select a date and put 5 users I only want to show slots on that date that have 5+ spaces left. I want the bookings to be stored in a share point list.

I have created a room booking system before but cannot figure this out. Any help or pointer would be great.  Thanks 

sorry if I haven’t explained it very well. 

Categories:
I have the same question (0)
  • Verified answer
    v-bofeng-msft Profile Picture
    Microsoft Employee on at

    Hi @Leung55 :

    I'm not sure if I understand your needs, if there are errors, please help me point them out:

    • you have multiple rooms
    • Each room is booked in units of 15 minutes
    • This room can accommodate 20 people
    • As long as the capacity of this room in this time unit does not reach the limit, other users can continue to reserve this room.
    • You need to display the capacity of a specified room on a specified date in the app and allow users to make reservations.

    Something like:

    60.gif

    I've made a test for your reference:

    1\Add a datepicker control(TheDatePicker) and set it's OnSelelct property to:

    ClearCollect(Rooms,{Name:"Room1"},{Name:"Room2"},{Name:"Room3"},{Name:"Room4"});
    /*Rooms is the room list*/
    ClearCollect(
     RemainingCapacity, /*RemainingCapacity is my custom collection*/
     AddColumns(
     GroupBy(
     Filter(
     BookList, /*BookList is the SP list*/
     Date = TheDatePicker.SelectedDate
     ),
     "Slot",
     "NewGroup"
     ),
     "TheRemainingCapacity",
     20 - Sum(
     NewGroup,
     NumberOfUsers
     )
     )
    );
    ClearCollect(
     ShowInGallery,/*ShowInGallery is my custom collection*/
     ForAll(
     Sequence(40),
     {
     SlotNo: Value,
     Start: DateAdd(
     TheDatePicker.SelectedDate,
     480 + 15 * Value - 15,
     Minutes
     ),
     End: DateAdd(
     TheDatePicker.SelectedDate,
     480 + 15 * Value,
     Minutes
     ),
     RealRemainingCapacity: 20
     }
     )
    );
    ForAll(
     RemainingCapacity,
     UpdateIf(
     ShowInGallery,
     SlotNo = Slot,
     {RealRemainingCapacity: TheRemainingCapacity}
     )
    )

    2\Add a Slider(Slider1) and set it's Max property to

    20

    3\Add a gallery(Gallery5) and set it's Items property to

    Filter(ShowInGallery,RealRemainingCapacity>=Slider1.Value)

    4\Add a label control into Gallery5 and set it's Text property to:

    If(ThisItem.RealRemainingCapacity>5,"5+",ThisItem.RealRemainingCapacity)

    5\Add a check box(Checkbox1) into Gallery5 

    6\Add a button and set it's OnSelelct property to

    ForAll(
     Filter(
     Gallery5.AllItems,
     Checkbox1.Value
     ),
     Collect(
     BookList,
     {
     Title: Text(
     Now(),
     DateTimeFormat.LongDateTime24
     ) & "Ticket",
     Date: TheDatePicker.SelectedDate,
     Slot: SlotNo,
     NumberOfUsers: Slider1.Value,
     Creater: User().Email
     }
     )
    );
    Select(TheDatePicker)

    Best Regards,

    Bof

  • Leung55 Profile Picture
    6 on at

    That is great! Thank you. That pointed me in the right direction and I was able to adjust it to what I needed. Thank you! 

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Season of Sharing Community Challenge Winners!

Congratulations to our community stars!

Kudos to our 2025 Community Spotlight Honorees

Expanding mentorship, skilling, and AI innovation

Congratulations to the July Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Apps

#1
WarrenBelz Profile Picture

WarrenBelz 392 Most Valuable Professional

#2
11manish Profile Picture

11manish 136 Super User 2026 Season 2

#3
MS.Ragavendar Profile Picture

MS.Ragavendar 109 Super User 2026 Season 2

Last 30 days Overall leaderboard