Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЦОО_ПОЭИС_Л5.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
393.73 Кб
Скачать

Замечание к выполнению лабораторной работы

Для обеспечения нестандартной расшифровки в отчете, вызываемой из формы списка справочника, необходимо:

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

  • в форму списка справочника ввести элемент управления - панель , накрывающую элементы управления, Тогда автоматически будет сформирована страница на панели, а все элементы управления будут перенесены на эту страницу. Имя страницы и панели - произвольно . Страница используется для изображения элементов справочника в форме списка.

Было:

  • на полученной панели добавить еще одну страницу для последующего вывода на нее отчета. Задать имя второй страницы (например, "Печать").

  • Для обеспечения вывода отчета на вторую страницу необходимо ввести в нее элемент управления - ПолеТабличногоДокумента и задать эму призвольное имя. В свойстве этого элемента управления "Обработка расшифровки" ввести имя процедуры-обработчика расшифровки. В некоторых случаях бывает затруднительно вы­делить поле табличного документа, чтобы обратиться к его свой­ствам. Обычно это делается щелчком мыши на границе элемента управления, но это невозможно, когда граница не видна, напри­мер, сливается с границей панели. В этом случае необходимо вы­делить любую ячейку и нажать клавишу ESC, после чего таблич­ный документ будет выделен. Затем нажмите Alt-Enter для редактирования его свойств.

Обработку расшифровок у ячейки можно отключить, если задать свойство ИспользованиеРасшифровки в значение «Без обработ­ки». Это же свойство позволяет распространить расшифровку ячейки на всю строку, если установить его в значение «Строка».

// Процедура вывода отчета на вторую страницу формы списка

Процедура ПечатьНажатие(Элемент)

ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;

ЭлементыФормы.Панель1.ТекущаяСтраница =

ЭлементыФормы.Панель1.Страницы["Печать"];

Макет = Справочники.ОсновныеСредства.ПолучитьМакет("Печать");

Макет.Параметры.Расшифровка = Истина;

Секция = Макет.ПолучитьОбласть("Заголовок");

ТабДок.Вывести(Секция);

Секция = Макет.ПолучитьОбласть("Шапка");

ТабДок.Вывести(Секция);

Выборка = Справочники.ОсновныеСредства.ВыбратьИерархически();

Пока Выборка.Следующий() = Истина Цикл

Объект = Выборка.ПолучитьОбъект();

Если Объект.ЭтоГруппа = Истина Тогда

Секция = Макет.ПолучитьОбласть("Группа");

Секция.Параметры.Код=Объект.Код;

Секция.Параметры.Наименование=Объект.Наименование;

Секция.Параметры.Расшифровка=Объект;

ТабДок.Вывести(Секция);

Иначе

Секция = Макет.ПолучитьОбласть("Элемент");

Секция.Параметры.Код=Объект.Код;

Секция.Параметры.Наименование=Объект.Наименование;

Секция.Параметры.Расшифровка=Объект;

ТабДок.Вывести(Секция);

КонецЕсли;

КонецЦикла;

ТабДок.ОтображатьЗаголовки = Ложь;

ТабДок.ОтображатьСетку = Ложь;

ТабДок.ТолькоПросмотр = Истина;

КонецПроцедуры

Конкретизирующий отчет (расшифровка) выводится в отдельное окно:

Процедура _ОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)

СтандартнаяОбработка=Ложь;

НовыйТабДок = Новый ТабличныйДокумент;

Макет = Справочники.ОсновныеСредства.ПолучитьМакет("Печать");

Макет.Параметры.Расшифровка = Истина;

Секция = Макет.ПолучитьОбласть("ШапкаРасшифровки");

НовыйТабДок.Вывести(Секция);

Для каждого Строка из Расшифровка.ОС Цикл

Секция = Макет.ПолучитьОбласть("ЭлементРасшифровки");

Секция.Параметры.Подразделение=Строка.Подразделение;

Секция.Параметры.ДатаПоявления=Строка.ДатаПоявленияВПодразделении;

Секция.Параметры.Расшифровка=Расшифровка;

НовыйТабДок.Вывести(Секция);

КонецЦикла;

НовыйТабДок.ОтображатьСетку = Ложь;

НовыйТабДок.Защита = Истина;

НовыйТабДок.ТолькоПросмотр = Истина;

НовыйТабДок.ОтображатьЗаголовки = Ложь;

НовыйТабДок.Показать();

КонецПроцедуры