cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Frequent Visitor

Book a room - display room capacity

Is there any way to display fields other than the roomname and e-mail adress of a room/resource in EOL/O365?

I'm looking for a way to show the capacity (and maybe other attributes) in the book a room app. I'm kinda confused if the "capacity" property is an Echange field or an Azure Active Directory feeld.

35 REPLIES 35

@AppDeveloper 

Of course it does....

I was being an idiot 😫 - the code i made just cross-references itself and gets the first item..................

Ok, so in the previous picture you highlighted in yellow boxes the names of the rooms, could you let me know the names of those boxes and any code inside?

Hi @kamikaze4416 

 

Once again many Thanks. and i appreciate your time and the interest you are taking in solving this issue

Here is the detail

1. Screen Name = RoomSelectScreen on its OnVisible property it loads the following code 

 

Set(CalendarFromSelectMeeting, false);
If(DateTimeRoomChange,
    Set(AvailableRoomsCounter, 1);
    UpdateContext({ShowLoading: true});
    Set(RoomsLeft, Blank());
    Set(DateTimeRoomChange, false);
    If(!NoRoomsList,
        ClearCollect(AllRooms, Office365.GetRoomsInRoomList(RoomsListsGallery.Selected.Address).value)
    );
    If(CountRows(AllRooms) > 20,
        Set(AllRoomsConnector, Concat(FirstN(AllRooms, 20), Address & ";")),
        Set(AllRoomsConnector, Concat(AllRooms, Address & ";"))
    );

    ClearCollect(AvailableRooms, Office365.FindMeetingTimes({RequiredAttendees: AllRoomsConnector, IsOrganizerOptional: true, 
        Start: StartDateTimeUTC, End: EndDateTimeUTC, MeetingDuration: DateDiff(StartDateTime, EndDateTime, Minutes),
        MinimumAttendeePercentage: "1", ActivityDomain: "Unrestricted"}));

    ClearCollect(AvailableRoomsSorted, SortByColumns(First(AvailableRooms).MeetingTimeSuggestions, "Confidence", Descending));

    ClearCollect(AvailableRoomsConcat, Concat(Filter(First(AvailableRoomsSorted).AttendeeAvailability, Availability = "Free"), 
        Attendee.EmailAddress.Address, ","));

    ClearCollect(AvailableRoomEmails, Split(First(AvailableRoomsConcat).Value, ","));

    ClearCollect(AvailableRoomEmailName, AddColumns(RenameColumns(AvailableRoomEmails, "Result", "Email"), "Name",
        LookUp(AllRooms, Email = Address).Name)); ClearCollect(Facilities, RoomDetails);

    UpdateContext({ShowLoading: false});
    Set(RoomsLeft, CountRows(AllRooms) - 20 * AvailableRoomsCounter)
)

 

 

 

RoomSelectScreen1.png

 

 

2. in this Screen There is  Gallery called RoomsGallery on its Items Property it Loads a Collection AvailableRoomsNameEmail. the Bold room names which are appearing on the boxes are simply text coming as Text = ThisItem.Name

3. under this RoomsGallery the name of box is BorderRadius which is button in itself (see following image)

4. under the same RoomsGallery i insert a label and wants to fetch info from my collection.

5. My Collection name is Facilities based on sharepoint list and has RoomCapacity, RoomName, RoomLocation etc details

RoomsGallery.png

 

 

 

Regards

 

 

@AppDeveloper 

So if the facilities sharepoint contains the room details and the gallery is set up from AvailableRoomEmailName would this work:

First(Filter(Facilities, RoomName = Title2_1.Text)).RoomCapacity

 

Assuming the page name is stored in Title2_1.

 

Give this a shot and let me know if an error comes.

Hi @kamikaze4416 

 

It threw the same error of Invalid Argument. I found a new solution and need a little tweaking.

What is did is that I added a columns in AvailableRoomEmailName Collection. This new column is coming from my second Collection which is based on SharePoint list (Facilities). The following formula is working 100% fine but I need little tweaking to add more columns in this and have no idea how.

AddColumns(AvailableRoomEmailName, "Capacity", LookUp(Facilities, RoomName = AvailableRoomEmailName[@Name], RoomCapacity))

 

Columns in AvailableRoomEmailName = Name,Email,Capacity

Columns in Facilities= RoomName, RoomLocation,RoomCapacity,Others

 

I hope we have find the solution if more than one columns can be added to the above formula

 

Regards

 

Hi @kamikaze4416 

 

I found the Solution and added few more columns in it and these are working fine

At the Item Property of RoomGallery following formula is adding all columns in AvailableRoomEmailName and each peace of information is accessible with dot (.) and name of newly added columns

 

I appreciate your efforts and time all these discussions caused this thought and we found the solution

 

Best Regards

 

Formula

 

AddColumns(AvailableRoomEmailName, "Capacity", LookUp(Facilities, RoomName = AvailableRoomEmailName[@Name], RoomCapacity),"Location",LookUp(Facilities, RoomName = AvailableRoomEmailName[@Name], RoomLocation),"Others",LookUp(Facilities, RoomName = AvailableRoomEmailName[@Name], Others))

@AppDeveloper 

Great!

Hopefully the whole conversation helps others trying to display capacity 👌

Helpful resources

Announcements
News & Announcements

Community Blog

Stay up tp date on the latest blogs and activities in the community News & Announcements.

Power Apps Community Call

Power Apps Community Call- January

Mark your calendars and join us for the next Power Apps Community Call on January 20th, 8a PST

PP Bootcamp Carousel

Global Power Platform Bootcamp

Dive into the Power Platform stack with hands-on sessions and labs, virtually delivered to you by experts and community leaders.

secondImage

Power Platform Community Conference On Demand

Watch Nick Doelman's session from the 2020 Power Platform Community Conference on demand!

Top Solution Authors
Top Kudoed Authors
Users online (3,477)