Hi Scott, thanks for the details.
So here's my situation. We've got a call center that sends sales reps to residential homes to do on-site surveys for moving. The reps can have many different appointments in different cities throughout the day, and obviously we don't want to schedule them to be in two places at once, or give them two appointments with no time to get from place to place.
Up until October 2018, this was done using MSCRM 2011 on-prem, with the call center creating Opportunities in CRM with a related appointment, so we could track lead effectiveness versus appointments booked versus opportunities won. These appointments synced out to the field rep's Outlook calendars.
In October 2018 we migrated to Office 365 and Dynamics 365 online, and that's thrown a couple of wrinkles into the equation. First, the calendar sync frequency with Outlook is far slower than it was with on prem. On-prem, our sync server ran every two minutes, but in online it was touted as dynamic based on usage, from 2-5 minutes under heavy use, 10 minutes if not. In practical use has been 10-15 minutes and there's no way to speed it up. With our call center reps checking multiple field rep calendars in Outlook for availability, this really increases the chance of a resource being double booked. This can be mitigated by checking against the Appointment list in D365 but it adds a very slow step to the process as the list view is harder to interpret than Outlook's calendars, is hard to read for multiple users, and the Calendar Control inside of D365 isn't up to speed yet. (Limited configuration options, can't set 8-5 views, can't easily see multiple users, no hover text, etc.)
The bigger issue we're facing is that with Version 9 and the Unified Interface, the logic that used to be in the system alerting schedule conflicts has not been implemented. In the Classic Interface if you try to schedule an appointment, there is a check to see if the user is already booked and a pop up dialog that warned the call center that the requested rep was busy. That is missing in the UCI. There is no warning of any sort. I submitted a bug for it, and support informed me it was missing functionality slated to be reintroduced in April (maybe.) We can't wait that long as April is when our busy season kicks in and our call center will be making appointments left and right, and without that warning it will be very easy for mistakes to happen. That 10-15 minute window could cause chaos in scheduling our field reps.
So I'm looking into URS as possibly a better supported solution (as the scheduling board and map look ideal for our purposes) but with the requirement that it work with our reporting, our sales process and will sync out to the field rep's outlook calendar. We don't need the full Field Service module, but I read that URS is available for Customer Service and the Opportunity Entity, it looked like a good solution.
If not, I need to find a way for our call center to see existing records on the Appointment record for various users using a PowerApps canvas app or maybe a subgrid so they can see if a user is free even if the appointment hasn't yet synced to Outlook.
Thanks,
Rob