Коллеги, как скрыть дашборд, если нет активностей?
Раньше по-моему так и было, если нет активностей, то он скрыт, но в одном из последних обновлений он висит даже пустой.
Я нашел атрибут [TabPanelCollapsed] в [BaseActionsDashboard], но не знаю как мне взять количество задач и присвоить атрибуту true, если их нет.
Буду благодарен за помощь.
Нравится
Напрямую к значению атрибута лучше не привязываться; судя по коду в BaseActionsDashboard, он глобален для разных открываемых записей и хранится в профиле пользователя. То есть, если открыли карточку одного обращения, свернули, закрыли карточку, открыли другую — будет тоже свёрнутым.
Лучше попробовать добавить логику подсчёта в функцию initDefaultTab, чтобы скрывало в случае, когда или tabCollapsed истинно, или 0 задач.
Зверев Александр,
Я попробовал скопировать метод в замещенную схему и добавить:
var dashboardItems = this.get("DashboardItems");
console.log(dashboardItems.getCount());
и получил ноль, когда в карочке есть одна задача. Может есть другой способ?) Спасибо за помощь!
Видимо, на тот момент они ещё не инициализированы.
Я имел в виду немного другое, зная Id открытой карточки обращения, можно напрямую из базы получить количество активностей, к ней привязанных.
Зверев Александр,
Тогда другой примитивный вопрос :) Как взять айдишник открытой карточки, находясь в BaseActionsDashboard?
Возможно, стоит попробовать путём обмена информацией со страницей карточки через sandbox.
А вообще, это плохая идея, при каждом открытии карточки будет запрос в таблицу активностей с выбором количества. А там может быть и миллион подходящих записей, если это все задачи по контрагенту «наша компания».