Wednesday, July 4, 2012

An Error has occurred while logging on to the MAPI session - Navision

The other day i was helping a client to move their customizations from classic to Role Tailored Client. They had a custom email functionality which was working fine but when the function was executed in Role Tailored Client Navision 2009 R2 it did not open outlook client. When i debugged i found that error was happening at the below line of code which is in custom codeunit which was implemented by previous VAR.

IF (NOT OApplication.Logon(TRUE,'','',FALSE,FALSE)) THEN BEGIN

Then i added Message Box to display OApplication.ErrorDescripton which showed the below error message.

I googled for this error but could not find much help, so i executed standard email function on customer communication and it was working. Then i compared custom function and the standard email function in codeunit 397 for new message. I found one difference, when an object is created using CREATE the custom email function was not using NewServer and OnClient parameter.

For example custom code has : CREATE(OApplication) which will work fine in classic, but to execute this on RTC we need to use NewServer and OnClient paramters.

So i have changed code from CREATE(OApplication) to CREATE(OApplication,TRUE,TRUE) and did this same for other objects. This resolved the issue.