【问题标题】:Return Filtered Module in DXLDXL 中的返回过滤模块
【发布时间】:2016-05-04 14:29:54
【问题描述】:

我需要在某个模块中创建一个过滤器并获取过滤后的项目并循环它们并执行某种操作。 问题是过滤没有完成,错误如下:

Filter SwTest = includes(attribute "aVerificationStrategy" ,"SwTest") 
Filter Implemented = (attribute "aObjectStatus" < "inReview")
Filter SwTestReqsCASTLE = SwTest && Implemented
Module m = srs_doc
set(m, SwTestReqsCASTLE, accepted , rejected)
filtering on  OR ApplyFiltering(m) , i tried each as don't know difference !

那怎么了?

【问题讨论】:

    标签: ibm-doors


    【解决方案1】:

    在我回答您的主要问题之前,首先请允许我回答您关于“filtering on”和“ApplyFiltering(m)”之间区别的隐含问题。不同之处在于“过滤开启”在模块窗口中显示当前过滤器,这意味着对象根据过滤器显示或隐藏。 “ApplyFiltering(m)”将当前过滤器设置应用于模块资源管理器(显示层次结构的对象左侧的区域)。 “filtering on”显示和隐藏对象,“ApplyFiltering(m)”反映模块资源管理器中这些对象的状态。

    至于为什么没有应用您的过滤器,可能有几个原因:

    1. 最好在开始设置过滤器之前关闭过滤器。在其余代码之前添加“过滤掉”行。
    2. 您的“已实施”过滤器未正确定义。 DOORS 会将“inReview”视为一个字符串,它会与您的“aObjectStatus”属性的字符串值进行直接比较,以确定对象是被接受还是被拒绝。这是你想要的吗?
    3. srs_doc 是什么类型的变量?如果它是一个字符串,那么你需要 调用 read()、share() 或 edit() 以实际打开 模块。如果它是一个模块变量,那么该行是正确的。
    4. 我假设“accepted”和“rejected”是整数,但如果之前没有声明它们,那么它们需要声明。
    5. 根据我评论中的第一段,您的最后一行应为“filtering on”
    6. 您要过滤的模块是否正在显示?我意识到这可能很明显,但我以前犯过这个错误,所以我想我应该提一下。无法对当前未显示的模块应用过滤器。

    附带说明,您可以组合您的 SwTest 和已实现的过滤器,而无需创建额外的过滤器变量,如下所示:

    Filter SwTestReqsCASTLE = includes(attribute "aVerificationStrategy", "SwTest") && (attribute "aObjectStatus" < "inReview")
    

    我希望其中的一些帮助!祝你好运,如果以上方法都不能解决您的问题,请告诉我。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-25
      • 1970-01-01
      • 2018-10-10
      • 1970-01-01
      • 2021-09-01
      相关资源
      最近更新 更多