Что такое печатная форма документа

ПЕЧА́ТНАЯ ФО́РМА

Том 26. Москва, 2014, стр. 145

Скопировать библиографическую ссылку:

ПЕЧА́ТНАЯ ФО́РМА, но­си­тель тек­сто­вой и/или изо­бра­зи­тель­ной ин­фор­ма­ции, со­дер­жа­щий пе­ча­таю­щие и про­бель­ные эле­мен­ты и слу­жа­щий для по­лу­че­ния от­тис­ков (от­пе­чат­ков, ко­пий и ре­про­дук­ций); пред­на­зна­че­на для пе­ча­та­ния крас­ка­ми, тис­не­ния на пла­стич­ных ма­те­риа­лах и др. Уча­ст­ки П. ф., пе­ре­но­ся­щие изо­бра­же­ние по­сред­ст­вом кра­ся­ще­го ве­ще­ст­ва и/или дав­ле­ни­ем на за­пе­ча­ты­вае­мую по­верх­ность, на­зы­ва­ют пе­ча­таю­щи­ми, а не пе­ре­но­ся­щие изо­бра­же­ние – про­бель­ны­ми. П. ф. мо­жет иметь разл. струк­ту­ру пе­ча­таю­щих эле­мен­тов: рель­еф­ную вы­пук­лую ( вы­со­кая пе­чать ); рель­еф­ную уг­луб­лён­ную ( глу­бо­кая пе­чать ); ле­жа­щую прак­ти­че­ски в од­ной плос­ко­сти ( пло­ская пе­чать ); в ви­де ды­ро­чек, ще­лей и от­вер­стий в тон­ких пло­ских ма­те­риа­лах ( тра­фа­рет­ная пе­чать ). Для из­го­тов­ле­ния П. ф. ис­поль­зу­ют ме­тал­лич. (ти­по­граф­ские спла­вы, ле­ги­ро­ван­ные цин­ком, алю­ми­ни­ем, медью, маг­ни­ем и др.) и не­ме­тал­лич. (дере­во, ли­то­граф­ский ка­мень, пла­ст­мас­сы, ре­зи­на, фо­то­по­ли­меры и др.) ма­те­риа­лы, ко­то­рые во мно­гом оп­ре­де­ля­ют тех­но­ло­гию пе­ча­ти (напр., в тех­ни­ке кси­ло­гра­фии ис­поль­зу­ют П. ф. из де­ре­ва). По гео­мет­рич. фор­ме П. ф. бы­ва­ют пло­ские (для пе­ча­та­ния на пло­ских, ли­то­граф­ских и ти­гель­ных пе­чат­ных ма­ши­нах, а так­же на плос­ко­пе­чат­ных ма­ши­нах) и ци­лин­д­ри­че­ские (для пе­ча­та­ния на ро­та­ци­он­ных пе­чат­ных ма­ши­нах). Для тех­но­ло­гий циф­ро­вой пе­ча­ти П. ф. – пе­ре­мен­ная, для ана­ло­го­вых – по­сто­ян­ная. Раз­ли­ча­ют тек­сто­вые, ил­лю­ст­ра­ци­он­ные и сме­шан­ные (вклю­чаю­щие тек­сто­вые и ил­лю­ст­ра­ци­он­ные эле­мен­ты) П. ф.; по сте­пе­ни точ­но­сти вос­про­из­ве­де­ния ори­ги­на­ла – фак­си­миль­ные и не­фак­си­миль­ные.

Источник

Что такое печатная форма документа

Как известно – без бумажки ты.. не может обойтись ни один серьезный бизнес. И когда мы говорим, что в 1С есть какие-то там электронные документы, то сразу же возникает вопрос как их распечатать в бумажном виде.

Процесс печати электронного документа 1С называется печатная форма 1С.

У каждого документа может быть несколько печатных форм 1С. Например, документ Реализация товаров и услуг (т.е. продажа) печатается в печатные формы 1С: ТОРГ-12, Накладная, Товарно-транспортная накладная, Акт оказанных услуг и так далее.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Суть печатной формы 1С – это шаблон (типа документа Excel), в котором заданы переменные. При процессе печати вместо переменных подставляется текст из электронного документа. Шаблон обычно хранится в конфигурации.

Проблема изменения типовой печатной формы 1С в том, что обычно типовую конфигурацию не желательно изменять, иначе будет сложнее обновляться. Поэтому появились начали изобретать велосипед различные методики использования внешних печатных форм 1С.

Внешняя печатная форма 1С – это шаблон печати, который хранится как то отдельно от самой конфигурации.

Однако это все теория. А как создать самому печатную форму? А еще лучше – как внести изменения в существующую?

Кому интересен ответ – читайте дальше.

Как печатается документ 1С

Чтобы распечатать любой документ 1С (который может быть распечатан) – нужно в документе нажать кнопку Печать. 1С предложит выбрать печатную форму 1С для этого документа из списка.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Слева от кнопки Печать обычно находится кнопка быстрого доступа к последней выбранной печатной форме 1С.

Результат печати выглядит вот так. Чтобы распечатать его на принтер, нужно поставить курсор в печатную форму 1С, нажать Ctrl+P или кнопку с принтером на панели кнопок или в меню Файл/Печать.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Настройки печати (поля, ориентация листа и т.п.) расположены в меню Файл/Параметры страницы. Также в настройках пользователя можно сделать, чтобы печать производилась сразу на принтер.

Откуда берется эта печатная форма?

Где находится печатная форма 1С

Зайдем в конфигуратор. Найдем в окне конфигурации нужный документ. Раскроем его ветку Макеты. Именно они и превращаются в печатную форму 1С при печати.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Однако маловато будет – нам предлагали выбрать гораздо больше вариантов при печати. Дело в том, что множество макетов печатных форм 1С спрятано в другом месте.

Вернемся вверх окна конфигурации 1С. Откроем ветку Общие, а потом ветку Общие макеты. Именно здесь и находится большинство макетов. Особенно это касается регламентированных государством печатных форм 1С – ТОРГ 12, Счет фактура и т.п.

Кстати не сложно заметить, что макетов ТОРГ12 или СчетФактуры Вы увидите несколько. Почему? Это легко объяснить. Законы и требования периодически меняются. Но мы не можем просто изменить один и тот же макет – а если придется распечатать документ от даты, которая находится ранее даты изменения. Поэтому делается несколько макетов и в зависимости от даты документа используется правильный.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Но и это не все! Есть же еще внешние макеты. Где же хранятся они?

Вернемся в режим 1С Предприятие. Через меню пользователя с административными правами Операции/Справочники, выберем справочник Внешние обработки.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

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

Для того, чтобы это заработало – Вы должны сделать внешнюю обработку, которая имеет в своем модуле объекта процедуру Печать() с пометкой Экспорт, которая организует процесс печати.
Но мы забегаем вперед. Давайте сначала посмотрим как организован макет печатной формы 1С.

Макет печатной формы 1С

Макет печатной формы 1С выглядит следующим образом.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Как Вы видите – он поделен на блоки. Блоки могут быть горизонтальные (имя слева) и вертикальные (имя вверху).

Сам макет в том виде какой он есть – не печатается. Печатаются отдельные блоки. Программист в процедуре обработки печати указывает порядок блоков и количество повторений каждого блока. В результате складывается печатная форма.

Для того, чтобы назначить область – выделите несколько строк (или несколько колонок) и выберите в меню Таблица/Имена/Назначить имя. Чтобы убрать – там же есть команда Убрать имя.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

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

Однако по умолчанию названия произвольных ячеек не отображаются. Чтобы увидеть их – выберите пункт меню Таблица/Имена/Отображать именованные ячейки.

Итак, сегодня мы узнали, что печатная форма 1С формируется с помощью макета. Макет состоит из блоков – по умному – именуемых областей.

Типовые (обычно используемые) блоки для печатной формы:

Теперь нам нужно разобраться с тем, как происходит печать макета 1С?

Источник

Что такое внешние печатные формы в 1С и для чего они нужны

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

Пример использования.

Очень часто возникает ситуация, когда печатных форм созданных разработчиками конфигурации оказывается недостаточно. Представим себе такую ситуацию: у организации при реализации продукции, существует дополнительный регламент, требующий при отгрузке вместе с формой Торг-12 и УПД печатать еще Акт сборки. При этом все необходимые данные для заполнения этого акта, в документе присутствуют. Таким образом, для печати этого бланка, достаточно сделать внешнюю печатную форму. Причем менять конфигурацию не потребуется. Отметим, что создание новой или модификация текущей печатной формы документов и справочников является весьма распространенной задачей при использовании типовых конфигураций.

Формальное определение.

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

Иначе говоря, такая печатная форма – это внешний модуль, который разрабатывается на языке программирования 1С в виде отдельного файла. Он не хранится в конфигурации и существует независимо от нее. При этом изменения в конфигурацию не вносятся и наличие внешних форм не влияет на последующие обновления.

Хранится такая форма непосредственно внутри базы в специальном справочнике и может быть заменена новой версией или отключена пользователем в любой момент непосредственно в программе.

Разработка внешних печатных форм

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

Можно ли обойтись без ВПФ при мелких правках макета

В ситуациях, когда необходимо исправить существующий макет, например, добавить дополнительные условия с шапку счета на оплату — можно обойтись без внешних форм. В 1С предоставлена возможность исправления существующего макета. Однако, в пользовательском режиме доступны лишь небольшие изменения имеющихся макетов печатных форм.

Расширения конфигурации — альтернатива внешним формам.

В качестве альтернативы также используются расширения конфигурации. Механизм расширений предоставляет на порядок больше возможностей для тонкой настройки как самой печати так и печатных форм. Расширения лишены многих ограничений вшенших файлов и разрабатывать их проще, чем внешние формы. Недостатком расширений является то, что их нельзя использовать в базовых версиях конфигураций.

Заключение.

Подводя итоги, отметим основные достоинства и недостатки внешних печатных форм.

Подписывайтесь на наши группы в социальных сетях, чтобы не пропустить новые публикации.

Поделитесь ссылкой, если Вам понравилась эта статья.

Источник

Создание печатных форм в 1С 8.2 и 8.3 с помощью конструктора

Рассмотрим настройку и создание новых печатных форм в системе 1С 8.3.

Создание внешних печатных форм для управляемого приложения рассмотрено в отдельной статье.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Самый простой способ создания печатной формы — с помощью встроенного конструктора печатных форм. Рассмотрим пошаговую инструкцию по созданию и настройке печатной формы на примере создания печатной формы «Счет покупателю».

Создание и настройка печатной формы 1С 8.3

Первый шаг — необходимо зайти в палитру свойств нужного нам документа и выбрать Действия — Конструкторы — Конструктор печати:

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Первый вопрос системы — выбор варианта работы конструктора. Настройки аналогичны, если у Вас конфигурация работает в управляемом режиме — выберите его, если нет — выберите обычные формы. Мы рассмотрим создание на обычной форме.

Следующий шаг — выбор названия процедуры для печати. Назовём её «Печать счета».

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

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

После выбора реквизитов шапки печатной формы 1С 8.2 следует сделать выбор данных для табличной части:

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Когда и этот шаг сделан, нужно выбрать реквизиты подвала аналогично реквизитам в шапке.

На последней странице можно оставить всё по умолчанию и нажать ОК:

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Что получаем в итоге?

Правильно оформленный макет печатной формы:

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Процедура, полностью формирующая печатную форму документа:

Которые можно настроить в 1С 8.2, как нужно нам.

Вывод вызова созданной печатной формы 1С

Для вызова созданной печатной формы нужно просто разместить кнопку на форму документа. Это сделать очень просто. Для начала создадим кнопку на форме, назовем её «Печать счета»:

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Нажимаем на кнопку «лупы» у действия — мы попадем в модуль формы, где вписываем вызов процедуры печати вновь созданного счета:

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Где «ПечатьСчета» — имя нашей процедуры.

Созданная и настроенная печатная форма выглядит так:

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Другие статьи по 1С:

В дополнение — наш видеоурок по созданию внешних печатных форм и подключению их на примере конфигурации 1С Бухгалтерии:

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Источник

Создание печатной формы 1С 8 пошаговая инструкция

В этой статье подробно будет рассказано, как новичку, плохо знающему 1С 8 создать печатную форму. Для примера возьмем одну из самых распространенных конфигураций 1С 8 — Бухгалтерию 2.0. Создание печатной формы 1С этапы написания:

Создание печатной формы 1С. Постановка задачи

От нас требуется в конфигурации Бухгалтерия 2.0 создать печатную форму к документу Поступление товаров и услуг. В шапке печатной формы вывести следующие данные:

В виде таблицы вывести данные табличной части Товары документа. Таблица должна включать в себя следующие колонки:

Файл внешней обработки

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

В открывшемся окошке выберем пункт Внешняя обработка.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Далее в поле Имя необходимо вписать название внешней обработки. В нашем случае назовем ее просто: «ПечатнаяФорма», поле синоним при этом заполнится автоматически. Обратите внимание, что в поле Имя, внешней обработки, следует писать название без пробелов и знаков препинания.

