有条件的行动呼吁

时间:2015-03-05 22:43:12

标签: dynamics-crm-2013 unified-service-desk

我正在使用CRM 2013 Unified Service Desk(USD)构建应用程序。现在,我正在创建从托管控件到另一个控件的条件操作调用。到目前为止,我使用单个表达式,如:

"[[Data1]]" == "Value1"

但是我已经走得更远了兔子的洞,现在我需要用OR运算符查询两个值:

"[[Data1]]" == "Value1" || "[[Data2]]" == "Value2"

虽然第一个示例正常,但使用||运营商没有。我已经尝试过使用一些变体,比如expr OR expr,但评估失败了。

MSDN上没有关于动作调用的条件部分的文档,因此我需要帮助解决这个问题。

2 个答案:

答案 0 :(得分:2)

正如您所发现的,USD会将您的密钥翻译为其文本版本,然后将其传递给javascript转换器。 所以:

// where mykey1 = "Test" (string)  and mykey2 = true (bool)
// Success condition
"[[mykey1]]" == "Test" || "[[mykey2]]" == "True"

如果您正在使用查找,并且您希望仅在查找指向业务单位并且业务单位的名称为defaultorg时才运行操作...您将使用此:

// where [[$User.businessunitid]] reference to a business unit
"[[$User.businessunitid.logicalname]]" == "businessunit" && "[[$User.businessunitid.name]]" == "defaultorg"

希望有所帮助。

答案 1 :(得分:0)

因此,经过一些小实验,我意识到问题不是逻辑运算符,而是使用布尔表示。 truefalse在美元条件下大写:

"[[Data1]]" == "Value1" || "[[Data2]]" == "True"

但表达式的其余部分是有效的,因此您可以像在C#中一样组合并使用逻辑OR(“||”)和逻辑AND(“&&”)。