Макеты (сб). Периодические регистры сведений

  • doc
  • 29.04.2020
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала 95. Практическая работа по теме Макеты (сб). Периодические регистры сведений.doc

Лабораторная работа №4

Тема: Макеты (сб). Периодические регистры сведений.

Цель: формирование умений создания и редактирования отчетов

Время выполнения: 8 часов

Теоретический материал

В этой практической работе Вы познакомитесь с новым объектом - Макет. Узнаете о его назначении и создадите макет документа, на основе которого будет создаваться печатная форма документа.

Макет предназначен для хранения различных форм представления данных, различных данных. Может содержать табличный или текстовый документ, двоичные данные, НТМ 1-документ, графическую или географическую схему, схему компоновки данных или макет оформления этой схемы.

Задания:

1 Создание макета

Создадим печатную форму документа ОказаниеУслуги. Откройте в конфигураторе окно редактирования объекта Документ ОказаниеУслуги. Перейдите на вкладку Макеты и запустите конструктор печати.

На первом шаге ничего менять не будем, нажмите Далее. На втором шаге перенесите все реквизиты документа из левой части в правую - они будут отображены в шапке печатной формы. Нажмите Далее. Также перенесите все реквизиты в табличную часть. На четвертом шаге ничего не переносите - подвал (нижняя часть формы) использовать не будем, нажмите Далее. Нажмите ОК.

Откроется модуль команды Печать, модуль менеджера документа ОказаниеУслуги и макет этого документа (см. рисунок 36).

Рисунок 36 - Окно создания и редактирования макета

Таким образом, конструктор создал:

-                Макет печатной формы документа ОказаниеУслуги с именем Печать

-                Команду документа ОказаниеУслуги с именем Печать. В модуль этой команды помещен обработчик, вызывающий процедуру печати документа, выполняющуюся на сервере. Сама процедура печати помещена в модуль менеджера документа.

-                В командную панель формы документа ОказаниеУслуги помещена команда Печать для формирования печатной формы документа. При этом команда Печать принадлежит всему документу, а не одной его форме, поэтому может использоваться в любой его форме.

Запустите 1С: Предприятие в режиме отладки и откройте документ Оказание услуги №1. Нажмите на появившуюся кнопку Печать (см. рисунок 37).

Откроется печатная форма документа. Единственное, чего в ней не хватает - итоговой суммы документа (см. рисунок 38).

 

Рисунок 37 - Документ в режиме отладки с кнопкой печати

Рисунок 38 - Вид печатной формы документа

2 Редактирование макета

Вернитесь в конфигуратор. Добавим итоговую сумму в печатную форму.

Раскройте дерево документа ОказаниеУслуги и дважды щелкните на макете Печать (Если закрыли перед этим).

Макет документа состоит из именованных областей, которые в определенном порядке выводятся на печать. Именованные области слева созданы конструктором, но Вы можете сами создавать или удалять области, переименовывать их и т.д.

Добавим новую область для вывода итоговой суммы документа. Выделите мышью две пустые строки под табличной частью документа и выполните Таблица - Имена - Назначить имя. Назовите область Всего и нажмите ОК (см. рисунок 39).

Рисунок 39 – Процесс создания новой области в макете

Слева появилась новая область Всего. Но ширина области Всего не совпадает с остальными, изменим её. Выделите две строчки созданной области Всего, потяните мышью в заголовке таблицы за правую границу колонки 2 так, чтобы её ширина совпала с шириной колонки № в шапке документа. Согласитесь, когда платформа предложит создать новый формат строк. Теперь сделайте такое же изменение ширины для колонок 3,4, 5, 6, чтобы они соответствовали колонкам в шапке.

В созданной области во второй строчке колонки Цена напишите ВСЕГО:, а в колонке Сумма напишите ВсегоПоДокументу (см. рисунок 40).

Рисунок 40 - Окно редактора макета с новой областью

Проконтролировать вид печатной Формы можно с помощью кнопки предварительного просмотра (см. рисунок 41).

Выделите ячейку, где Вы записали ВсегоПоДокументу, вызовите контекстное меню - Свойства. В свойстве Заполнение укажите, что в этой ячейке будет находиться не текст, а параметр. Подробнее об этом выборе.

Надпись: Рисунок 41 - Окно свойства ячейкиТекст, содержащийся в ячейке, будет показан на экране.

Параметр будет заменен некоторым значение, которое может быть присвоено ему средствами встроенного языка. Текст, содержащийся в ячейке, является именем этого параметра.

