как сохранить печатную форму как внешнюю печатную форму

Как из встроенной печатной формы 1С сделать внешнюю

Рассмотрим создание внешней печатной формы из встроенной на примере Торг 12 из типовой конфигурации 1С 8.2 Бухгалтерия 2.0.

Создадим новую внешнюю обработку, назовем ее Торг12Внешняя. Добавим реквизит СсылкаНаОбъект и присвоим ему тип ДокументСсылка.РеализацияТовароУслуг (Торг 12 печатается из реализации).

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

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

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

Так как нас интересует только Торг12, копируем строчку

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

Теперь найдем в модуле документа процедуру ПечатьТОРГ12() и скопируем ее в модуль печатной формы. Нажимаем Сохранить и видим, что не определена переменная мВалютаРегламентированногоУчета. Опишем ее в начале модуля:

и инициализируем в конце:

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

Получите понятные самоучители по 1С бесплатно:

Также нужно заменить обращения к текущему документу через конструкции Ссылка и ЭтотОбъект на СсылкаНаОбъект и СсылкаНаОбъект.ПолучитьОбъект() соответственно(стоит заметить, что конструкцию ЭтотОбъект.Ссылка следует заменять на СсылкаНаОбъект).

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

На этом создание внешней печатной формы из встроенной для 1с 8 завершено, вносим в нее нужные изменения и подключаем к документу.

Скачать что у нас получилось можно по ссылке.

Источник

Внешние печатные формы в 1С

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Обновим 1С с гарантией сохранности базы

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Поможем с 1С 24/7, без выходных

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Установим сервисы 1С бесплатно

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Оперативно решим любые задачи по 1С

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

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

Для примера возьмём печатную форму «Унифицированная форма №Т-61» или по-другому «Записка-расчет при прекращении (расторжении) трудового договора с работником (увольнении)». Будем использовать конфигурацию 1С Управление производственным предприятием.

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

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

Для создания новой обработки в 1С необходимо запустить 1С в режиме «Конфигуратор».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

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

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

По сути внешняя печатная форма – это внешняя обработка, предназначенная для формирования печатной формы, поэтому в появившемся окне выбираем вариант «Внешняя обработка» и нажимаем «ОК».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

В открывшемся окне новой обработки необходимо задать ей имя. Назовём нашу обработку «УвольнениеТ61», автоматически формируется синоним, который будет виден пользователям.

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Добавим реквизит «СсылкаНаОбъект» и укажем тип «ДокументСсылка.УвольнениеИзОрганизаций» т.к. мы собираемся подключать обработку именно к данному документу.

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Теперь необходимо создать форму для нашей обработки. Выбираем в списке «Формы» и нажимаем «Добавить».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

В появившемся окне формы выбираем параметры для формы нашей обработки. Тип формы установим «Форма обработки», проконтролируем флаг «Назначить форму основной». Можно задать форме имя, но мы оставим стандартное. В данном примере оно не играет никакой роли. Нажимаем «Далее».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

На данной вкладке установим флаг у реквизита «СсылкаНаОбъект» для того, чтобы он появился на форме, затем нажимаем «Готово».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Нажимаем правой кнопкой мыши на кнопку «Выполнить» и выбираем пункт «КнопкаВыполнитьНажатие».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

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

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Так же нам понадобятся две переменные «ВалютаРегламентированногоУчета» и «ВалютаУправленческогоУчёта».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

В модуле формы больше никакого кода писать не нужно. Следующим шагом создадим макет печатной формы. Выберем «Макет» и нажмём кнопку «Добавить»

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

В появившемся окне необходимо установить имя макета. Назовём макет «Т_61» и установим тип макета «Табличный документ».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Перед нами откроется окно пустого табличного документа, которое необходимо заполнить в соответствии с внешним видом «Унифицированной формы №Т-61». Опустим шаги по заполнению макета, покажем только конечный результат.

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

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

Код для заполнения макета необходимо расположить в «Модуле объекта». Для этого нажмём на кнопку «Действия» нашей обработки и выберем пункт «Открыть модуль объекта».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

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

Запрос = Новый Запрос;

// Установим параметры запроса

Если Режим = «ПоРеквизитамДокумента» Тогда

Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;

| УвольнениеИзОрганизаций.Номер КАК НомерДок,

| УвольнениеИзОрганизаций.Дата КАК ДатаДок,

| УвольнениеИзОрганизаций.Организация.НаименованиеПолное КАК НазваниеОрганизации,

| УвольнениеИзОрганизаций.Организация.КодПоОКПО КАК КодПоОКПО,

| ОтветственныеЛицаОрганизаций.Должность КАК ДолжностьРуководителя,

| ОтветственныеЛицаОрганизаций.НаименованиеОтветственногоЛица КАК ФИОРуководителя,

| Документ.УвольнениеИзОрганизаций КАК УвольнениеИзОрганизаций

| ЛЕВОЕ СОЕДИНЕНИЕ ВТДанныеОбОтветственномЛице КАК ОтветственныеЛицаОрганизаций

| ПО УвольнениеИзОрганизаций.Организация = ОтветственныеЛицаОрганизаций.СтруктурнаяЕдиница

ИначеЕсли Режим = «ПоТабличнойЧастиДокумента» Тогда

| ЕСТЬNULL(ФИОФизЛицСрезПоследних.Фамилия + «» «» + ФИОФизЛицСрезПоследних.Имя + «» «» + ФИОФизЛицСрезПоследних.Отчество, УвольнениеИзОрганизацииРаботники.Сотрудник.Наименование) КАК Работник,

| УвольнениеИзОрганизацииРаботники.Сотрудник.ДатаДоговора КАК ТрудовойДоговорДата,

