Добрый день.

Правило которое должно сработать если в поле UsrLookupBR выбрано определённое значение. Только вот оно и игнорирует условие срабатывания и просто скрывает навсегда. 

   

Terrasoft.sdk.Model.addBusinessRule("Activity", {

    ruleType: Terrasoft.RuleTypes.Visibility,

    conditionalColumns: [

        {name: "UsrLookupBR", value:"E818A7C2-F351-41A6-A376-7F42762883F2"}

    ],

    triggeredByColumns: ["UsrLookupBR"],

    dependentColumnNames: ["UsrLookupDostup", "Owner"]

});

 

А вот если указать на предмет заполненности  поля    {name: "UsrLookupBR", value: null}, то правило чудесным образом срабатывает. 

Буду очень рад помощи. Заранее спасибо.

Нравится

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

Скорее всего, неправильно сделали сравнение с GUID в фильтре. Если посмотреть похожие случаи, там так:

Terrasoft.sdk.Model.addBusinessRule("KnowledgeBaseFile", {
	ruleType: Terrasoft.RuleTypes.Visibility,
	name: "KnowledgeBaseFileVisibleFileRule",
	conditionalColumns: [
		{name: "Type", value: Terrasoft.Configuration.FileTypeGUID.File}
	],
	events: [Terrasoft.BusinessRuleEvents.Load],
	dependentColumnNames: ["Data"]
});
Terrasoft.sdk.Model.addBusinessRule("KnowledgeBaseFile", {
	ruleType: Terrasoft.RuleTypes.Visibility,
	name: "KnowledgeBaseFileVisibleLinkRule",
	conditionalColumns: [
		{name: "Type", value: Terrasoft.Configuration.FileTypeGUID.Link}
	],
	events: [Terrasoft.BusinessRuleEvents.Load],
	dependentColumnNames: ["Name"]
});

Тут File и Link — две константы, заданные в MobileConstants:

Terrasoft.Configuration.FileTypeGUID = {
	File: "529bc2f8-0ee0-df11-971b-001d60e938c6",
	Link: "539bc2f8-0ee0-df11-971b-001d60e938c6",
	EntityLink: "549bc2f8-0ee0-df11-971b-001d60e938c6"
};

А, может, дело просто в верхнем регистре букв у Вас в константах?

Спасибо большое. Дело было в регистре.

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

Добрый день! Подскажите, пожалуйста, начинающему...
Были добавлены 3 новых поля на страницу case.
Создала замещающий модуль для страницы настройки и настроила правила отображения Поля1, если тип обращения = Жалоба. Но в итоге получаю, что поля никогда нет на странице (основа кода тут http://academy.terrasoft.ru/documents/?product=SDK&ver=7.6.0).

rules: {
        "UsrField11": {
        BindParametrVisibilePlaceByType: {
                ruleType: BusinessRuleModule.enums.RuleType.BINDPARAMETER,
                property: BusinessRuleModule.enums.Property.VISIBLE,
                conditions: [{
                leftExpression: {
                     type: BusinessRuleModule.enums.ValueType.ATTRIBUTE,
                     attribute: "Category"
                                },
                        comparisonType: Terrasoft.ComparisonType.EQUAL,.
                        rightExpression: {
                                type: BusinessRuleModule.enums.ValueType.CONSTANT,
                                value: "1C9D7B67-9A81-41F8-89F5-B6BF69F821D6"
                        }
                }]
        }
}
},
                       

Нравится

1 комментарий

Ошибка была в регистре значения Value. В нижнем регистре отработало, как положено.

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