static void SendTextMail(Args _args)
{
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.MailAddress mailCC;
str receiverMailAddress;
str mailBody;
str smtpServer;
str mailSubject;
str CcMailAddress;
int SMTPPort;
#File
str mail;
str pwd;
Dialog dialog = new Dialog('Email');
Dialogfield person, emailSubject, emailBody;
HcmWorker hcmWorker;
UserInfo userInfo;
DirPersonUser dirPersonUser;
SysUserInfo sysUserInfo;
SysEmailParameters parameters;
System.Exception e;
// dialog field to select user to whom email will be send
person = dialog.addField(extendedTypeStr(HcmWorkerRecId ), 'Person :' );
emailSubject = dialog.addField(extendedTypeStr(Description), 'Subject :' ); // Email Subject
emailBody = dialog.addField(extendedTypeStr(Notes), 'Body :' ); // Email Body
if(dialog.run())
{
parameters = SysEmailParameters::find(); // Find values from Email Parameters
new InteropPermission(InteropKind::ClrInterop).assert();
// gets HcmWorker record based on person selected from user dialog
hcmWorker = hcmWorker::find(person.value());
if(!hcmWorker.RecId) // Verify either user exist or not
{
throw error('User not found');
}
select firstOnly dirPersonUser
join userInfo
where dirPersonUser.PersonParty == DirPartyTable::findByName(hcmWorker.name()).RecId &&
userInfo.id == dirPersonUser.User;
select firstOnly sysUserInfo
where sysUserInfo.Id == userInfo.id; // Retrieve user info record for selected user
mailSubject = emailSubject.value();
mailFrom = new System.Net.Mail.MailAddress(parameters.SMTPUserName ,"Name");
mailTo = new System.Net.Mail.MailAddress("ayyappa.kambhampati@gmail.com");
//mailTo = new System.Net.Mail.MailAddress("test1@gmail.com");
//mailCC = new System.Net.Mail.MailAddress("test2@gmail.com";
mailcoll = new System.Net.Mail.MailAddressCollection();
mailBody = emailBody.value();
try
{
// using the SMTP server ip //setup in email Parameters
smtpServer = SysEmaiLParameters::find(false).SMTPRelayServerName;
mailMessage = new System.Net.Mail.MailMessage(mailFrom,mailTo);
mailmessage.set_Subject(mailSubject);
mailmessage.set_Body(mailBody);
SMTPPort = SysEmaiLParameters::find(false).SMTPPortNumber;
myMail = new System.Net.Mail.SmtpClient(smtpServer, SMTPPort);
// For SSL enabled mail servers. Ex: gmail, smtp.gmail.com, port 465 or 587
myMail.set_EnableSsl(true);
pwd = SysEmaiLParameters::password();
mymail.set_Credentials(New System.Net.NetworkCredential(parameters.SMTPUserName, pwd));
mymail.Send(mailmessage);
}
catch(Exception::CLRError)
{
e = ClrInterop::getLastException();
while (e)
{
info(e.get_Message());
e = e.get_InnerException();
}
mailMessage.Dispose();
CodeAccessPermission::revertAssert();
}
}
}
{
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.MailAddress mailCC;
str receiverMailAddress;
str mailBody;
str smtpServer;
str mailSubject;
str CcMailAddress;
int SMTPPort;
#File
str mail;
str pwd;
Dialog dialog = new Dialog('Email');
Dialogfield person, emailSubject, emailBody;
HcmWorker hcmWorker;
UserInfo userInfo;
DirPersonUser dirPersonUser;
SysUserInfo sysUserInfo;
SysEmailParameters parameters;
System.Exception e;
// dialog field to select user to whom email will be send
person = dialog.addField(extendedTypeStr(HcmWorkerRecId ), 'Person :' );
emailSubject = dialog.addField(extendedTypeStr(Description), 'Subject :' ); // Email Subject
emailBody = dialog.addField(extendedTypeStr(Notes), 'Body :' ); // Email Body
if(dialog.run())
{
parameters = SysEmailParameters::find(); // Find values from Email Parameters
new InteropPermission(InteropKind::ClrInterop).assert();
// gets HcmWorker record based on person selected from user dialog
hcmWorker = hcmWorker::find(person.value());
if(!hcmWorker.RecId) // Verify either user exist or not
{
throw error('User not found');
}
select firstOnly dirPersonUser
join userInfo
where dirPersonUser.PersonParty == DirPartyTable::findByName(hcmWorker.name()).RecId &&
userInfo.id == dirPersonUser.User;
select firstOnly sysUserInfo
where sysUserInfo.Id == userInfo.id; // Retrieve user info record for selected user
mailSubject = emailSubject.value();
mailFrom = new System.Net.Mail.MailAddress(parameters.SMTPUserName ,"Name");
mailTo = new System.Net.Mail.MailAddress("ayyappa.kambhampati@gmail.com");
//mailTo = new System.Net.Mail.MailAddress("test1@gmail.com");
//mailCC = new System.Net.Mail.MailAddress("test2@gmail.com";
mailcoll = new System.Net.Mail.MailAddressCollection();
mailBody = emailBody.value();
try
{
// using the SMTP server ip //setup in email Parameters
smtpServer = SysEmaiLParameters::find(false).SMTPRelayServerName;
mailMessage = new System.Net.Mail.MailMessage(mailFrom,mailTo);
mailmessage.set_Subject(mailSubject);
mailmessage.set_Body(mailBody);
SMTPPort = SysEmaiLParameters::find(false).SMTPPortNumber;
myMail = new System.Net.Mail.SmtpClient(smtpServer, SMTPPort);
// For SSL enabled mail servers. Ex: gmail, smtp.gmail.com, port 465 or 587
myMail.set_EnableSsl(true);
pwd = SysEmaiLParameters::password();
mymail.set_Credentials(New System.Net.NetworkCredential(parameters.SMTPUserName, pwd));
mymail.Send(mailmessage);
}
catch(Exception::CLRError)
{
e = ClrInterop::getLastException();
while (e)
{
info(e.get_Message());
e = e.get_InnerException();
}
mailMessage.Dispose();
CodeAccessPermission::revertAssert();
}
}
}