Никак не получается отображать/скрывать по условию элемент tab:
"operation": "insert",
"name": "TestTab",
"values": {
"caption": {
"bindTo": "Resources.Strings.OwnerCaption"
},
"items": []
},
"parentName": "Tabs",
"propertyName": "tabs",
"index": 0
}
Подскажите как это сделать.
Нравится
Все вкладки хранятся в коллекции TabsCollection
получить доступ к ней можно следующим образом:
this.get("TabsCollection");
В примере реализовано скрытие вкладки для контрагента с типом клиент (функционал не базовый)
this.get("TabsCollection");
attributes: {
"Type": {
dependencies: [
{
columns: ["Type"],
methodName: "typeChange"
}
]
}
},
typeChange: function () {
/* Добавление/удаление вкладки */
var tabsCollection = this.get("TabsCollection");
//TestTab- название вкладки, которую необходимо спрятать
var TestTab = tabsCollection.contains("TestTab")?tabsCollection.get("TestTab"):false;
//прячем вкладку "TestTab" для всех, кроме клиента
if( Type === Constants.Client &&
!TestTab){
tabsCollection.insert(4, "TestTab", Terrasoft.Account.TestTab);
}else if(!(Type === Constants.Client) &&
TestTab){
Terrasoft.Account.TestTab= TestTab;
tabsCollection.removeByKey("TestTab");
}
}
Также можете ознакомиться с данной темой:
http://www.community.terrasoft.ru/forum/topic/11180