不知道我做错了什么,但这里是代码
1: var currDoc:NotesDocument = currentDocument;
2: var doc:NotesDocument = database.createDocument();
3: doc.replaceItemValue("form", "Memo");
4: doc.replaceItemValue("sendTo", currDoc.getItemValueString("responsible"));
5: doc.replaceItemValue("subject", currDoc.getItemValueString("replySubject"));
6: var rtitem:NotesRichTextItem = doc.createRichTextItem("Body");
7: rtitem.appendText("The following more information request has been answered:");
8: rtitem.addNewLine(2);
9: rtitem.appendText("Subject: " + currDoc.getItemValueString("replySubject"));
10: rtitem.addNewLine(2);
11: rtitem.appendText("Reply Text: " + currDoc.getItemValueString("replyText"));
12: rtitem.addNewLine(2);
13: rtitem.appendDocLink(currDoc);
14: doc.send();
Run Code Online (Sandbox Code Playgroud)
第13行的问题(有什么可能)执行JavaScript动作表达式时出错脚本解释器错误,行= 13,col = 8:[TypeError]方法NotesRichTextItem.appendDocLink(NotesXspDocument)未找到,或者非法参数,当我发表评论时在第13行,其余代码工作正常,发送电子邮件,其中包含我试图传递给电子邮件的文档中的内容.
几件事......
首先确保您的NSF具有默认视图设置.如果没有默认视图,Doclinks将无效.您可以通过设计器中某个视图旁边的金色星形来判断是否存在默认视图.
从错误消息看,您将NotesXspDocument传递给appendDocLink方法,而期望NotesDocument.第一行代码应该是真的
var currDoc:NotesDocument = currentDocument.getDocument(true)
Run Code Online (Sandbox Code Playgroud)
此外,此时已保存文档,如果没有,则应添加一行
currDoc.save(true,true)
Run Code Online (Sandbox Code Playgroud)
这将确保文档已保存,您无法在没有文档UNID的情况下发送DocLink,并且未保存的文档将不具有有效的UNID.