| УвольнениеИзОрганизацииРаботники.Сотрудник.НомерДоговора КАК ТрудовойДоговорНомер,

| УвольнениеИзОрганизацииРаботники.НомерСтроки КАК НомерСтроки,

| УвольнениеИзОрганизацииРаботники.СтатьяТКРФ.Наименование КАК СтатьяТКРФ,

| УвольнениеИзОрганизацииРаботники.ОснованиеУвольнения КАК ОснованиеУвольнения,

| КОГДА Работники.ПериодЗавершения ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)

| КОНЕЦ КАК Подразделение,

| КОГДА Работники.ПериодЗавершения ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)

| КОНЕЦ КАК ОЦРВ_Подразделение,

| КОГДА Работники.ПериодЗавершения ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)

| КОНЕЦ КАК Должность,

| УвольнениеИзОрганизацииРаботники.Сотрудник.Код КАК ТабельныйНомер,

| УвольнениеИзОрганизацииРаботники.ДнейЧасовКомпенсацииУдержанияОтпуска КАК Компенс,

| Документ.УвольнениеИзОрганизаций.РаботникиОрганизации КАК УвольнениеИзОрганизацииРаботники

| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ

| СписокДат.Сотрудник КАК Сотрудник,

| РаботникиОрганизации.ПодразделениеОрганизации.Наименование КАК ПодразделениеОрганизации,

| РаботникиОрганизации.Должность.Наименование КАК Должность,

| РаботникиОрганизации.ПодразделениеОрганизацииЗавершения.Наименование КАК ПодразделениеОрганизацииЗавершения,

| РаботникиОрганизации.ОЦРВ_ПодразделениеОрганизации.Наименование КАК ОЦРВ_ПодразделениеОрганизации,

| РаботникиОрганизации.ОЦРВ_ПодразделениеОрганизацииЗавершения.Наименование КАК ОЦРВ_ПодразделениеОрганизацииЗавершения,

| РаботникиОрганизации.ДолжностьЗавершения.Наименование КАК ДолжностьЗавершения,

| РаботникиОрганизации.ПериодЗавершения КАК ПериодЗавершения

| РаботникиВнутри.Сотрудник КАК Сотрудник,

| МАКСИМУМ(РаботникиВнутри.Период) КАК ДатаПоследнегоИзменения

| РегистрСведений.РаботникиОрганизаций КАК РаботникиВнутри

| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.УвольнениеИзОрганизаций.РаботникиОрганизации КАК Док

| ПО РаботникиВнутри.Период 0 Тогда

ПредставлениеДатыДоговора = Формат(ВыборкаРаботники.ТрудовойДоговорДата, «ДЛФ=DD»);

ПредставлениеДатыУвольнения = Формат(ВыборкаРаботники.ДатаУвольнения, «ДЛФ=DD»);

Если ВыборкаРаботники.ПризнакКомпенсацииОтпуска = Истина Тогда

Функция Печать(КоличествоЭкземпляров = 1, НаПринтер = Ложь) Экспорт

// ОПЕРАТОРЫ ОСНОВНОЙ ПРОГРАММЫ

мДлинаСуток = 86400; // в секундах

мСведенияОВидахРасчета = Новый Соответствие;

Сохраняем нашу готовую печатную форму на диск и запускаем 1С в режиме «Предприятие».

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

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

В меню «Операции» выберем пункт «Справочник».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

В открывшемся окне выберем справочник «Внешние обработки».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

В данном справочнике хранятся все внешние обработки, внешние отчеты и внешние печатные формы, добавленные в систему. Нажмём кнопку добавить на панели справочника.

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

В появившемся окне нового элемента справочника необходимо указать вид элемента. Выбираем значение «Печатная форма».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

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

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Имя печатной формы в 1С заполнилось автоматически. Теперь необходимо указать «Принадлежность печатной формы». Нажимаем кнопку «Добавить».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Выбираем документ «Увольнение из организаций» и нажимаем «ОК».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Сохраняем нашу внешнюю печатную форму и открываем документ «Увольнение из организаций». В кнопке «Печать» добавился новый пункт с нашей печатной формой «Форма Т-61 (внешняя печатная форма)».

как сохранить печатную форму как внешнюю печатную форму. Смотреть фото как сохранить печатную форму как внешнюю печатную форму. Смотреть картинку как сохранить печатную форму как внешнюю печатную форму. Картинка про как сохранить печатную форму как внешнюю печатную форму. Фото как сохранить печатную форму как внешнюю печатную форму

Как оптимизировать работу с программой?

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

Даже если у вас есть программисты 1С, мы предлагаем оставить за ними важные стратегические задачи, а за сопровождением 1С к профессионалам, в компанию «ПРОГРАММЫ 93».

Почему нас выбирают?

ООО «ПРОГРАММЫ 93» — это компания с большим штатом сотрудников, в который входят не только специалисты 1С, но и бухгалтера, кадровики, юристы и другие эксперты. Вы больше не зависите от одного сотрудника, вам не нужно тратить деньги на приглашенных специалистов для решения каждой задачи и переживать насчет того, что у вас не хватает компетенции для проверки работы сотрудника. Для вас работает целая команда, любая задача дополнительно проверяется, а заболевший специалист тут же заменяется другим незаметно для вас.

Мы рады предложить вам:

Позвоните по номеру телефона, указанному на сайте, или заполните форму обратной связи, чтобы мы могли ответить на все возникающие вопросы и рассказать о том, как начать сотрудничество!

Источник

Создание печатной формы 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 не будет опубликован. Обязательные поля помечены *