Не получается скрыть кнопку при заходе в карточку раздел, но при обновлении работает нормально

Добрый день

Мне необходимо скрывать кнопку создания контакта и контрагента, если два поля заполнены

я сделал следующее

Код самой кнопки

//кнопка
{
				"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  и все равно оставит видимой кнопку

НО если я обновлю страницу, то вся логика начинает отрабатывать нормально и реагировать на изменения

Нравится

3 комментария
Лучший ответ

Посмотрите комментарий в теме по ссылке, там описано решение. Проблема заключается в "совмещенном режиме"

https://community.terrasoft.ru/questions/dinamecheskaoe-izmenenie-aktiv…

Посмотрите комментарий в теме по ссылке, там описано решение. Проблема заключается в "совмещенном режиме"

https://community.terrasoft.ru/questions/dinamecheskaoe-izmenenie-aktiv…

Трефилов Павел Сергеевич,

кнопку мне тоже получается делать в section?

а в странице редактирования вешать метод, который отвечает за изменение состояния

 

все получилось , сделал кнопку в секции и на изменение контрагента или контакта повесил метод сообщения, который вызывает нужную мне логику, спасибо, никогда до этого не работал с сообщениями именно так

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