Макеты, редактирование макетов, создание печатной формы макета
Цель работы
1.1 Научиться работать с макетами
1.2 Научиться редактировать печатную форму объекта конфигурации «Макет»
Краткие теоретические сведения
Объект конфигурации «Макет» предназначен для хранения различных форм представления данных, которые могут потребоваться каким-либо объектам конфигурации или всему прикладному решению в целом. «Макет» может содержать табличный или текстовый документ, двоичные данные, HTML-документ или Active Document, графическую или географическую схему, схему компоновки данных или макет оформления схемы компоновки данных. Макеты могут существовать как сами по себе (общие макеты), так и быть подчинены какому-либо объекту конфигурации.
Одно из предназначений макета, подчиненного объекту конфигурации и содержащего табличный документ, – создание печатной формы этого объекта.
Создание печатной формы заключается в конструировании ее составных частей – именованных областей, из которых затем «собирается» готовая печатная форма. Порядок заполнения областей данными и порядок вывода их в итоговую форму описывается при помощи встроенного языка.
Печатная форма может включать в себя различные графические объекты: картинки, OLE-объекты, диаграммы и т.д.
Помимо создания макета «вручную», конфигуратор предоставляет разработчику возможность воспользоваться специальным инструментом – конструктором печати, который берет на себя большинство рутинной работы по созданию макета. Каждая ячейка редактируемого нами табличного документа может содержать либо текст, либо некоторый параметр, либо шаблон.
Текст, содержащийся в ячейке, будет показан на экране.
Параметр будет заменен некоторым значением, которое может быть присвоено ему средствами встроенного языка. Текст, содержащийся в ячейке, является именем этого параметра.
Шаблон представляет собой текстовую строку, в определенные места которой будут вставлены значения параметров.
Задание
Создать макет документа «ОказаниеУслуги». Сконструировать печатную форму макета «ОказаниеУслуги».
Ход работы
4.1 Создание макета документа «Оказание услуги»
Открыть в конфигураторе окно редактирования объекта конфигурации «Документ» - «ОказаниеУслуги». Перейти на закладку «Макеты» и запустить конструктор печати.
Рисунок 1 – Запуск конструктора печати
На первом шаге указать, что новая процедура, которая будет создана конструктором для формирования печатной формы документа, будет располагаться в модуле формы.
Рисунок 2 – Первый шаг создания макета печати
На втором шаге нажатием двойной стрелки определить, что все реквизиты документа будут отображены в шапке печатной формы.
Рисунок 3 – Второй шаг создания макета печати
На третьем шаге аналогично определить, что все реквизиты табличной части документа будут отображены в печатной форме.
Рисунок 4 – Третий шаг создания макета печати
На четвертом шаге конструктор предложит сформировать подвал (нижнюю часть) печатной формы. В данном случае подвал использоваться не будет.
Рисунок 5 – Четвертый шаг создания макета печати
В пятом шаге указать, что конструктор должен вставить новую кнопку в форму документа для вызова процедуры формирования печатной формы, и нажать «OK».
Рисунок 6 – Последний шаг создания макета печати
В конфигураторе откроется форма документа и его макет.
Рисунок 7 – Макет печати документа
4.2 Редактирование макета документа «Оказание услуги»
Добавить новую область для вывода итоговой суммы документа. Выделить мышью две пустые строки и выполнить команду «Таблица» - «Имена» - «Назначить имя». Присвоить области имя «Всего».
Рисунок 8 – Добавление области
В созданной области, в колонке «Цена», написать «Всего», а в колонке «Сумма» написать «ВсегоПоДокументу». Вызвав палитру свойств для последней заполненной ячейки, указать, что в этой ячейке будет находиться не текст, а параметр.
Рисунок 9 – Добавление параметра
Указать для ячейки в качестве заполнения «Параметр». Определить параметр области с именем «ВсегоПоДокументу», которому присвоить нужное значение при формировании печатной формы. Теперь открыть модуль формы документа «ОказаниеУслуги» - «ФормаДокумента». Найти в нем процедуру «Печать» и после цикла «Для Каждого ТекСтрокаПереченьНоменклатуры Из ПереченьНоменклатуры Цикл» добавить в нее следующие строки:
Область = Макет.ПолучитьОбласть("Всего");
Область.Параметры.ВсегоПоДокументу = ПереченьНоменклатуры.Итог("Сумма");
ТабДок.Вывести(Область);
Смысл добавленного фрагмента прост: получить новую область «Всего» (ту, которая была только что добавлена к макету). Затем параметру «ВсегоПоДокументу», находящемуся в этой области, присваивоить значение суммы табличной части документа по колонке «Сумма» (обращение к табличной части документа выполняется по имени – «ПереченьНоменклатуры»). В заключение вывести область в итоговый табличный документ, который будет показан на экране и распечатан пользователем.
Подобным образом, используя свойства ячеек макета и управляя порядком их вывода, разработчик имеет возможность создать печатную форму любого дизайна.
Для того чтобы документ «ОказаниеУслуги» выглядел законченным, добавить итоговую сумму по документу и на экранную форму, чтобы пользователь мог видеть ее в процессе заполнения табличной части документа.
Открыть в конфигураторе форму документа «ОказаниеУслуги» - «ФормаДокумента». Открыть палитру свойств для табличного поля, расположенного в форме, и установить свойство «Подвал», которое определяет наличие подвала у элемента управления «Табличное поле».
Рисунок 10 – Создание подвала в табличной части формы документа «ОказаниеУслуги»
Затем открыть свойства колонки «Цена» и установить «Текст подвала» – «Всего:», «Горизонтальное положение в подвале» – «Прижать вправо» и в шрифте подвала изменить начертание на «Жирный».
После этого открыть свойства колонки «Сумма», установить «Горизонтальное положение в подвале» – «Прижать вправо», установить флаг «Отображать итог в подвале» и в шрифте подвала тоже изменить начертание на «Жирный».
Рисунок 11 – Редактирование свойств ячейки
Для проверки запустить 1С:Предприятие в режиме отладки и посмотреть, как выглядит форма документа «Оказание услуги».
Рисунок 12 – Новая форма документа «ОказаниеУслуги»
Далее сформировать печатный макет нажатием кнопки «Печать».
Рисунок 12 – Сформированный печатный макет
Контрольные вопросы
5.1 Для чего нужен объект конфигурации «Макет»?
5.2 Что может включать в себя печатная форма?
5.3 Что такое шаблон?
5.4 В чем заключается создание печатной формы?
5.5 Какая разница в заполнении ячейки табличного документа текстом, параметром и шаблоном?
Содержание отчета
6.1 Название работы
6.2 Цель работы
6.3 Описание хода работы со снимками экрана
6.4 Ответы на контрольные вопросы
6.5 Выводы к работе
Список литературы
7.1 Радченко М. Г. 1С:Предприятие 8.1. Практическое пособие разработчика. Примеры и типовые приемы. – СПБ.: 1С-Паблишинг, 2008. – 512 с.
7.2 1С:Предприятие 8.1. Конфигурирование и администрирование. М: Фирма «1С», 2007. – 342 с.
Практическая работа №7