Как в правилах bind parameter проверить несколько значений

Здравствуйте,

В примере ниже проверяется, что leftExpression равно value, одному value. Можно ли проверить, что leftExpression равно одному из многих значений, указанных в value, т.е. чтобы value был массивом значений? Пробовал писать что-то подобное "value": ["bla1", "bla2"] но, видимо, чего-то не хватало..

"UsrCandforVac": {
        "BindParameterVisibleUsrCandforVacByUsrCandGlobalStatus": {
                ruleType: BusinessRuleModule.enums.RuleType.BINDPARAMETER,
                property: BusinessRuleModule.enums.Property.VISIBLE,
                logical: Terrasoft.LogicalOperatorType.AND,
                "conditions": [{
                        "leftExpression": {
                                "type": BusinessRuleModule.enums.ValueType.ATTRIBUTE,
                                "attribute": "UsrCandGlobalStatus"
                        },
                        "comparisonType": Terrasoft.ComparisonType.EQUAL,
                        "rightExpression": {
                                "type": BusinessRuleModule.enums.ValueType.CONSTANT,
                                "value": "5fc83e17-0996-4642-bb22-1f93869c6ebc"
                        }
                }]
        }
}

Спасибо

Нравится

2 комментария

Добрый день!

К сожалению, значение "Value" не принимает массив. "Value" может принимать значение булево или один элемент значения.

Если Вам необходимо несколько значений, то Вы можете в массиве conditions добавлять необходимо количество раз код, который ниже:

{
                        "leftExpression": {
                                "type": BusinessRuleModule.enums.ValueType.ATTRIBUTE,
                                "attribute": "UsrCandGlobalStatus"
                        },
                        "comparisonType": Terrasoft.ComparisonType.EQUAL,
                        "rightExpression": {
                                "type": BusinessRuleModule.enums.ValueType.CONSTANT,
                                "value": "5fc83e17-0996-4642-bb22-1f93869c6ebc"
                        }
                }

но с разными значениями value.

Спасибо. Думаю подобное нужно реализовать в следующих версиях. И вообще синтаксис правил уж больно громоздкий. Похоже, лучше использовать много мелких функций практически во всех случаях..

Показать все комментарии