cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
AdhamFH
Helper V
Helper V

Meeting Screen Template

Hello,

i'm trying develop an app using meeting screen template but i have a question about it. According to my picture 

apps1.PNGapps2.PNG

 

 

 

 

 

 

 

 

 

 

 

 

 

if i choose the duration to 30 minutes, there is 8:30 AM but when i switch the duration to one hour 8:30 AM is dissapear. My question is, if i want to create meeting at 8:30 AM for an hour how to do that using this meeting screen template?

1 ACCEPTED SOLUTION

Accepted Solutions
v-bofeng-msft
Community Support
Community Support

Hi @AdhamFH :

Please set the MeetingDateSelect1's OnSelect property to:

Concurrent(
Reset(TextSearchBox1),
Set(_showMeetingTimes, false),
UpdateContext({_loadingMeetingTimes: true}),
Set(_selectedMeetingTime, Blank()),
Set(_selectedRoom, Blank()),
Set(_roomListSelected, false),
/*
Uses Office365 Outlook FindMeetingTimes operation to find available meeting times given various parameters including a semicolon separated list of attendee email addresses,
a meeting duration (in minutes), an acceptable start and end range to find the meeting.
Attendee emails are retrieved from the MyPeople collection. Duration and Start/End are retrieved from their respective dropdowns, where Start is set to 8:00 AM on the date selected, and End is set to 5:00 PM on the date selected.
*/
ClearCollect(TestCollection,
AddColumns(Office365Outlook.FindMeetingTimes(
	{RequiredAttendees:Concat(MyPeople, UserPrincipalName & ";"), MeetingDuration:MeetingDurationSelect1.Selected.Minutes,
	Start:Text(DateAdd(MeetingDateSelect1.SelectedDate, 480, Minutes), UTC), End:Text(DateAdd(MeetingDateSelect1.SelectedDate, 17, Hours), UTC),
	MaxCandidates:40, MinimumAttendeePercentage:1, IsOrganizerOptional: false, ActivityDomain: "Work"}).MeetingTimeSuggestions,
"StartTime", MeetingTimeSlot.Start.DateTime, "EndTime", MeetingTimeSlot.End.DateTime))
);
Collect(TestCollection,
AddColumns(Office365Outlook.FindMeetingTimes(
	{RequiredAttendees:Concat(MyPeople, UserPrincipalName & ";"), MeetingDuration:MeetingDurationSelect1.Selected.Minutes,
	Start:Text(DateAdd(MeetingDateSelect1.SelectedDate, 510, Minutes), UTC), End:Text(DateAdd(MeetingDateSelect1.SelectedDate, 17, Hours), UTC),
	MaxCandidates:40, MinimumAttendeePercentage:1, IsOrganizerOptional: false, ActivityDomain: "Work"}).MeetingTimeSuggestions,
"StartTime", MeetingTimeSlot.Start.DateTime, "EndTime", MeetingTimeSlot.End.DateTime));
ClearCollect(MeetingTimes,Sort(ForAll(Distinct(TestCollection,StartTime),LookUp(TestCollection,StartTime=Result)),StartTime));
UpdateContext({_loadingMeetingTimes: false});
Set(_showMeetingTimes, true)

1.JPG

Best Regards,

Bof

View solution in original post

10 REPLIES 10
v-bofeng-msft
Community Support
Community Support

Hi @AdhamFH :

Please set the MeetingDateSelect1's OnSelect property to:

Concurrent(
Reset(TextSearchBox1),
Set(_showMeetingTimes, false),
UpdateContext({_loadingMeetingTimes: true}),
Set(_selectedMeetingTime, Blank()),
Set(_selectedRoom, Blank()),
Set(_roomListSelected, false),
/*
Uses Office365 Outlook FindMeetingTimes operation to find available meeting times given various parameters including a semicolon separated list of attendee email addresses,
a meeting duration (in minutes), an acceptable start and end range to find the meeting.
Attendee emails are retrieved from the MyPeople collection. Duration and Start/End are retrieved from their respective dropdowns, where Start is set to 8:00 AM on the date selected, and End is set to 5:00 PM on the date selected.
*/
ClearCollect(TestCollection,
AddColumns(Office365Outlook.FindMeetingTimes(
	{RequiredAttendees:Concat(MyPeople, UserPrincipalName & ";"), MeetingDuration:MeetingDurationSelect1.Selected.Minutes,
	Start:Text(DateAdd(MeetingDateSelect1.SelectedDate, 480, Minutes), UTC), End:Text(DateAdd(MeetingDateSelect1.SelectedDate, 17, Hours), UTC),
	MaxCandidates:40, MinimumAttendeePercentage:1, IsOrganizerOptional: false, ActivityDomain: "Work"}).MeetingTimeSuggestions,
"StartTime", MeetingTimeSlot.Start.DateTime, "EndTime", MeetingTimeSlot.End.DateTime))
);
Collect(TestCollection,
AddColumns(Office365Outlook.FindMeetingTimes(
	{RequiredAttendees:Concat(MyPeople, UserPrincipalName & ";"), MeetingDuration:MeetingDurationSelect1.Selected.Minutes,
	Start:Text(DateAdd(MeetingDateSelect1.SelectedDate, 510, Minutes), UTC), End:Text(DateAdd(MeetingDateSelect1.SelectedDate, 17, Hours), UTC),
	MaxCandidates:40, MinimumAttendeePercentage:1, IsOrganizerOptional: false, ActivityDomain: "Work"}).MeetingTimeSuggestions,
"StartTime", MeetingTimeSlot.Start.DateTime, "EndTime", MeetingTimeSlot.End.DateTime));
ClearCollect(MeetingTimes,Sort(ForAll(Distinct(TestCollection,StartTime),LookUp(TestCollection,StartTime=Result)),StartTime));
UpdateContext({_loadingMeetingTimes: false});
Set(_showMeetingTimes, true)

1.JPG

Best Regards,

Bof

Hey @v-bofeng-msft thank you for your reply and sorry for my late response, i think i have figured out the problem and then using the same scenario above, how to create a meeting if i want to create it at 10:00 AM for an hour as the picture above 10:00 AM is dissapear the same case if i want to create at 11:00 AM, should i create it twice using 0.5 hours in duration section or how ?

thank you, i'm looking forward to your reply

Hi @AdhamFH :

Sorry. I did not understand what you mean. If you are worried about duplicate options in the gallery, then this will not happen. Because I have added a de-duplication function to the formula.

Best Regards,

Bof

@v-bofeng-msft actually if i choose the duration to 1 hour how to create a meeting at 10:00 AM or 11:00 AM since it is dissapear as the second picture 

Hi @AdhamFH :

Did you use the formula I provided?I've made a test but I can book a meeting at 10AM or 11AM.

1.JPG

Best Regards,

Bof

@v-bofeng-msft yes i have tried using the formula you provided but the result at findmeetingtimesgallery still show the same result 

Hi @AdhamFH :

Could you provide some screenshots?

Is the screenshot I provided the result you want?

Could you confirm that the meeting room you need to book does not have any conflict during 10AM-12AM?

Because I did not encounter any problems on my side, I can make sure that the logic of my formula is correct.

Best Regards,

Bof

@v-bofeng-msft yes the screenshot you provided is the result i wanted, here is the screenshot and i have tried using the formula you provided, i have no idea why because it looks like using a pattern like 11:30, 12:30 and so on and i think there is no conflict at the meeting room because it happens all the date, i have try to create a new meeting screen template but the result is same

image_2021-03-15_104336.png

AdhamFH
Helper V
Helper V

@v-bofeng-msft i tried using my second account and it shows the same result with yours. Do you know why it happens in my first account? if i look into the calendar i just have a meeting every day at 09:00 AM to 09:30 AM that's why if you look into the screenshot at my post the second available time is 09:30 but why 10:00, 11:00 etc doesnt show even though use the formula you provided

Helpful resources

Announcements
Power Apps News & Annoucements carousel

Power Apps News & Announcements

Keep up to date with current events and community announcements in the Power Apps community.

Power Apps Community Blog Carousel

Power Apps Community Blog

Check out the latest Community Blog from the community!

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