从IBM Notes中的两个数据库中搜索文档和子文档

时间:2017-02-15 17:46:29

标签: performance lotus-notes lotus-domino lotusscript

在IBM Notes中,我有两个数据库

Orders.nsf和OrdersArchive.nsf

在Orders.nsf数据库中,我有Orderdocuments和Orderline文档 一个订单可以有X个订单。

例如,订单1有两个订单项:

  1. 卡地亚
  2. 灯泡
  3. 所以总共有一个Order文档和两个Orderline文档。

    Orders.nsf数据库包含从2014年到现在的所有订单。 所有旧订单+订单行都在OrdersArchive.nsf数据库中。

    现在两个数据库中都有一个视图,人们可以在其中搜索ordelines。因此,例如约翰搜索卡特尔并看到以前的订单行与卡特尔.. 问题是John需要在Orders.nsf数据库和OrdersArchive.nsf数据库中进行搜索。因为带有cartire订单行的订单可能来自2016年,但也可能是2010年。

    为此,我有一个新服务器,我在其上有一个orders.nsf数据库,其中我从两个数据库复制了所有订单和订单行。这样John就可以在该数据库中搜索,看看是否已存在任何订单或订单..

    现在问题是您有2个文件。有没有更简单的方法来解决这个问题。 就像在服务器1上创建1视图一样,它从Orders.nsf和OrdersArchive.nsf数据库获取所有订单的订单行?或者这会降低性能吗?

2 个答案:

答案 0 :(得分:3)

您应该尝试Domain Search。更多信息: https://www.ibm.com/support/knowledgecenter/SSKTMJ_8.0.1/com.ibm.help.domino.admin.doc/DOC/H_WHAT_IS_DOMAIN_SEARCH_OVER.html

但是如果你熟悉编码,你也可以尝试使用 LotusScript 添加一些功能。代码应该是这样的:

   Set db = session.CurrentDatabase
   Set collection = db.AllDocuments
   Call collection.FTSearch("pirelli", 10)

此处提供更多信息: http://www-12.lotus.com/ldd/doc/lotusscript/lotusscript.nsf/1efb1287fc7c27388525642e0074f2b6/12f371c99182bae78525642e0075cdc8?OpenDocument

答案 1 :(得分:2)

默认情况下,您无法将来自不同数据库的两个视图混合到Notes客户端中的一个视图中。您可以创建一个搜索结果表单,列出富文本字段中两个视图的所有条目。但这需要一些努力......

在您的案例中有一种更简单的方法:

  • 使用SaveOptions =" 0"创建表单包含两个视图作为嵌入视图
  • 按订单产品
  • 对两个视图进行分类
  • 仅显示两个嵌入视图中的当前订单行产品
  • 添加一个按钮"显示全部"订单生成基于当前订单产品的表单的文档

这样,用户可以直接从订单产品中查看订单产品的所有条目,而无需切换到两个视图并进行搜索。