Здравствуйте!
Проблема: есть 44 вида печатных форм и необходимо от выбора типа объекта, запускать "Печать"--> И выбрать элемент меню "Печать". Выбирать среди 44 айтемов неудобно.
Хочу повесить условия на метода печати в зависимости от значения поля выбранного справочника.
Вижу два варианта решения:
1. В зависимости от значения поля справочника мы управляем значением свойства visible всех элементов.
Много проверок.
2. Делаю свою кнопку "Печать". При нажатии на нее, определяю значения поля выбранного в справочнике. И посредством switch-case запускаю printMethod(printCollection[itemТNumber]).
Как мне получить доступ к колекции Печатных форм для данной страницы и вызвать метод печать(элемент)?
Нравится
Здравствуйте, Валерий!
Вы можете добавить все необходимые Вам печатные формы для раздела, а затем реализовать скрытие ненужных в зависимости от типа записи или любого другого поля.
Для этого необходимо переопределить метод «initPrintButtonMenu», который определен в PrintReportUtilities.
Переопределять следует на странице редактирования. В частности, чтобы срабатывала проверка на тип необходимо в базовом методе заменить
printMenuItems.addItem(this.getActionsMenuItem({
"Caption": item.caption,
"Click": { bindTo: item.methodName },
"Tag": item.tag,
"Enabled": (type === "Section") ? { bindTo: "isAnySelected" } : true,
"Visible": (item.tag.typeColumnValue) ? { bindTo: "getPrintMenuItemVisible" } : true
}));
printMenuItems.addItem(this.getActionsMenuItem({
"Caption": item.caption,
"Click": { bindTo: item.methodName },
"Tag": item.tag,
"Enabled": (type === "Section") ? { bindTo: "isAnySelected" } : true,
"Visible": { bindTo: "getPrintMenuItemVisible" }
}));
...чтобы метод проверки видимости всегда срабатывал. А в методе getPrintMenuItemVisible осуществлять проверку.
Андрей, огромной спасибо Вам!!!
Вы как "ангел-хранитель", как только проблема, вы сразу тут с ее решением!
На 10+ ))
Здравствуйте! Подскажите, пожалуйста, как реализовать функционал скрытия отчетов по условию в стандартной кнопке "Печать" в версии 7.5 ?
Также необходимо добавить в эту кнопку еще несколько отчетов excel.
Здравствуйте, Александр!
Для реализации скрытия должен подойти метод, описанный Андреем выше.
Илья, добрый день!
Я не нашел в PrintReportUtilities метода initPrintButtonMenu.
Также в добавлении элементов ниже не совсем понятно, откуда взять printMenuItems и item, а также type.
"Безродный Андрей" написал:"Enabled": (type === "Section") ? { bindTo: "isAnySelected" } : true,