使用DXL搜索文档

时间:2011-07-19 07:39:08

标签: database ibm-doors

我的一位朋友(Telelogic Doors)DXL的经验很少 在文档中搜索可能匹配字符串的对象的问题。

问题是:

我们有2个属性:严重性和可能性

请参阅下表中的值:

enter image description here

编辑已添加(示例):
示例文档如下所示

enter image description here

2)所以现在如果我有 Severity =可忽略 Likelihood = Improbable 这样的组合,那么我想解析整个文档,然后尝试查找所有具有这些值并显示对象总数的对象。

3)然后我转到下一个组合ex:严重程度=次要伤害和可能性=不太可能然后显示此组合的总对象。

4)所以现在我浏览了所有25种组合并显示每种组合的总数。

麻烦的是我没有DXL的经验。 我知道如何在C / C ++中完成它而不是在DXL中。

需要基于DXL的解决方案。

4 个答案:

答案 0 :(得分:1)

你必须在DXL中这样做吗?以另一种方式做这可能要容易得多。例如,根据文档的结构,您可以创建按严重性和可能性分类的视图,然后显示每个类别的总计。

或者您可以使用电子表格轻松导出数据并计算总数。

<强>更新 DXL只是一种适用于Domino的XML格式。因此,一旦您拥有DXL格式的数据库,您可以像使用C / C ++的任何其他XML文档一样解析它,如果您最熟悉的话。这个任务的关键是将数据库变为DXL格式。

使用Lotus Notes C / C ++ API,您可以从NotesSession对象创建DXLExport,并调用DXLExporter类来执行导出(对不起,如果我弄乱了对象名称 - 我已经习惯了LotusScript为主)。

另一个可能适合您的选项是将此DXLExporter Wizard用于Domino 8.5。这将完成创建DXL的工作,您可以专注于解析它。

答案 1 :(得分:1)

这与Domino DXL无关,但与Telelogic Doors eXtension Language无关。文档:http://publib.boulder.ibm.com/infocenter/rsdp/v1r0m0/index.jsp?topic=/com.ibm.help.download.doors.doc/topics/doors_version9_1.html

建议:删除lotus-notes标签。

答案 2 :(得分:1)

Amitd,最直接的方法是创建一个包含对象标题,对象文本,严重性,可能性和任何其他相关属性的视图;然后执行基本的export to Excel。进入Excel后,我们将根据需要操作数据。

打开导出的文档,然后按严重性排序,然后按可能性排序。使用Excel内置函数创建聚合计算:COUNTIF和Data&gt;组和数据&gt; SUBTOTAL选项。然后,您可以对汇总总数进行排序,或者对不同组合的属性进行过滤。

仅供参考 - DXL是DOORS eXtension语言 - 与Domino无关。

答案 3 :(得分:1)

我知道我在这里参加聚会有点晚了,但你要找的是:

首先将输入文件另存为csv。

Module m = current
Object o
Stream infile = read("PathToYourCsvFile")
string inline = ""
infile >> inline

while(!end(infile))
{
  string Severity = ""
  string Likelihood = ""

  // Here do some code to get the values from the line in the csv
  // If you still are interested I can add this in with an update later.


  for o in m do
  {
    if((o."Severity" "" == Severity) && (o."Likelihood" "" == Likelihood))
    {
      count++;
    }
  }
  infoBox "Severity = " Severity " and Likelihood = " Likelihood " MATCHES: " count ""
}

在使用找到的匹配数计算每一行后,将弹出一个框。如果你愿意的话,你可以轻松地在最后弹出一个包含所有匹配的方框。再次,如果您仍然感兴趣,请给我一些关于输入和输出的更多信息,我可以为您提供更准确的代码。