我发现了这段代码,它在可共享编辑中运行良好:
// Attribute DXL for locked objects
if (isLockedByUser(obj))
{
obj.attrDXLName = "LOCKED"
}并补充说:
else
{
obj.attrDXLName = "unlocked"
}但是else条件不能工作( if部件的功能相同)。我遗漏了什么?第一次用DXL编码,但我有C语言的经验。编辑:我发现else条件可能无法在解锁项中更新,所以它永远不会出现。
剩下的问题是,为什么它不适用于独家编辑?我是否应该检查isLockedByUser的模块,因为它已经锁定在那个级别上了?
// Attribute DXL for locked objects
if (isLockedByUser(obj) or isLockedByUser(current))
{
obj.attrDXLName = "LOCKED"
}..。这也不管用。同样,它适用于可共享编辑,但不适用于独占编辑。
关于如何让这个领域为独占编辑工作的建议?
发布于 2016-09-08 16:36:25
在isLockedByUser的DXL参考手册(第36章:一般函数>锁定)中,描述如下:
bool isLockedByUser(对象o) 如果指定的对象在编辑共享模式时被当前用户锁定,则返回true。否则,返回false。 此函数不等同于检查当前用户是否可以修改给定对象。
我的猜测(我自己还没有处理过通过DXL锁定)是,只有当模块处于共享编辑模式时,isLockedByUser才有意义,所以您可能必须找到另一种方法来完成您想要做的事情。
https://stackoverflow.com/questions/39168353
复制相似问题