Skip to main content

Creating a Reservations Booking Solution in Power Apps, SharePoint, and Power Automate

  • Chapter
  • First Online:
Creating Business Applications with Microsoft 365
  • 1033 Accesses

Abstract

This chapter continues our objective of putting multiple pieces of the Microsoft 365 environment together into cohesive solutions. It stemmed from a customer wanting to try the Microsoft Bookings application but that not being approved for use. I suggested using our familiar combination of SharePoint and Power Apps. For our sample here, I added the automatic scheduling of an associated Teams meeting via Power Automate. It has a few advantages over Bookings, such as being able to schedule on behalf of another user and the ability to offer multiple appointments at the same time.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    You might think this would be the Created By column, but the actual list items are created in advance by the person adding all the appointments. So the one who modified the list item is the one who scheduled it.

  2. 2.

    We’d like to clear the Participant as well if an appointment is cancelled, but that is not currently possible from Power Apps. So we just don’t show a Participant if the Status is Available and then update the value when the appointment is booked by someone else.

  3. 3.

    We need OnChange as well since it fires when the user removes a user who has already been selected.

  4. 4.

    I originally used the CountIf() method:CountIf(    Reservations,    ((Participant.Email = varUserEmail || ‘Modified By’.Email = varUserEmail) && Status.Value = “Booked” && AppointmentDate Now()) )>0

  5. 5.

    Be sure this is a different variable than the one used on the Home screen and that you use this new variable in our Delete Appointment and Update Appointment buttons. Otherwise, this will cause hard-to-find errors.

  6. 6.

    We just need to be careful in our Power BI reporting to only display Participant if the Status of an appointment is Booked.

  7. 7.

    You can see the output by using the Compose action and putting the column(s) as the input and then looking at the value in the Run history.

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2022 The Author(s), under exclusive license to APress Media, LLC, part of Springer Nature

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Rhodes, J.M. (2022). Creating a Reservations Booking Solution in Power Apps, SharePoint, and Power Automate. In: Creating Business Applications with Microsoft 365. Apress, Berkeley, CA. https://doi.org/10.1007/978-1-4842-8823-8_22

Download citation

Publish with us

Policies and ethics