Добрый день
Мне необходимо скрывать кнопку создания контакта и контрагента, если два поля заполнены
я сделал следующее
Код самой кнопки
//кнопка
{
"operation": "insert",
"name": "ProcessButton",
"values": {
"itemType": 5,
"style": "green",
"caption": "Добавить Контакта и Контрагента",
"click": {
"bindTo": "onLeadManagementSectionButtonClick1"
},
"visible": {
//привязка атрибута отвечающего за видимость кнопки
"bindTo": "ButtonVisible"
}
},
"parentName": "LeftContainer",
"propertyName": "items",
"index": 8
},
Код аттрибута видимости
"ButtonVisible": {
"dataValueType": Terrasoft.DataValueType.BOOLEAN,
"type": Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN,
"value": false
},
Метод отвечающий за изменение значения аттрибутта
setButtonVisible: function() {
var qualifiedContact = this.get("QualifiedContact");
var qualifiedAccount = this.get("QualifiedAccount");
if(qualifiedContact && qualifiedAccount){
this.set("ButtonVisible", false);
}else{
this.set("ButtonVisible", true);
}
},
аттрибут на изменение колонки контакта или контрагента
"buttonVisibleCreateContactAndAccount":{
"dependencies": [
{
"columns": ["QualifiedContact","QualifiedAccount"],
"methodName": "setButtonVisible"
}
]
},
Когда я захожу просто в карточку раздела,(двоиным кликом в реестре) то метод, который я написал выше, вызывается и присваивает true значению аттрибута, если одно из полей не заполнено, но при этом если я заполню эти два поля, то аттрибут перейдет в false и все равно оставит видимой кнопку
НО если я обновлю страницу, то вся логика начинает отрабатывать нормально и реагировать на изменения