Добрый день.
В карточке обращения есть группа полей (например, Сроки), мне нужно скрыть\показать группу в зависимости от каких-либо условий (например, показать группу полей Сроки только на стадии "Решено").
Подскажите, как это сделать?
Пробовала сделать через бизнес-правила https://academy.terrasoft.ru/documents/technic-sdk/7-10/pravilo-bindpara... , но не получилось.
Нравится
как пример LeadPageV2 группа полей "Регистрационные данные"
attributes: { ... //атрибут значением которого мы будем контролировать видимость группы полей "isLeadPageRegisterInfoVisible": { type: Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN, dataValueType: Terrasoft.DataValueType.BOOLEAN, value: false }, ... } diff: { ... //merge для конфигурационного объекта группы полей { "operation": "merge", "name": "LeadPageRegisterInfo", "values": { //"биндинг" (привязка) значения свойства viewModel к атрибуту "visible": {bindTo: "isLeadPageRegisterInfoVisible"} } }, ... }, methods: { ... "onEntityInitialized": function() { this.callParent(arguments); //сохраним в глобальной области видимости контекст карточки, для удобного доступа из консоли document.thisPageScope = this; } ... }
теперь откроем карточку лида, и в консоли поиграемся значением атрибута:
document.thisPageScope.set("isLeadPageRegisterInfoVisible", true); //наблюдаем появившуюся группу полей document.thisPageScope.set("isLeadPageRegisterInfoVisible", false); //наблюдаем как группа полей была скрыта.
вам необходимо определить группу полей в diff секции карточки
и ёё свойство visible забиндить на атрибут (булево) значением которого в последствии управлять из Вашего клиентского кода, в зависимости от значения в атрибуте - группа полей будет скрыта или продемонстрирована.
как пример LeadPageV2 группа полей "Регистрационные данные"
attributes: { ... //атрибут значением которого мы будем контролировать видимость группы полей "isLeadPageRegisterInfoVisible": { type: Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN, dataValueType: Terrasoft.DataValueType.BOOLEAN, value: false }, ... } diff: { ... //merge для конфигурационного объекта группы полей { "operation": "merge", "name": "LeadPageRegisterInfo", "values": { //"биндинг" (привязка) значения свойства viewModel к атрибуту "visible": {bindTo: "isLeadPageRegisterInfoVisible"} } }, ... }, methods: { ... "onEntityInitialized": function() { this.callParent(arguments); //сохраним в глобальной области видимости контекст карточки, для удобного доступа из консоли document.thisPageScope = this; } ... }
теперь откроем карточку лида, и в консоли поиграемся значением атрибута:
document.thisPageScope.set("isLeadPageRegisterInfoVisible", true); //наблюдаем появившуюся группу полей document.thisPageScope.set("isLeadPageRegisterInfoVisible", false); //наблюдаем как группа полей была скрыта.