Skip to main content

Notifications

Community site session details

Community site session details

Session Id :
Power Apps - Power Apps Pro Dev & ISV
Answered

Check-in feature for desk booking app on PowerApps

(0) ShareShare
ReportReport
Posted on by 11

Hello,

 

I developed an app using PowerApps for booking a desk at the office. It lets you select the date/time and shows the list of available desks based on region/floor from a SharePoint list and confirms the booking. I now am trying to add a check-in feature that let's you check in to your desk 15min before the desk reservation time and automatically cancels the reservation and makes the desk available to others if check-in doesn't happen 15min after the reserved time.

 Any help with this?

 

PS: My SharePoint site has a list for 'desks available' and 'desk reservations' (got from PowerApps). And PowerApps has a welcome screen, a screen for upcoming reservations (this is where I want the check-in feature) and a various screens to do the booking process.

 

Thanks

Nikhila

  • e3lt Profile Picture
    2 on at
    Re: Check-in feature for desk booking app on PowerApps

    Hi,

    I'm trying to implement it, having the same app as the original poster. I was wondering if you could help with a sample solution to his query? - I'm struggling to implement the functionality that allows the user to 'check-in', which lets you check in to your desk 15 minutes before the desk reservation time, and up to 15 minutes after the reservation time. If the user doesn't do it, it would make the desk available again for another user to book (meaning that reservation is now cancelled) or deleted. 

     

    I have the same setup as the original poster, I've added the 'check-in' and 'isAvaliable' columns. I would really appreciate it if you could help.

     

    Thank you.

  • Verified answer
    v-yangar-msft Profile Picture
    Microsoft Employee on at
    Re: Check-in feature for desk booking app on PowerApps

    Hi @nikhilab ,

     

    Yes, I recommend that you add a column for check-in and IsAvailable. Because the 15-minute timer function you want to implement is best executed in the cloud with Flow, so that we can use the status of  two columns to judge and whether to reserve the reservation after fifteen minutes.

    If you use Timer in the app itself, once you close the app or the screen goes to sleep, the timer may stop working.

    Besides, you want to use the lookup function for floors and cities, you can add two drop down controls to realize it as below:
    1.Add two choice columns in SharePoint list:

    v-yangar-msft_0-1611736344860.png

     

    1. Add two drop down controls and set the items property of them to:
      Choices(DeskList.Cities)

    Choices(DeskList.Floors)

    1. Set the items property of gallery to:

    Filter(

        DeskList,

        CityDropdown.Selected.Value = "All" Or Cities.Value = CityDropdown.Selected.Value,

    FloorDropdown.Selected.Value = "All" Or Floors.Value = FloorDropdown.Selected.Value,

    "true" in IsAvaliable

    )

    4.When you choose New York and Floor Number2, it will shows as below:

    v-yangar-msft_1-1611736344863.png

     

    Finally, you would like the check-in option to show under the upcoming reservations as shown below, and the button should be disabled 15min past the booking time and the desk is made available to others.

    In my former post, I recommend to use Flow to realize this requirement. You can use the column of “Check-in” to judge whether make this reserved desk available after 15min past the booking time.

     

     

    Hope it helps!

     

    Thanks,

    Arrow

  • nikhilab Profile Picture
    11 on at
    Re: Check-in feature for desk booking app on PowerApps

    Hello Arrow,

    Thank you for the help.

     

    I do not have a 'check-in' column on the SharePoint site. A would prefer a 'check-in' button on PowerApps. Do you recommend that I add a column for check-in and IsAvailable?

    Adding a little more information for a better understanding :

    This is how the SharePoint lists look like, desk reservations is automatically generated and I am using the lookup function for floors and cities:

    Capture9.PNGCapture10.PNG

    And I  would like the check-in option to show under the upcoming reservations as shown below, and the button should be disabled 15min past the booking time and the desk is made available to others.

     

    Capture1.PNGCapture6.PNG

     

    Capture11.PNG

     

    Thanks

    Nikhila

  • v-yangar-msft Profile Picture
    Microsoft Employee on at
    Re: Check-in feature for desk booking app on PowerApps

    Hi @nikhilab ,

     

    Based on your description, may i know how do you check in to your desk in your scenario? 

    Because i don't know how do you use 'Check in' in your side, here i assume that check-in is a status column in my SharePoint.

    Per your description, you want to realize 3 key point in your app.

    1. Show the available desks based on the floor, just like below:

    v-yangar-msft_2-1611213506606.png

     

     

    v-yangar-msft_3-1611213506611.png

     

    2. Select the data/time of using desk:

    v-yangar-msft_4-1611213506615.png

     

    3. After booking desk, you should check in to your desk 15min before the desk reservation time and automatically cancels the reservation and makes the desk available to others, here you can use powerapps automate to realize it.

     

    For the first point, you should add a dropdown control and set the items property of it to:

    ["Floor1","Floor2",”…”]

    Then you can set the items of  gallery which shows the available desks to:

    // Dropdown1.SelectedText.Value is the floor which you chose currently,  1- corresponding floor1.

    Switch(Dropdown1.SelectedText.Value,"Floor1",Filter(DeskList,"true" in IsAvaliable,"1-" in Title),"Floor2",Filter(DeskList,"true" in IsAvaliable,"2-" in Title),Floor3,…….)

    //DeskList is the SharePoint list in my tenant as below:

    v-yangar-msft_5-1611213506617.png

     

     

    For the second point, firstly, add all the fields from SharePoint List, add an Edit Form.

    Then you should add two drop down control besides the Date picker field. One drop-down control is for displaying the Hour and the other one is for displaying the Minutes.

    Next, select the Hour drop-down control and apply this below formula on its Items property as:

    ["00","01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23"]

    Similarly, Select the Minutes drop-down control and apply this below formula on its Items property as:

    ["00","01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33","34","35","36","37","38","39","40","41","42","43","44","45","46","47","48","49","50","51","52","53","54","55","56","57","58","59"]

    Finally, together with the DatePicker control, within one DataCard, then use the following formula to combine the time value with the date value under the Update property of the DataCard control:

    DateValue1.SelectedDate + Time(Value(HourDropdown.Selected.Value), Value(MinutesDropdown.Selected.Value), 0)

     

    For the third point, you should use Powerapps automate to time:

    v-yangar-msft_6-1611213506621.png

     

     

    In the Delay, you can set 15 minutes as a timer.

    Then you can get the item and put the ID from powerapps here.

    Next use condition to judge, Check-in is the status, if you dont check in your desk 15min before the desk reservation time, the value of IsAvaliable will be update to No and it make the desk available to others.

    Otherwise, this automate will terminate and you can continue to use this desk.

    Finally, you should set the current ID as variable in powerapps:

    //here I set the DeskID as variable

    v-yangar-msft_7-1611213506621.png

     

    You can trigger this Automate to time 15 minutes after booking desks, you can put the Automate here:

    v-yangar-msft_8-1611213506623.png

     

     

    Besides, you can set the text properties of StartTime and EndTime to :

    // Label1.Text is the value of IsAvailable, the formulas aim to clear the date/time if the status of IsAvailable is true.

    If("false" in Label1.Text,ThisItem.BookingStartTime,"")

    If(false in Label1.Text,ThisItem.BookingEndTime,"") 

     

    Hope it helps!

     

    Thanks,
    Arrow

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

Announcing the Engage with the Community forum!

This forum is your space to connect, share, and grow!

🌸 Community Spring Festival 2025 Challenge Winners! 🌸

Congratulations to all our community participants!

Warren Belz – Community Spotlight

We are honored to recognize Warren Belz as our May 2025 Community…

Leaderboard > Power Apps - Power Apps Pro Dev & ISV

#1
WarrenBelz Profile Picture

WarrenBelz 109 Most Valuable Professional

#2
Michael E. Gernaey Profile Picture

Michael E. Gernaey 82 Super User 2025 Season 1

#3
MS.Ragavendar Profile Picture

MS.Ragavendar 72

Overall leaderboard