Добавим реквизит внешней обработки СсылкаНаОбъект и выберем для него тип ДокументСсылка.ПоступлениеТоваровУслуг. Для этого в дереве метаданных внешней обработки 1С выделим пункт Реквизиты и нажмем кнопку Добавить (кнопка с зеленым плюсом). В правой части экрана откроется окно свойств реквизита, в поле Имя впишем — СсылкаНаОбъект. В поле Тип нажмем кнопку с тремя точками.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

В дереве типов раскроем ветку ДокументСсылка, и найдем там элемент ПоступлениеТоваровУслуг, поставим напротив него галочку и нажмем ОК.

Создание макета печатной формы

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

В дереве метаданных внешней обработки добавим новый макет, в окне конструктора макета ничего менять не будем и нажмем кнопку Готово.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Добавление шапки макета

В первую очередь создадим область Шапка, в нее будут выводится данные для заголовка печатной формы. Для данной области нам потребуется семь строк макета. Выделим их и, как я уже писал выше, нажмем сочетание клавиш Ctrl + Shift + N, в поле Имя напишем «Шапка» и нажмем кнопку ОК.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Заполним область макета нужными нам данными. Обычно ни одна печатная форма не обходится без заголовка, поэтому создадим его и в нашей шапке макета. Так как в заголовке помимо названия печатной формы мы будем выводить еще и номер документа из которого она была напечатана, то текст заголовка в макете мы зададим параметром. Параметр макета — это специально обозначенная ячейка макета, в которую при помощи встроенного языка 1С 8 можно выводить различные данные. Заголовок должен выводится на всю ширину печатной формы, поэтому определимся сколько ячеек макета нам будет достаточно для печати на стандартной альбомной ориентации листа.

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

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

После текста заголовка выведем в область Шапка данные о организации, контрагенте, договоре контрагента и дате поступления товара. Так как все эти данные также берутся из документа, также оформим их параметрами. Кроме того перед каждым параметром следует написать поясняющий текст, что бы пользователь легко понял, где организация, а где контрагент и т.д. Все эти действия подобны созданию заголовка поэтому не буду подробно на них останавливаться, приведу лишь рисунок с тем, что должно получиться в итоге.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

На рисунке видно, как отличаются параметры макета, от обычного текста.

Добавление шапки таблицы макета

Последнее, что нам необходимо создать в данной области макета — это шапка таблицы, в которую будут выводится данные табличной части Товары. Колонки необходимые для таблицы были описаны в разделе «Постановка задачи». Шапку таблицы также создадим используя объединение ячеек и написания текста (названий колонок). Границы шапки таблицы выделим при помощи инструмента Рамка, который расположен на панели форматирования макета.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Добавление таблицы в макет

Создадим в макете еще одну область — Данные. В нее будет выводится таблица данных табличной части Товары. Для данной области нам понадобится только одна строка макета. Чтобы вывести все строки табличной части в печатную форму мы будем заполнять и выводить данную область нужное количество раз. Колонки в области Данные должны совпадать с колонками шапки таблицы, поэтому заполнить ее не составит труда. Единственное отличие — в области Данные нам нужны параметры, а не просто текст. Также заметьте, что по умолчанию числовые параметры форматируются по правому краю, а текстовые по левому. Для выделения колонок, также необходимо использовать инструмент Рамка.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Добавление подвала в макет

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

В итоге должен получиться макет следующего вида:

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Создание печатной формы 1С. Программирование

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

В модуле объекта внешней печатной формы необходимо создать экспортную функцию Печать().

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

Инициализация основных переменных

Создадим переменную ТабДок, в которой будет содержаться табличный документ — именно он и есть печатная форма, в которую мы будем выводить заполненные области макета.

В переменную Макет получим созданный нами макет печатной формы. Для этого используем встроенную функцию ПолучитьМакет( ).

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

Вывод шапки печатной формы в табличный документ

Все необходимые переменные инициализированы. Приступим к заполнению и выводу областей макета в табличный документ. В первую очередь заполним заголовок печатной формы, для этого нам необходимо передать в параметр ТекстЗаголовка, который мы создали в макете, нужный нам текст. Для заполнения значений параметров у области макета существует специальная коллекция, которая так и называется — Параметры. Из которой через «.» можно получить любой параметр. В текст заголовка передадим текст: «Печатная форма», а также номер документа.

Остальные параметры шапки заполним подобным образом, все необходимые для них значения получим из реквизита СсылкаНаОбъект, в котором содержится ссылка на печатаемый документ.

Все параметры шапки заполнены, выведем ее в созданный нами табличный документ, для этого используем метод Вывести( ).

