Monday, September 20, 2021

Send Email from Ax / D365 FnO using X++

 static void SendEmail(Args _args)

{

SysEmailParameters parameters = SysEmailParameters::find();

SMTPRelayServerName relayServer;

SMTPPortNumber portNumber;

SMTPUserName userName;

SMTPPassword password;

Str1260 subject,body;

InteropPermission interopPermission;

SysMailer mailer;

System.Exception e;


;

if (parameters.SMTPRelayServerName)

relayServer = parameters.SMTPRelayServerName;

else

relayServer = parameters.SMTPServerIPAddress;

portNumber = parameters.SMTPPortNumber;

userName = parameters.SMTPUserName;

password = SysEmailParameters::password();

subject = "Subject line for the email";

body = "<B>Body of the email</B>";


CodeAccessPermission::revertAssert();


try

{

interopPermission = new InteropPermission(InteropKind::ComInterop);

interopPermission.assert();

mailer = new SysMailer();

mailer.SMTPRelayServer(relayServer,portNumber,userName,password, parameters.NTLM);

//instantiate email

mailer.fromaddress("ax.notification@mycompany.com");


mailer.tos().appendaddress("alirazazaidi@live.com");

mailer.subject(subject);

mailer.htmlBody(body);

mailer.sendMail();

CodeAccessPermission::revertAssert();

info("Email has been send!");

}

catch (Exception::CLRError)


{

e = ClrInterop::getLastException();


while (e)


{

info(e.get_Message());

e = e.get_InnerException();

}

CodeAccessPermission::revertAssert();

//info(e);

info ("Failed to Send Email some Error occure");

}


}

 

No comments:

Post a Comment

Copying and Auto populating financial dimension from inventSite X++

 APPROACH 1 //calling method DimensionAttributeValueSetStorage  valueStorage = this.getDefaultDimension(inventsite); purchTable.defaultdimen...