Hello,
The error is misleading which is a bit unfortunate. The root cause is that the connection string still tries to connect via Exchange Web Services which has been deprecated by Exchange Online team. At least the following code applies to OnPrem:
BookingsSetupErr: Label 'Cannot open the Bookings Sync. Setup page. Make sure that your company is set up in the Bookings application in Office 365.';
procedure BuildExchangeConnectionString(var ExchangeSync: Record "Exchange Sync") ConnectionString: Text
var
User: Record User;
Token: Text;
Password: Text;
begin
// Example connection string
// {UserName}="user@user.onmicrosoft.com";{Password}="1234";{FolderID}="Dynamics NAV";{Uri}=outlook.office365.com/.../Exchange.asmx
if (not GetUser(User, ExchangeSync."User ID")) or
(User."Authentication Email" = '') or
(ExchangeSync."Folder ID" = '') or (not GetPasswordOrToken(ExchangeSync, Password, Token))
then
Error(O365RecordMissingErr);
procedure RegisterBookingsConnection(BookingSync: Record "Booking Sync")
var
ExchangeSync: Record "Exchange Sync";
begin
if ExchangeConnectionID <> '' then
UnregisterConnection(ExchangeConnectionID);
if BookingsConnectionReady(BookingSync) then
exit;
if BookingsConnectionID <> '' then
UnregisterConnection(BookingsConnectionID);
ExchangeSync.Get(BookingSync."User ID");
BookingsConnectionID := CreateGuid();
if RegisterConnection(ExchangeSync, BookingsConnectionID, BookingsConnectionString) then
SetConnection(ExchangeSync, BookingsConnectionID);
end;
I expect that this code for MS Booking also applies to the Cloud release (requiring connection via Exchange web services). Fortunately, we added support for Exchange contact synch allowing OAUTH2 connecting strings but we did not yet do this for the OnPrem world. This will therefore never work until we add support to Exchange Synch to allow OAUTH2 connections for the Exchange contact synch in both OnPrem and Cloud.
I will add this information to the work item we currently have open.
Thank you for raising this to us.