专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Lotus

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

发布时间:2010-06-13 13:48:40 文章来源:www.iduyao.cn 采编人员:星星草
请教:如何用对话框显示数据库中已经存在的文档?
有一数据库: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 If
End 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.在列出的文档中选择打开即可。
另外,还可以做得更人性化些,如只找到一个,就不弹对话框,直接打开等等。

友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: