kancboom.ru

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

Итак! Есть конфигурация (например "Управление торговлей", редакция 10.3), и для нее необходимо разработать внешнюю печатную форму. Для примера возьмем типовой документ "Счет на оплату покупателю" (хотя внешние печатные формы можно создавать не только для документов, но и для справочников).

Пример для 1С 8.3 (Управляемые формы)

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

Задача

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

Поехали!

Первое что нужно сделать, это создать файл внешней обработки. Обработка должна содержать три основных момента:
  1. Реквизит "СсылкаНаОбъект" с типом "ДокументСсылка.СчетНаОплатуПокупателю"
  2. Макет, который будет выводиться на печать
  3. Экспортную Функцию "Печать()" которая возвращает табличный документ
Эти действия видны на рисунке №1

"Рисуем макет"

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

Функция "Печать()"

Вот форма почти и готова. Осталось написать программное заполнение полей табличного документа. Эти действия выполняются в модуле объекта обработки, в функции под название "Печать", которая ОБЯЗАТЕЛЬНО должны быть экспортной.
Этап №1. Получение данных для шапки, заполнение параметров шапки, и ее вывод в табличный документ ТабличныйДокумент = Новый ТабличныйДокумент; Макет = ПолучитьМакет("НашМакет"); ЗапросДанных = Новый Запрос("ВЫБРАТЬ | ПРЕДСТАВЛЕНИЕ(СчетНаОплатуПокупателю.Контрагент) КАК Контрагент, | ПРЕДСТАВЛЕНИЕ(СчетНаОплатуПокупателю.Организация) КАК Организация |ИЗ | Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю |ГДЕ | СчетНаОплатуПокупателю.Ссылка = &Ссылка"); ЗапросДанных.УстановитьПараметр("Ссылка", СсылкаНаОбъект); Шапка = ЗапросДанных.Выполнить().Выбрать(); Шапка.Следующий(); Область = Макет.ПолучитьОбласть("Шапка"); Область.Параметры.Заполнить(Шапка); ТабличныйДокумент.Вывести(Область); Этап №2. Получение данных табличной части, и построчный вывод товаров
ЗапросДанных.Текст = "ВЫБРАТЬ | _Товары.НомерСтроки, | ПРЕДСТАВЛЕНИЕ(_Товары.Номенклатура) КАК Номенклатура, | _Товары.Количество, | _Товары.Цена, | _Товары.Сумма |ИЗ | Документ.СчетНаОплатуПокупателю.Товары КАК _Товары |ГДЕ | _Товары.Ссылка = &Ссылка"; Выборка = ЗапросДанных.Выполнить().Выбрать(); Область = Макет.ПолучитьОбласть("Данные"); Пока Выборка.Следующий() Цикл Область.Параметры.Заполнить(Выборка); ТабличныйДокумент.Вывести(Область); КонецЦикла; Этап №3. Возврат табличного документа и функции печать Возврат ТабличныйДокумент;

Добавляем нашу внешнюю печатную форму в 1С

Заходим в меню "Сервис - Внешние печатные формы и обработки - Внешние печатные формы"

В открывшемся окне создания элемента, выполняем следующие действия:

  1. Загружаем файл внешней обработки
  2. Указываем для какого документа (или справочника) конфигурации, предназначена печатная форма
  3. Записываем изменения

Печатаем!

Открываем любой документ "Счет на оплату покупателю" (с заполненной табличной частью "Товары", потому что именно оттуда мы берем данные для заполнения), нажимаем кнопку "Печать", в открывшемся окне, выбираем НАШУ печатную форму, и нажимаем "Печать"


ВНИМАНИЕ! Такой алгоритм разработки подходит ТОЛЬКО для "Обычного приложения". Печатные формы для конфигураций в режиме "Управляемое приложение" отличаются!

Файл печатной форме которая показана в примере можно

Внешние печатные формы для обычного приложения (для конфигурация Бухгалтерия предприятия 2.0, Зарплата и управление персоналом 2.5, Управление торговлей 10.3 и т.д.) создаются довольно просто по сравнению с внешними печатными формами для управляемого приложения.

Для чего создавать внешние печатные формы

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

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

Как создать внешнюю печатную форму

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

  1. Создаем внешнюю обработку. Для этого в конфигураторе выбираем пункт меню Файл — Новый… И в открывшемся диалоговом окне — Внешняя обработка .
  2. Создаем реквизит внешней обработки с именем СсылкаНаОбъект . Тип реквизита — ссылка на справочник или документ, для которого создается внешняя печатная форма. Одна и та же форма может применяться для нескольких типов объектов, в этом случае тип данных реквизита СсылкаНаОбъект должен быть составным.
  3. В модуле объекта создаем экспортную функцию с именем Печать , которая должна возвращать готовый табличный документ печатной формы.

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

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

