DOORS DXL链接到模块Baseline中不存在的对象

时间:2015-10-02 11:23:59

标签: ibm-doors

我目前在处理具有不同基线的两个模块之间的链接方面存在问题。

实施例: 我有一个模块A有10个基线,模块B有10个基线。 链接来自A =>的链接。 B.模块A的最后一个基线已经在模块B的最后一个基线之后1个月完成。同时,模块B中的更多对象已经创建并且从模块A链接到它们。

所以现在我在模块A的最后一个基线中有一些链接,它们链接到模块B中的对象,这些对象在模块B的最后一个基线中不存在(仅存在于最后一个基线++中)。

当我运行我的DXL脚本以获取所有链接对象时,我也会获得这些不存在的对象的ID,尽管它们在最后一个基线中不存在。我打开两个模块并使用load(模块,基线,false)函数加载最后一个基线。基线的名称有效,我的调试显示我正在使用最新的基线。但不知何故,由于链接,列出了这些不存在的对象。我已经阅读了有关回音链接的内容,但它们对我不起作用。

可能的解决方案是获取模块A的基线日期,并将其与链接对象的创建日期进行比较。但是,任何想法都必须有一种更简单,更清洁的方式吗?

1 个答案:

答案 0 :(得分:0)

对不起,我没有直接回答你的问题。我尝试了两个模块(A和B)之间的脚本。我链接了对象,创建了一个新的基线,并添加了一些也被链接起来的对象。

我无法解决运行以下脚本时出现的问题。我希望可能会有一些东西给你一个新的想法。基本上我打开模块B的基线并计算链接。较新的对象(我在当前版本中找到)不包含在此计数中。

Module modB = read("/Testmappe/ModuleB", false)
Module baselineModuleB
Object objB
Link l
string linkModName = "*"
int countLinks = 0

  // baseline(MAJ, MIN, SUFFIX)
Baseline myBaseline = baseline(0, 1, "")

if(baselineExists(modB, myBaseline))
{
  baselineModuleB = load(modB, myBaseline, false)

  for objB in baselineModuleB Module do {
    for l in all(objB<-linkModName) do {
    countLinks++
    }
  }
  print "Number of in-links are: " countLinks ""
}