【问题标题】:DMN Feel multiple Not Equals (!=)DMN 感觉多个不等于 (!=)
【发布时间】:2022-01-05 12:39:19
【问题描述】:

我想询问有关 DMN FEEL 逻辑运算符不等于的挑战。

基本上,在单个字段中放置多个不等于 (!=) 时,我们不会得到正确的结果。从附加的示例中,我们基本上在第三列中放置了一个条件,如果Input.CallPurpose.Code 不等于 2 或 1 - !="2", !="1" - 那么它应该命中该行并返回输出,但如果我们传递“2”或“1”,那么它应该跳过这一行并尝试相应地点击以下行。

在我们的例子中,如果我们通过 (2) 它会命中第一个运算符 (!= 2) 并将跳过作为预期结果的行;但是,如果我们通过 (1),它将不会与第二个 (!=) 进行比较,也不会跳过错误结果的行

如果我们传递一个 != 就可以了

在这一点上的任何帮助将不胜感激

谢谢

【问题讨论】:

    标签: operators dmn feel-language


    【解决方案1】:

    可能最惯用的方法是执行以下操作:

    not("B", "A")
    

    因此,如果您提供“A”或“B”,那么您希望它与第一行匹配。 提供 C 的示例:

    在这种情况下匹配第一行,因为 C 不是 A,不是 B。

    提供 A 的示例:

    在这种情况下,使用基本的一元测试匹配第一行中的 A。

    如果您想要一个广义的扩展一元测试,您可以编写

    not( ? in ["A", "B"])
    

    也是。

    【讨论】:

      【解决方案2】:

      为了将来参考,使用以下语法解决了这个问题:

      !=["option 1", "option 2", "option 3"]
      

      【讨论】:

      • 这不是一个有效的解决方案,因为 != 只允许在扩展的一元测试中使用,但这将使用列表检查不等式
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-01
      • 2020-09-20
      • 2015-03-09
      • 1970-01-01
      • 2020-09-09
      • 2016-02-18
      相关资源
      最近更新 更多