Шаблон - текстовая строка, в определенные места которой будут вставлены значения параметров.

Откройте модуль менеджера документа ОказаниеУслуги.

Для этого перейдите на закладку Прочее окна редактирования объекта ОказаниеУслуги и нажмите кнопку Модуль менеджера (или закройте макет, менеджер должен быть открыт под ним).

 

Перед Вами часть процедуры печати, выделенные жирным строчки - новые.

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

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

ОбластьПереченьНоменклатурыШапка=Макет.Получить |Область("ПереченьНоменклатурыШапка");

ОбластьПереченьНоменклатуры=Макет.ПолучитьОбласть |("ПереченьНоменклатуры");

ОбластьИтог = Макет.ПолучитьОбласть("Всего");

ТабДок.Очистить();

 

ВставлятьРазделительСтраниц = Ложь;

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

Если ВставлятьРазделительСтраниц Тогда

ТабДок.ВывестиГоризонтальныйРазделитель |Страниц();

КонецЕсли;

ТабДок.Вывести(ОбластьЗаголовок);

Шапка.Параметры.Заполнить(Выборка);

ТабДок.Вывести(Шапка, Выборка.Уровень());

ТабДок.Вывести(ОбластьПереченьНоменклатуры Шапка);

Выборка ПереченьНоменклатуры = |Выборка.ПереченьНоменклатуры.Выбрать();

Сумма Итог = 0;

Пока ВыборкаПереченьНоменклатуры.Следующий() Цикл

ОбластьПереченьНоменклатуры.Параметры.Заполнить |(Выборка ПереченьНоменклатуры);

ТабДок.Вывести(ОбластьПереченьНоменклатуры, |Выборка Перечень Номенклатуры.Уровень());

СуммаИтог= СуммаИтог + ВыборкаПеречень |Номенклатуры.Сумма;

КонецЦикла;

ОбластьИтог.Параметры.ВсегоПоДокументу = |СуммаИтог;

ТабДок.Вывести(ОбластьИтог);

ВставлятьРазделительСтраниц = Истина;

КонецЦикла

 

Запустите 1С: Предприятие и посмотрите форму печати документа Оказание услуги №1 (см. рисунок 42).

Рисунок 42 - Форма печати документа

А теперь, чтобы документ ОказаниеУслуги выглядел законченным, добавим итоговую сумму по документу и на экранную форму, чтобы пользователь мог видеть её в процессе заполнения табличной части документа.

Редактирование формы

Вернитесь в конфигуратор. Удобно, если в процессе создания документа можно было оперативно, не печатая его, знать итоговую сумму по документу (как в Ехсе1). Для этого внесем небольшие изменения в форму документа ОказаниеУслуги.

Откройте в дереве объектов форму документа ОказаниеУслуги, дважды щелкнув по ней. В левом верхнем окне вызовите свойства пункта ПереченьНоменклатуры. Установите свойство Подвал, которое определяет наличие подвала (нижней части) у таблицы формы (см. рисунок 43).

Рисунок 43 - Создание подвала документа

Затем откройте свойства элемента формы ПереченьНоменклатурыЦена и установите (см. рисунок 44):

-                    Текст подвала - Всего:

-                    Горизонтальное положение - Право,

-                    Шрифт подвала - Жирный.

Рисунок 44 - Настройка подвала документа

Рисунок 45 - Свойства подвала

После этого откройте свойства элемента ПереченьНоменклатурыСумма, установите: Горизонтальное положение - Право, Шрифт – жирный (см. рисунок 45).

Для того, чтобы в подвале колонки Сумма отображался итог по ней, нажмите кнопку выбора свойств в поле ПутьКДаннымПодвала. Раскройте дерево реквизитов объекта и выберите элемент ИтогСумма (см. рисунок 46).

Нажмите ОК и запустите 1С:Предприятие в режиме отладки. Откройте документ Оказание услуги №1. Вы увидите, что по колонке Сумма в табличной части документа подсчитывается общий итог документа (см. рисунок 47).

Рисунок 46 - Окно выбора реквизита

Рисунок 47 - Окно документа с подвалом


 

Контрольные вопросы

1.            Для чего предназначен объект Макет?

2.            Что такое конструктор печати?

3.            Как создать макет с помощью конструктора печати?

4.            Как изменить макет документа?

5.            Какая разница в заполнении ячейки табличного документа между текстом, параметром и шаблоном?

6.            Как изменить внешний вид и поведение элемента формы? Как отобразить сумму по колонке таблицы?