СКД запрет вывод на печать и сохранение в файл
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2) (1) Ну вообще теоретически возможно. У табличного документа на форме отчета есть свойство "Вывод", которому можно присвоить значение "Запретить". Сделать это можно либо добавив свою форму отчета, либо определить обработчик ПриСозданииНаСервере в модуле объекта (при использовании БСП), и там изменить свойство программно.
(5) Должно.
Вывод (Output)
Использование:
Чтение и запись.
Описание:
Тип: ИспользованиеВывода.
Ограничение вывода на печать, сохранения, работы с буфером обмена.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент.
Изменение свойства на клиенте может потребовать обращения к серверу.
Примечание:
Может иметь значение, отличное от значения свойства Вывод документа, с которым это поле связано.
ПоказатьИспользование:
Чтение и запись.
Описание:
Тип: ИспользованиеВывода.
Ограничение вывода на печать, сохранения, работы с буфером обмена.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент.
Изменение свойства на клиенте может потребовать обращения к серверу.
Примечание:
Может иметь значение, отличное от значения свойства Вывод документа, с которым это поле связано.
(6) Пробовал вот так, не получается.
// Выводим результат в табличный документ
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
// Устанавливаем фиксацию в табличном документе
ДокументРезультат.ФиксацияСлева = 1;
ДокументРезультат.Вывод=ИспользованиеВывода.Запретить;
Показать
+ 7. Да, ДокументРезультат сидит в памяти и передается на форму.
Если отчет на БСП, то подозреваю, что необходимо будет "влезть" в общую БСП-форму отчетов СКД и там покостылить. В принципе в расширение кинуть модуль из этой формы и там запретить вывод.
Если отчет на БСП, то подозреваю, что необходимо будет "влезть" в общую БСП-форму отчетов СКД и там покостылить. В принципе в расширение кинуть модуль из этой формы и там запретить вывод.
(11)Всем спасибо. Добавил в расширение
Это я влез в общую форму. Тут конечно надо еще покрутить, потому что тогда запретит вывод всех отчетов. Выход либо здесь покрутить с точным указанием отчета для кого используется. Либо просто создать у отчета свою форму и в ней внести данный код.
&НаСервере
Процедура ПриСозданииНаСервереПосле(Отказ, СтандартнаяОбработка)
Элементы.ОтчетТабличныйДокумент.Вывод = ИспользованиеВывода.Запретить;
КонецПроцедуры
Это я влез в общую форму. Тут конечно надо еще покрутить, потому что тогда запретит вывод всех отчетов. Выход либо здесь покрутить с точным указанием отчета для кого используется. Либо просто создать у отчета свою форму и в ней внести данный код.
Зачем расширение, если это БСП? В модуле отчета:
Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт
Настройки.События.ПриСозданииНаСервере = Истина;
КонецПроцедуры
Процедура ПриСозданииНаСервере(Форма, Отказ, СтандартнаяОбработка) Экспорт
Форма.Элементы.ОтчетТабличныйДокумент.Вывод = ИспользованиеВывода.Запретить;
Форма.Элементы.ОтчетТабличныйДокумент.Защита = Истина;
ГруппаВывод = Форма.Элементы.Найти("ГруппаВывод");
Если ГруппаВывод <> Неопределено Тогда
ГруппаВывод.Видимость = Ложь;
КонецЕсли;
КонецПроцедуры
ПоказатьПрикрепленные файлы:
ПереопределениеПриСозданииНаСервере.erf
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот