微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

DXL:无法将历史中发现的某些属性分配给属性

如何解决DXL:无法将历史中发现的某些属性分配给属性

DXL、IBM 门 循环遍历模块,然后遍历每个对象历史记录,如果“_Owner”为空,我试图将上次修改“_ReqStatus”属性的obj历史记录中的作者分配给“_Owner”属性

这是我试过的:

Module m = current
History h
HistoryType ht 
Object o
string attributName
string authorName
string newOwner


noError()
for o in entire m do {
for h in o do
{   
    string owner = ""
    attributName=""
    attributName = h.attrName
    authorName=""
    owner = o."_Owner"

    if isDeleted(o) then continue 
    
    
    if((attributName=="_ReqStatus"))
    {   
        authorName=h.author
        //print authorName
        //print "\n"
        if(null owner)
        {   
            print identifier(o)
            print "\n"
            newOwner = authorName
            print newOwner"\n"
            owner = newOwner    
            print owner
            break       
        }
        
    }
    
}
}
ErrMess = lastError()

print owner输出符合预期。我的问题是 in-DOORS 属性根本没有填充任何值。

_Owner 属性类型是枚举,属性属性看起来像这样,但我不知道它是否重要: "_Owner" attr properties

解决方法

分配 string owner = o."_Owner" 时,变量 owner 不是对象属性本身的句柄,而是 o 的 {{1} 的内容 }} 属性被复制"_Owner"。因此,在您稍后的重新计算 owner 中,您只更改该变量而不是属性。试试owner = newOwner

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。