приведенный ниже код записан в fil enet безопасный поиск административной консоли, а его запрос помещен на sql вкладку просмотра:
Select [this] from BankGuarantee where ExpiryDate > Now () + TimeSpan(30,'Days') and ExpiryDate < Now() + TimeSpan(31,'Days');
Фактически этот код отправляет электронную почту для каждого полученного документа, который мне нужно ограничить это по одному адресу электронной почты для каждого документа
Мне нужно проверить свойство последнего документа в условии, если Остальная часть кода:
importClass(java.lang.System);
importClass(Packages.com.filenet.api.property.Properties);
importClass(Packages.com.filenet.api.constants.RefreshMode);
importClass(java.lang.System);
importPackage(Packages.com.sendemail);
importClass(Packages.javax.mail.Message);
importClass(Packages.javax.mail.MessagingException);
importClass(Packages.javax.mail.PasswordAuthentication);
importClass(Packages.javax.mail.Session);
importClass(Packages.javax.mail.Transport);
importClass(Packages.javax.mail.internet.InternetAddress);
importClass(Packages.javax.mail.internet.MimeMessage);
var i =0;
function Email(xyz)
{
var to = "dms@ogdcl.com";
var from = "dms@ogdcl.com";
var host = "10.2.3.167";
var properties = System.getProperties();
properties.put("mail.smtp.host", host);
properties.put("mail.smtp.port", "25");
var session = Session.getDefaultInstance(properties);
//session.setDebug(true);
try {
var message = MimeMessage(session);
message.setFrom(InternetAddress(from));
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject("This is the Subject Line!");
//message.setText("This is the message sent from JS");
message.setText(xyz);
System.out.println("sending...");
Transport.send(message);
System.out.println("Sent message successfully....");
}
catch (e) {
System.out.println("Email not sent");
//throw new RuntimeException(e);
System.out.println(e.message);
}
}
function OnCustomProcess (CEObject)
{
System.out.println("Expired Bank Guarantees Search");
CEObject.refresh();
var props = CEObject.getProperties();
var xyz ="";
var TenderNo = props.getStringValue("TenderNo");
System.out.println("Tender No : " + TenderNo);
var BGNumber = props.getStringValue("BGNumber");
System.out.println("BG Number : " + BGNumber);
var VendorName = props.getStringValue("VendorName");
System.out.println("Vendor Name : " + VendorName);
var IssuanceDate = props.getDateTimeValue("IssuanceDate");
System.out.println("Issuance Date : " + IssuanceDate);
var BGAmount= props.getInteger32Value("BGAmount");
System.out.println("BG Amount : " + BGAmount);
var BGExpiryDate = props.getDateTimeValue("ExpiryDate");
System.out.println("BG Expiry Date : " + BGExpiryDate);
System.out.println("This isv loop checking");
xyz = xyz + TenderNo + BGNumber + VendorName + IssuanceDate + BGAmount + BGExpiryDate ;
i++;
System.out.println(i);
if(BGExpiryDate == '') // HERE I need to check for the last element
{
System.out.println(xyz);
EmailSend(xyz);
}
}