Skip to main content

Send Email for port 465 or 587 using Axapta

 public void email(filename ReportPath)

{

    System.Net.Mail.MailMessage             mailMessage;

    System.Net.Mail.SmtpClient              myMail;

    System.Net.Mail.MailAddressCollection   mailcoll;

    System.Net.Mail.MailAddress             mailFrom;

    System.Net.Mail.MailAddress             mailTo;

    System.Net.Mail.Attachment              attachment;

    System.Net.Mail.AttachmentCollection    attachementCollection;


    str                                     ToEmail;

    str                                     mailBody;

    str                                     smtpServer;

    str                                     mailSubject;

    int                                     SMTPPort;



    #File

    str                 mail;

    userinfo            userInfo;

    str pwd;

    SysEmailParameters parameters = SysEmailParameters::find();

    ;

    new InteropPermission(InteropKind::ClrInterop).assert();


    ToEmail = HcmWorker.email();


    if(ToEmail != "") // check if email id exists for employee then send a mail

    {


            mailSubject         = "Pay slip for "+ mthName(Monthname) +"-"+int2str(YearName);

            mailFrom            = new  System.Net.Mail.MailAddress(parameters.SMTPUserName ,"DAX Info");

            mailTo              = new  System.Net.Mail.MailAddress(ToEmail);

            mailcoll            = new  System.Net.Mail.MailAddressCollection();

            mailBody            = "Hello "+HcmWorker.name()+", Kindly Find the attachment salary slip"; // Body Should be in HTML Format;



            try

            {

            smtpServer          = SysEmaiLParameters::find(false).SMTPRelayServerName;// using the SMTP server ip //setup in email Parameters

            mailMessage         = new System.Net.Mail.MailMessage(mailFrom,mailTo);

            mailmessage.set_Subject(mailSubject);

            mailmessage.set_Body(mailBody);


            attachementCollection = mailMessage.get_Attachments();

            attachment = new System.Net.Mail.Attachment(ReportPath);

            attachementCollection.Add(attachment);



            SMTPPort            = SysEmaiLParameters::find(false).SMTPPortNumber;

            myMail              = new System.Net.Mail.SmtpClient(smtpServer, SMTPPort);


            myMail.set_EnableSsl(true); // For SSL enabled mail servers. Ex: gmail, smtp.gmail.com, port 465 or 587


            pwd = SysEmaiLParameters::password();


            mymail.set_Credentials(New System.Net.NetworkCredential(parameters.SMTPUserName, pwd));


            mymail.Send(mailmessage);

            }

            catch(Exception::CLRError)

            {

               throw Exception::CLRError;

            }


            mailMessage.Dispose();

            CodeAccessPermission::revertAssert();

    }

}

Popular posts from this blog

How to set up parent project in project accounting in ax 2012

create simple project and then go to the project hierarchy fast tab and there you must define sub-project ID format "-#" and then your sub-project will be enabled. For resource assigning in Project first you need to configure the HR module, in that you need to maintain the calendar for those employees and then you need to define the cost of that particular employee (for expense) and for Revenue you need to define the sales price of that particular employee. In the project accounting module you need to mention the calendar in scheduling fast tab and then you need to define WBS, in WBS activity you can be able to assign resources.

ERD Account Payable and Account Receivable in ax 2012