Написание запроса для печатной форы

Займемся заполнением и выводом области Данные. Создание печатной формы 1С подразумевает и написание запроса, нам он необходим для получения данных табличной части Товары и цен Номенклатуры на текущую дату будем использовать Запрос. Язык запросов 1С 8 похож на SQL, а точнее практически копирует возможности его оператора SELECT, но при этом весь запрос пишется на русском языке. Поэтому если вы хотя бы отдаленно знакомы с SQL, то и язык запросов 1С 8 поймете легко.

В данной печатной форме запрос будет довольно простым и многие скажут, что можно было бы обойтись и без него, но знание языка запросов и умение его грамотно использовать — одно из главных умений программиста 1С. Запросы позволяют используя меньшие ресурсы получать сложнейшие выборки данных, а также в тексте запроса намного легче разобраться, чем в программном коде написанном без использования запроса (или с минимальным его использованием). К тому же, в 1С 8 есть очень хороший конструктор запросов, позволяющий в интерактивном режиме собирать запрос из нужных таблиц.

Создадим переменную, которая будет содержать в себе запрос.

Текст запроса будем составлять при помощи конструктора запросов. Для начала напишем:

Поставим курсор мышки между кавычками, нажмем правую кнопку мыши. В открывшемся контекстном меню выберем пункт Конструктор запроса, он очень поможет нам в создании печатной формы 1С. После этого откроется окно конструктора запроса, оно содержит много вкладок, но для нашего запроса понадобятся только четыре: «Таблицы и поля», «Связи», «Условия», «Объединения / Псевдонимы».

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Для нашего запроса нам понадобятся две таблицы: табличная часть Товары документа Поступление товаров и услуг и срез последних на текущую дату регистра сведений Цены номенклатуры.

В левой части окна конструктора найдем столбец База данных. В нем находится дерево всех объектов метаданных, найдем нужные нам. Для этого раскроем ветку Документы и отыщем документ ПоступлениеТоваровУслуг, раскроем его и найдем табличную часть Товары, перетащим ее в столбец конструктора запросов Таблицы. Перетащить можно тремя способами: собственно перетаскиванием, двойным щелчком по таблице или выделив ее и нажав кнопку «>». Раскроем ветку РегистрыСведений и найдем там таблицу ЦеныНоменклатуры.СрезПоследних, также перетащим ее в столбец Таблицы. Этих двух таблиц достаточно для нашего запроса.

Выберем нужные нам поля из полученных таблиц. Для этого в столбце Таблицы раскроем таблицу ПоступлениеТоваровУслугТовары и найдем поля: Номенклатура, Сумма, Цена, Количество и перетащим их в третий столбец конструктора — Поля. Раскроем таблицу ЦеныНоменклатурыСрезПоследних, найдем поле Цена и тоже перетащим его в Поля.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Структура таблиц и полей нашего запроса готова, теперь займемся условиями. Нам необходимо чтобы данные табличной части Товары брались не из всех поступлений, а только из того, которое мы печатаем. Для этого наложим условие на таблицу ПоступлениеТоваровУслугТовары. Перейдем на закладку «Условия» конструктора запросов. В колонке Поля расположены выбранные нами ранее таблицы, для условия нам понадобится поле Ссылка из таблицы ПоступлениеТоваровУслугТовары, перетащим его в окно Условия.

В запросах 1С можно использовать параметры, они нужны для того чтобы передавать в запрос данные. Например, если мы хотим ограничить выборку документов каким то конкретным документом, то можно при помощи параметра передать в запрос ссылку на этот документ и использовать данный параметр в условии. Именно так мы и поступим в нашем запросе.

После того, как в окно Условия мы добавили поле Ссылка, конструктор запросов сам создаст параметр с аналогичным названием и расположит его после знака «=». Данный параметр можно переименовать, если есть желание. В тексте запроса параметры помечаются знаком «&», но в данном случае этого делать не нужно, так как подразумевается, что во второй части условия стоит параметр, это просто надо запомнить. О том как передать значение в параметр запроса 1С будет рассказано ниже.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Так как в запросе мы используем не полную таблицу цен номенклатуры, а виртуальную (срез последних в данном случае), то нам необходимо задать условия формирования этой виртуальной таблицы, в нашем случае это дата среза и условие на тип цен (должны выбираться цены имеющие строго определенный тип цен — тот который задан в документе поступления, который мы выводим на печать).

