首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 企业软件 > 行业软件 >

请问:怎么用对话框显示数据库中已经存在的文档

2012-02-14 
请教:如何用对话框显示数据库中已经存在的文档?有一数据库:AA.NSF,已经在里面创建了一个VIEWAA的视图(使用

请教:如何用对话框显示数据库中已经存在的文档?
有一数据库:AA.NSF,已经在里面创建了一个VIEWAA的视图(使用BB的表单),有AA和BB两个表单,现在想在AA文档上设计一个按钮,然后要其显示数据库中已经保存的BB文档(不是在对话框中新建BB文档,而是查询VIEWAA的视图,找到已经建立的BB文档,查询的条件是BB文档中的文档ID=“123456”)请大家帮忙。

[解决办法]
参考代码如下,需要做进一步的调试。

JScript code
Sub Click(Source As Button)    Dim w As New NotesUIWorkspace    Dim s As New NotesSession        Dim db As NotesDatabase    Dim view As NotesView    Dim doc As NotesUIDocument    Set doc=w.CurrentDocument    Set db=s.CurrentDatabase        '需要在服务器上建立相关视图    Set view=db.GetView("viewname")    Dim tmpdoc As NotesDocument        'key值可以是当前文档的相关域值,也可以是你指定的值,需要重新赋值    Set tmpdoc=view.GetDocumentByKey("key")    If Not tmpdoc Is Nothing Then        Call w.EditDocument(False,tmpdoc)    End IfEnd Sub
[解决办法]
假设原表单名称为FormA,文档ID为123;
1.建一个文件夹Folder;
2.建一个表单FromB,用嵌入视图的方式将Folder嵌入此表单。
3.在FormA表单创建按钮,用LotusScript编程
 1)用DB.search()方法,将所有ID为123的文档形成文档集(NotesDocumentCollection);
 2)用Call notesDocumentCollection.PutAllInFolder,将这个NotesDocumentCollection中的所有文档放到Folder中;
 3)调用notesUIWorkspace.DialogBox,在弹出的对话框中打开FormB;
4.在列出的文档中选择打开即可。
另外,还可以做得更人性化些,如只找到一个,就不弹对话框,直接打开等等。

热点排行