DOORS属性未按预期工作

时间:2016-08-26 14:12:04

标签: ibm-doors ibm-rational

我找到了这个代码,它在SHAREABLE EDIT中运行良好:

// Attribute DXL for locked objects
if (isLockedByUser(obj))
{
obj.attrDXLName = "LOCKED"
}

并补充说:

else
{
obj.attrDXLName = "unlocked"
}

else条件不起作用(if部分功能相同)。我错过了什么?第一次在DXL编码,但我有C经验。编辑:我发现else条件可能无法在未锁定的项目中更新,因此它永远不会出现。

剩下的问题是,为什么它不适用于Exclusive Edit?我应该检查isLockedByUser模块,因为它已锁定在该级别吗?

// Attribute DXL for locked objects
if (isLockedByUser(obj) or isLockedByUser(current))
{
obj.attrDXLName = "LOCKED"
}

......也不起作用。同样,它适用于可共享编辑,但不适用于独占编辑。

有关如何让此字段为Exclusive Edit工作的建议?

1 个答案:

答案 0 :(得分:0)

在isLockedByUser的DXL参考手册(第36章:常规功能>锁定)中,这里有如何描述:

  

bool isLockedByUser(Object o)

     

如果在编辑可共享模式下当前用户锁定了指定对象,则返回true。否则,返回false。

     

此功能不等同于检查当前用户是否可以修改给定对象。

我的猜测(我自己还没有通过DXL处理锁定)就是当模块处于共享编辑模式时,isLockedByUser只有意义,因此您可能必须找到另一种方法来执行您所做的事情。试图做。