Для заполнения параметров виртуальной таблицы перейдем на закладку Таблицы и поля конструктора запроса, в колонке Таблицы выделим таблицу ЦеныНоменклатурыСрезПоследних и нажмем кнопку Параметры виртуальной таблицы, расположенную вверху. В открывшемся окне, в поле Период следует задать параметр, в который будет передаваться дата, на которую будет делаться срез цен. В нашем случае это будет текущая дата (то есть сегодня), поэтому и параметр назовем «&ТекущаяДата». В поле условия напишем условия на тип цен, его мы тоже передадим в параметре, который назовем «&ТипЦен». Получившееся условие будет выглядеть следующим образом (где ТипЦен — измерение регистра Цены номенклатуры):

Параметры виртуальной таблицы заполнены, нажмем кнопку ОК.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Теперь, когда мы ограничили выборку только нужным нам документом, создадим связи между таблицами запроса. Если этого не сделать, то цены из таблицы ЦеныНоменклатурыСрезПоследних не будут связаны с номенклатурой из поступления. Перейдем на вкладку Связи конструктора запросов. Создадим связь по полю Номенклатура между двумя нашими таблицами. Для этого нажмем кнопку Добавить, в поле Таблица 1 выберем таблицу ПоступлениеТоваровУслугТовары, а в поле Таблица 2 — ЦеныНоменклатурыСрезПоследних. В условиях связи выберем поля Номенклатура из обоих таблиц.

Также следует заметить, что в выборке запроса нам необходимо получить все строки из табчасти Товары и цены только в том случае, если таковые имеются на текущую дату по типу цен документа. Таким образом данные табчасти Товары являются обязательными, а данные среза цен нет. Поэтому в связях между этими таблицами необходимо использовать так называемое ЛЕВОЕ СОЕДИНЕНИЕ, причем левой (или обязательной) таблицей будет ПоступлениеТоваровУслугТовары, а правой (или необязательной) ЦеныНоменклатурыСрезПоследних. Для того чтобы левое соединение таблиц запроса заработало так как я описал выше необходимо поставить галочку Все после поля Таблица 1.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Запрос практически готов, осталось только немного поработать над псевдонимами полей. Перейдем на закладку Объединения / Псевдонимы и зададим псевдоним для поля ЦеныНоменклатурыСрезПоследних.Цена. Имя псевдонима будет — ЦенаНаСегодня, нужен он для того чтобы имена полей выборки запроса и имена параметров в макете печатной формы совпадали.

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

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

Выполнение запроса

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

Заполнение таблицы печатной формы

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

Именно в этом цикле мы будем заполнять и выводить область макета Данные. Но для начала инициализируем две переменные числового типа. В них будем собирать итоги по количеству и сумме, которые нам необходимо вывести в область Подвал.

Вывод подвала печатной формы в табличный документ

Осталось заполнить и вывести последнюю область макета — Подвал. Данные для заполнения мы уже подготовили, заполнение и вывод осуществляем по той же схеме.

Табличный документ полностью заполнен, осталось вывести его на экран, чтобы пользователь мог посмотреть печатную форму и при необходимости распечатать. Но в типовых конфигурациях 1С 8 за вывод внешних печатных форм отвечают процедуры специальных модулей. Поэтому достаточно вернуть из функции Печать() заполненный табличный документ.

На этом этап программирования закончен и создание печатной формы 1с практически завершено. Полный текст функции Печать() здесь приводить не буду, можете посмотреть его в файле печатной формы, скачать который можно внизу статьи.

Создание печатной формы 1С. Параметры авторегистрации

При подключении внешней печатной формы к базе система автоматически не определяет для какого именно документа или справочника предназначена печатная форма, выбирать его приходится вручную. А если писал печатную форму другой человек, а вам поручено только подключить ее, то выбор может стать неоднозначным. Для того чтобы избежать таких проблем, во всех внешних печатных формах необходимо создавать макет с параметрами авторегистрации. Если он создан и правильно оформлен, то система автоматически определяет, какому документу или справочнику предназначена печатная форма.

Делается он следующим образом:

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

Подключение к базе внешней печатной формы

Что такое печатная форма документа. Смотреть фото Что такое печатная форма документа. Смотреть картинку Что такое печатная форма документа. Картинка про Что такое печатная форма документа. Фото Что такое печатная форма документа

После этого внешняя печатная форма будет доступна в меню Печать документа Поступление товаров и услуг. Создание печатной формы 1С на этом можно считать завершенным.

Скачать внешнюю печатную форму рассмотренную в статье: Внешняя печатная форма

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *