【问题标题】:I can not delete Objects...why?我无法删除对象...为什么?
【发布时间】:2019-05-21 15:50:41
【问题描述】:

这是我的一段代码:

void deleteObject(Object o, Module m){
 Link lnk, delLnk
 string srcModName
 // delete outgoing links
 for lnk in o -> "*" do {
    delete(lnk)
 }
 Object srcO
 Link inLnk
 for inLnk in o <- "*" do {
    srcModName = fullName source(inLnk)
    print srcModName "izena\n"
    edit(srcModName, false)
    delLnk = inLnk
    delete(delLnk)
 }
 flushDeletions()
 hardDelete(o)
}

它在 hardDelete(o) 行崩溃,说我无法删除该对象,因为它有输入链接。谁能告诉我为什么?

错误:

No se puede suprimir el objeto: El objeto tiene enlaces entrantes

【问题讨论】:

    标签: ibm-doors


    【解决方案1】:

    我相信这段代码:

     Link inLnk
     for inLnk in o <- "*" do {
        srcModName = fullName source(inLnk)
        print srcModName "izena\n"
        edit(srcModName, false)
        delLnk = inLnk
        delete(delLnk)
     }
    

    没有做你认为它正在做的事情。更具体地说 - 这只会选择源已经打开的链接,这基于你有“编辑”命令,似乎不是你想要做的。

    string srcModName
    for srcModName in o <- "*" do {
         edit ( srcModName , true , true , true ) 
    }
    Link inLnk
    for inLnk in o <- "*" do {
       srcModName = fullName source(inLnk)
       print srcModName "izena\n"
       delLnk = inLnk
       delete(delLnk)
    }
    

    这将加载每个模块,然后删除链接。注意——这不会关闭打开的(现在编辑的)模块!我还让它以可见模式(以便它们可以轻松保存/关闭)和标准视图(以减少计算开销)打开这些模块

    祝你好运!

    【讨论】:

      猜你喜欢
      • 2018-05-22
      • 1970-01-01
      • 2019-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多