Рассмотрим эту процедуру на примере создания внешней печатной формы универсального передаточного документа для документа Реализация товаров и услуг 1С:Бухгалтерии. От стандартной печатной формы она будет отличаться наличием печати организации.

  1. Создаем внешнюю обработку с реквизитом СсылкаНаОбъект, тип данных — ДокументСсылка.РеализацияТоваровУслуг.
  2. Находим макет стандартной печатной формы УПД (он находится в общих макетах) и копируем (перетаскиваем) его в окно внешней обработки. Макеты других печатных форм могут находиться в самих документах или справочниках.
  3. Вносим необходимые изменения в скопированный макет печатной формы.
  4. Находим функцию, отвечающую за формирование печатной формы. Эта функция должна возвращать сформированный табличный документ. Копируем ее содержание в экспортную функцию Печать() в модуле объекта внешней обработки.
    В нашем случае это функция ПечатьУниверсальногоПередаточногоДокумента() Экспорт из модуля объекта документа Реализация товаров и услуг.
    Если изменения макета были существенными (изменялись области и/или параметры), то необходимо внести соответствующие корректировки в функцию печати.
  5. Пытаемся сохранить внешнюю обработку. При этом, скорее всего, появятся сообщения об ошибках, связанных с отсутствием некоторых процедур и функций, вызываемых функцией печати. Эти функции и процедуры необходимо найти в исходном документе и так же скопировать в модуль объекта внешней обработки. Либо скорректировать ссылку, если исходная функция или процедура экспортная.
  6. (не обязательно). Для тестирования внешней печатной формы удобно сделать ее форму, на которую вынести реквизит СсылкаНаОбъект . Кнопка Выполнить должна вызывать процедуру Печать() из модуля объекта. Для этого событию нажатия кнопки задается процедура:

Как известно – без бумажки ты.. не может обойтись ни один серьезный бизнес. И когда мы говорим, что в 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С:Предприятие» версии 8. Обратите внимание на пункт меню «Сервис» – «Внешние обработки и печатные формы». С его помощью вы можете хранить внешние отчеты, обработки, печатные формы, а также обработки заполнения табличных элементов. Также вы можете подключить внешнюю форму вместо изменения уже существующей, что повлечет за собой вмешательство в конфигурацию программы.

Запустите программу «1С:Предприятие» в режиме конфигуратора, затем создайте внешнюю обработку, для этого выполните команду «Файл» – «Новый». В появившемся окне выберите «Внешняя обработка». На экране появится новая форма внешней обработки. Присвойте ей название «Внешняя ». Затем добавьте новый реквизит, называемый «Ссылка на объект», укажите тип для него – «Документ. Ссылка. Реализация товаров и услуг». Для создания печатной формы для иного вида документа используйте соответствующий тип ссылки.

Добавьте новый макет щелчком по соответствующей кнопке в окне новой формы. Присвойте ему имя «Макет», создайте область с именем «Заголовок», присвойте ей параметр «Текст заголовка». Затем щелкните по кнопке «Действия», выберите команду «Открыть модуль объекта». Затем вставьте текст модуля, вы можете воспользоваться примером, размещенным на сайте http://www.uasoft.com.ua/content/articles/315/.

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

Источники:

  • как в 1с изменить печатную форму

Для того чтобы создавать и редактировать формы объектов, в программе «1C:Предприятие» предусмотрен специальный редактор формы (или Form Designer). Формы объектов прикладного решения предназначены для визуального представления данных во время работы с программой. В редакторе формы содержатся несколько закладок, которые обеспечивают возможность редактирования всех элементов формы.

Вам понадобится

  • компьютер, программа 1С

Инструкция

С помощью редактора формы вы можете добавить в форму один или несколько элементов «Группа – Страницы», для этого нажмите на зеленый плюсик в верхнем левом углу редактора, находясь на вкладке «Элементы».
В режиме «1C:Предприятие» все существующие элементы группы будут отображаться каждая на отдельной вкладке. Чтобы расположить сверху или снизу рабочей , в окне «Свойства» той или иной группы в пункте «Отображение » выберите соответствующую команду.

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

Чтобы отредактировать командный интерфейс, перейдите на соответствующую вкладку. Перед вами будет дерево команд, основные ветви которого – это «Панель навигации» и «Командная панель». Часть команд в дерево командного интерфейса добавляется автоматически, однако вы также можете самостоятельно добавлять их, для этого перетащите нужные вам команды из списка глобальных (общих) команд или из списка команд формы.

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

Видео по теме

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

Вам понадобится

  • - персональный компьютер с 1С.

Инструкция

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

Заходим в Сервис ->Дополнительные отчеты и обработки ->Дополнительные внешние печатные формы .

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

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

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

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

Для БП 3.0, ЗУП 3.0, УТ 11, КА 2.0, ERP 2.0.

Для демонстрации добавления печатной формы в управляемом интерфейсе покажу добавление внешней формы счета на оплату к одноименному документу в Бухгалтерии 3.0.

Заходим в соответствующий раздел программы:


Необходимо, чтобы был включен признак использования внешних отчетов и обработок, переходим по гиперссылке в список внешних объектов:

В открывшемся списке нажимаем Создать :


В диалоговом окне выбираем нужный файл:


Заполнилась карточка внешнего объекта: в размещении видим тип объекта базы, к которому будет привязана форма и чуть ниже ее название:


Запишем и закроем форму созданного внешнего объекта.

Теперь зайдем в любой документ Счет на оплату покупателю и выведем меню печати:


Загрузка...