vCard 形式の 1 つ以上の文書を添付します。
パラメータ | 説明 |
---|---|
base | NotesDocument、NotesDocumentCollection、NotesNoteCollection。 vCard 形式で添付する連絡先文書。 コレクションを指定すると、添付ファイルが作成され、個々の vCard が端と端を接した形で並びます。 |
filename | vCard 形式で添付する連絡先文書のファイル名。 |
指定したコレクションが空の場合、「コレクションに文書がありません」というエラーが発生します。
文書が連絡先文書でない場合、文書は添付されず、「VCard の接続に失敗しました」というエラーが発生します。
添付ファイルの文字セットは UTF-8 です。
try {
// requestScope.sendto is a list box allowing multiple entries - returns java.util.ArrayList
// stop processing if sendto is empty
if (requestScope.sendto.isEmpty()) {
requestScope.status = "No sender(s) specified";
return;
}
var sendto = new java.util.Vector(requestScope.sendto);
var memo:NotesDocument = database.createDocument();
memo.appendItemValue("Form", "Memo");
// requestScope.subject is an edit box - returns string
memo.appendItemValue("Subject", requestScope.subject);
// requestScope.body is rich text - returns com.ibm.xsp.http.MimeMultipart
// do not create mime entity if body is null
if (requestScope.body != null) {
// stream html from body to mime entity
session.setConvertMime(false);
var stream = session.createStream();
stream.writeText(requestScope.body.getHTML());
var body = memo.createMIMEEntity("Body");
body.setContentFromText(stream,"text/html;charset=UTF-8", 1725);
stream.close();
memo.closeMIMEEntities(true);
session.setConvertMime(true);
}
// Attach vcards that contain requestScope.query (edit box)
var names:NotesDatabase = session.getDatabase(null, "names", false);
if (names != null) {
var view:NotesView = names.getView("My Contacts");
if (view.FTSearch(requestScope.query) > 0) {
var doc:NotesDocument = view.getFirstDocument();
while (doc != null) {
memo.attachVCard(doc);
var tmpdoc = view.getNextDocument();
doc.recycle(); // recycle to avoid memory problems
doc = tmpdoc;
}
}
}
// send memo and report status
memo.send(false, sendto); // same as memo.send(sendto);
requestScope.status = "Message sent¥n";
} catch(e) {
requestScope.status = e.toString();
}