我想从Xpage应用程序发送电子邮件。想要包含某种类型的标题图形或HTML样式,并且必须包含文档链接。
我开始使用Ulrich Krause对Tony McGuckin出色的SSJS的修改
然而,我有两个问题无法解决——添加文档链接和图形。
var doc:NotesDocument = currentDocument.getDocument();
var tmp:String ="A New Location Has Been Created: " + document1.getDocument().getItemValueString("businessUnitName") + ".nn" + "Please click this doc link and add any additional approvers ==> ";
emailBean.setSendTo("name@domain.com");
emailBean.setSubject("Lcoations");
emailBean.setSenderEmail("name@domain.com");
emailBean.setSenderName("Locations");
emailBean.setFieldName("Body");
//emailBean.setDocument(document1);
emailBean.addHTML("<table><tr><th>Month</th><th>Savings</th></tr><tr><td>January</td><td>$100</td></tr></table>")
emailBean.addHTML(tmp);
emailBean.setBannerHTML("<table><tr><th>Month</th><th>Savings</th></tr><tr><td>January</td><td>$100</td></tr></table>");
emailBean.setFooterHTML("<p>Kind regards,<br/>Samantha<br/>0012 3456 789</p>");
emailBean.send();
我已经注释掉了setDocument代码,因为它不起作用,也没有必要。
我在数据库中有一个名为locations.gn的图像资源,我想包括它——或者我可以把它放在我控制的url上。
如何传递文档链接?我已经计算过了,但我现在不知道如何添加。
我尝试过的另一种方法是自己滚一滚。
我在Xpage表单上的一个按钮中有这个:
var doc:NotesDocument = currentDocument.getDocument();
var nteUrl:String = doc.getNotesURL();
var sndTo:String ="name.domain.com";
var sndFrm:String ="ame.domain.com";
var sbj:String ="A New Location Has Been Created: blah blah blah");
var body:String =""A New Location Has Been Created: blah blah blah");
sendEmail(sndTo,sndFrm,sbj,body,doc);
然后我的功能:
function sendEmail(sndTo,sndFrm,subject,body,trgDoc) {
var doc:NotesDocument = database.createDocument();
doc.replaceItemValue("Form","Memo");
doc.replaceItemValue("Subject",subject);
doc.replaceItemValue("Principal",sndFrm);
doc.replaceItemValue("From",sndFrm);
doc.replaceItemValue("SendTo",sndTo);
doc.replaceItemValue("DisplaySent",sndTo);
doc.replaceItemValue("SMTPOriginator",sndTo);
var memo:NotesRichTextItem = doc.createRichTextItem("Body")
var urlgif="/locations.png";
memo.embedObject(NotesEmbeddedObject.EMBED_OBJECT, "",urlgif,null);
memo.appendText(body);
memo.appendDocLink(trgDoc);
doc.send();
return ;
}
这会将文件作为附件而非图片进行附加。找不到这样做的方法。
我不知道我使用哪种方法,我只想确定并收紧一种方法,这样我就可以在整个应用程序中使用它。
如有任何帮助,我们将不胜感激。
您使用emailBean.addHTML(... your html ...)
基于HTML创建电子邮件。
使用语法
<a href="url">link text</a>
添加链接和
<img src="url" ...>
以添加图像。
你可以用base64编码图片,并将其完全包含在你的html中,而不是URL,就像一样
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAZ
AQAAAADskrjOAAAAfElEQVR42mNgrDrAwFCbHs/A4Gp8EUgIBAKJSUCiVuY+A
wNjqAMDw//T/xsYDK9nMDB4/zAGSkimMTAIbz/DwHDitRwDg1agNQPD0YTyBoZ
L/ncbGHg3swN1WBcD9f4Lb2CoLS8AmufB3sDgehWo2LXRDSjmtRkoG5TCAACQ
1SM9QzyOtAAAAABJRU5ErkJggg==">