Как найти печатную форму в конфигураторе 1с

Где найти все печатные формы в конфигурации?

Я
   new1snik

30.05.13 – 15:25

Добрый день.

Подскажите, где найти все печатные формы, которые есть в конфигурации?

   ДенисЧ

1 – 30.05.13 – 15:25

В конфигурации. Ваш К.О.

   new1snik

2 – 30.05.13 – 15:26

(1)Где именно в конфигурации?

   ДенисЧ

3 – 30.05.13 – 15:27

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

   drcrasher

4 – 30.05.13 – 15:27

смысл?

   new1snik

5 – 30.05.13 – 15:28

(3)То есть нет никакого единого места с ссылками на все созданные в конфигурации печатные формы?

   Maxus43

6 – 30.05.13 – 15:29

(5) нет. они и внешними быть могут ещё

   new1snik

7 – 30.05.13 – 15:33

А сейчас задам глупый вопрос, за который меня опять отправят к программистам, но все же. А где и как мне искать печатную форму, если известно только их название? Например, “Счет фактура” или “Товарная накладная”?

   rbcvg

8 – 30.05.13 – 15:35

(7) Контрл+Шифт+Ф

   del123

9 – 30.05.13 – 15:35

Проще всего смотреть в модуле, из которого эта форма печатается.

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

   Mitriy

10 – 30.05.13 – 15:37

(9) открою страшную тайну – в макетах ничего не печатается… даже в общих…

   del123

11 – 30.05.13 – 15:41

(10) я и не говорил что в них печатается, я указал место, где лежат макеты, по которым формируются печатные формы.

Раскрыватель таин…

   Qaswer123

12 – 30.05.13 – 15:44

(0) Зачем они тебе?

   Coole

13 – 30.05.13 – 15:51

(0) конфа какая? смотри Общие – Общие макеты.

  

Qaswer123

14 – 30.05.13 – 16:01

(7) Когда ты нажимаешь кнопку “Печать” происходит обращение к функции из модуля объекта. Эта функция выбирает нужный макет и заполняет его. Макет может находится как в ветке объекта (СчетФактураВыданный->Макеты->НужныйМакет), так и в “Общих макетах”. Если это внешняя печатная форма, то макет может храниться прямо в ней.

Уважаемые коллеги, прошу помочь.

В пользовательском режиме есть произвольная форма, как эту конкретную форму найти в конфигураторе?

  • Вопрос задан более года назад
  • 561 просмотр

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

После проделанного отладчик останавливается на событие, далее идете по строчкам и ищите следующий код, что то вроде ОткрытьФорму(“Форма.ВашаФорма”);

Либо, если форма уже открыта, то выполняете тоже самое, но непосредственно из формы (выполняете любую команду, событие прямо из вашей искомой формы в пользовательском режиме) и отладчик вас остановит в модуле вашей формы

В большинстве своем делаю именно так. Гораздо быстрее, чем использовать глобальный поиск.

В этой статье мы научимся создавать внешнюю печатную форму для управляемого приложения 1С 8.3, которое написано на БСП («1С: Бухгалтерия предприятия 3.0», «1С: Управление торговлей 11»). Причем создавать с нуля, не используя так называемые шаблоны. Вы сами научитесь создавать шаблоны внешних печатных форм.

Все это делается довольно просто))

И так, создадим новую обработку.

Мы будем создавать внешний счет на оплату покупателю, поэтому обработку так и назовем: «СчетНаОплатуВнешний».

Сохраним ее на жесткий диск.

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

Зайдем в модуль обработки, и создадим экспортную функцию СведенияОВнешнейОбработке.

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

Создадим первый элемент структуры, он будет иметь ключ с название «Вид».

Значением данной связки КлючИЗначение идет одна из строк:

  • «ДополнительнаяОбработка»
  • «ДополнительныйОтчет»
  • «ЗаполнениеОбъекта»
  • «Отчет»
  • «ПечатнаяФорма»
  • «СозданиеСвязанныхОбъектов»

В нашем случае должна быть строка «ПечатнаяФорма».

Следующий элемент структуры должен иметь ключ с названием Назначение.

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

Они должны иметь тип строка, и быть в следующем формате:

Документ.»НазваниеДокумента»

Справочник.»НазваниеСправочника»

У нас этот массив будет возвращать отдельная функция ПолучитьНазначениеОбработки.

Допишем созданный последним элемент структуры.

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

Следующий элемент структуры будет иметь название «Версия», значением данного элемента будет версия обработки. Задается программистом на его усмотрение.

Следующий элемент имеет название «Информация», который содержит краткую информацию по обработке.

Следующий элемент имеет название «БезопасныйРежим», его необходим устанавливать в значение истина или ложь, в зависимости от того необходимо устанавливать или отключать безопасный режим во время выполнения обработки. Мы установим значение Истина.

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

Создадим функцию и таблицу значений внутри нее.

Теперь создадим пять колонок этой таблицы.

И первая колонка – Представление (тип строка).

Эта колонка – представление команды в пользовательском интерфейсе, т.е. то, что пользователь увидит при нажатии меню»Печать» в документе или справочнике.

Вторая колонка – Идентификатор.

Это может быть любая текстовая строка, уникальная в пределах данной обработки.

Третья колонка – Использование.

Параметр данной колонки типа строка, должен принимать одно из четырех значений –

  • ОткрытиеФормы – Открывает форму обработки.
  • ВызовКлиентскогоМетода – будет вызвана клиентская процедура из модуля формы обработки.
  • ВызовСерверногоМетода — будет вызвана серверная процедура из модуля обработки.
  • СценарийВБезопасномРежиме – тоже будет вызвана серверная процедура из модуля обработки в безопасном режиме.

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

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

И последняя колонка – модификатор. Это дополнительный модификатор команды. В нашем случае будет иметь название ПечатьXML.

Теперь создадим процедуру, которая будет заполнять данную таблицу значений.

В данном коде все понятно.

В функции СведенияОВнешнейОбработке создадим команду и заполним ее.

Создаем таблицу значений:

Теперь заполним ее.

Еще раз пройдемся по параметрам.

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

Теперь передадим вновь созданную таблицу команд в структуру ПараметрыРегистрации.

И пусть наша функция СведенияОВнешнейОбработке возвращает данную структуру.

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

Теперь в модуле объекта создадим процедуру Печать. Это процедура с четырьмя параметрами: МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода.

И вот начинается самое интересное, теперь вам необходимо войти в аналогичную процедуру в менеджере объекта счет на оплату покупателю, или в обработке, которая, по сути, является менеджером печати.

Как узнать, где находится нужная нам функция?

Откроем модуль менеджера документа Счет на оплату покупателю.

И найдем процедуру ДобавитьКомандыПечати, которая заполняет список команд .

В этой процедуре найдем код, где добавляется команда для нужной нам печатной формы (список команд добавляется в таблицу значений КомандыПечати). И обратим внимание на свойство МенеджерПечати. Если этому свойству присваивается какое-нибудь значение — это путь к объекту метаданных, как правило к обработке, то значит при выводе нужной печатной формы будет отработан код в процедуре Печать, которая находится в модуле менеджере этого объекта (в обработке). А если это свойство в принципе не фигурирует при заполнении команды печати, то значит будет отработан код в процедуре Печать, которая находится в модуле менеджера нашего основного объекта (в нашем случае это документ СчетНаОплатуПокупателю)

Посмотрим на процедуру ДобавитьКомандыПечати в модуле менеджера документа «Счет на оплату покупателя».

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

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

Откроем модуль менеджера обработки ПечатьСчетаНаОплату.

И раскроем процедуру Печать.

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

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

Так же из модуля менеджера обработки скопируем процедуру СформироватьПечатнуюФорм

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

Эта таблица получается при помощи процедуры модуля менеджера объекта (в нашем случае это документ СчетНаОплатуПокупателю). Найдем эту процедуру в модуле менеджера документа СчетНаОплатуПокупателю.

И скопируем её в модель нашей внешней обработки.

А сам код процедуры СформироватьПечатнуюФорму в модуле внешней обработки исправим, убрав все не нужное от туда.

Если мы сейчас сделаем проверку модуля внешней обработки, то выйдет две ошибки. Первая, что не определена переменная ПараметрыПечати в процедуре Печать, и, что не найдена функция ПолучитьТекстЗапросаДляФормированияТаблицыСведенийСчетаНаОплату в функции ПолучитьТаблицуСведенийСчетаНаОплату.

Создадим переменную ПараметрыПечати в процедуре Печать. Это будет простая структура.

А потом найдем функцию ПолучитьТекстЗапросаДляФормированияТаблицыСведенийСчетаНаОплату в модуле менеджера документа СчетНаОплатуПокупателю и скопируем её в модуль внешней обработки.

Должен получится следующий состав процедур и функций модуля внешней обработки (для удобства я разделил их на две области).

Еще раз делаем проверку модуля. Ошибок не обнаружено.

Продолжаем, теперь нам необходимо, что бы брался наш макет, и печатался по нашей команде.

Нас интересует процедура СформироватьПечатнуюФорму, а в ней мы уделим внимание методу ПечатьСчетаНаОплату общего модуля ПечатьТорговыхДокументов.

Очевидно, она непосредственно формирует табличный документ. Перейдем в этот общий модуль, и скопируем функцию ПечатьСчетаНаОплату в модуль нашей внешней обработки.

Делаем проверку модуля внешней обработки. Ругается на несуществующие методы ВывестиЗаголовокПредупреждение и НомерСчетаНаОплату.

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

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

Проверяем еще раз ошибки. Все нормально.

Не забудем в процедуре СформироватьПечатнуюФорму убрать вызов метода ПечатьСчетаНаОплату из общего модуля.

Теперь зайдем в скопированную функцию ПечатьСчетаНаОплату, и посмотрим, где в ней подтягивается макет.

Находим данный макет в общих макетах и копируем его в макеты нашей обработки.

Исправляем выделенный код, где подтягивается макет, следующий образом.

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

Вернемся обратно в процедуру Печать нашей внешней обработки.

И теперь осталась одна небольшая хитрость, без которой ваш внешний отчет не будет работать. Необходимо текст «СчетЗаказ» (это идентификатор типовой печатной формы).

Заменить на название идентификатора команды («СчетНаОплатуВнешний»).

Все, сохраняем данную обработку. И запускаем «1С: Предприятие» из конфигуратора 1С.

Идем в администрирование. В дополнительные отчеты и обработки.

Нажимаем на кнопку «Добавить из файла» и выбираем нашу созданную обработку.

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

Ссылка на дубль статьи на Инфостарте. В конце этой статьи приведены примеры внешних печатных форм счета на оплату, ТОРГ 12, ПКО , М11 и Требование накладная в одной обработке (документ Требование накладная). Все внешние печатные формы сделаны для конфигурации «1С: Бухгалтерия предприятия» (релиз 3.0.67.67).

Изучайте программирование в 1С в месте с моей книги «Программировать в 1С за 11 шагов»

  1. Книга написана понятным и простым языком — для новичка.
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Научитесь понимать архитектуру 1С;
  4. Станете писать код на языке 1С;
  5. Освоите основные приемы программирования;
  6. Закрепите полученные знания при помощи задачника;

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

  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным

Промо-код на скидку в 15% — 48PVXHeYu


Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:

можно оплатить вручную:

Яндекс.Деньги — 410012882996301
Web Money — R955262494655

Искал в:
1. Конфигураторе — общие таблицы
2. Документы — Форма документа(там никаких таблиц нету. есть кнопка выбора печатной формы. но в модуле непонятно (для меня) как и где программа эту форму ищет и выбирает.
3. Вручную переоткрывал (в конфигураторе) почти все файлы — *.ert, *.mxl и т.д. и т.п. — там тоже нужной формы (таблицы) не нашел.

И куда ж ее вообще могли запрятать?

Ищу форму Накладной документа “Реализация” в конфигурации 1С: Предприниматель . Конфигурация стандартная — никто в ней ничего не менял.

Где и как ее теперь еще искать, кто может что-подсказать, посоветовать, помочь?
———————
Необходимые дополнения: в самой конфигурации я менять ничего не собираюсь. мне нужно только в саму форму Ф.И.О. в одном месте проставить — то что бухгалтеры каждый раз делают вручную. Вобщем, анекдот про сына программиста мне ХОРОШО знаком ))))
А кому незнаком или кто подзабыл — напоминаю )))
===========
Подходит сын программиста к отцу, который сидит уставившись компьютер и щелкает увлеченно по клавиатуре:
— Папа, а почему солнце всегда встает на восходе, а садится на западе?
Отец, не отрываясь от компа:
— Сынок, ты это проверял?
— Проверял!
— Это всегда так работает?
— Всегда..
— Сбоев ни разу не было?
— Ни разу.
— РАДИ БОГА, Сынок. Ничего не меня! Ничего не трогай!
))))))))))))))))))))))))

20.01.2023

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

Возьмем, для примера, одно из реальных заданий, которое делали для нашего клиента. Нас попросили доработать форму УПД (Универсально-передаточного документа) и выделить строки, в которых клиенты должны заполнить свои данные (дату, фио, подпись), примерно вот так:

Галочки в УПД для клиента

Переходим в меню «Администрирование ➔ Печатные формы, отчеты и обработки ➔ Макеты печатных форм» и в списке ищем нужную форму. В нашем случае она должна называться УПД или Универсально-передаточный документ или как-то так:

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

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

Добавляем нужные галочки в макет

Работа с макетом схожа с работой в Экселе. Мы не будем подробно останавливаться на всех тонкостях (попробуем в ближайшее время выпустить видео на эту тему), а просто найдем нужные нам ячейки и проставим в них символ с галочкой (саму галочку нашел через Яндекс и просто скопировал текст этой галочки и вставил в ячейки):

Изменяем макет УПД в 1С 8.3

Единственный нюанс, это ячейка где есть ФИОТоварПолучил, сюда просто так галочку вставить не получится. Т.к. в эту ячейку 1С динамически подставляет фамилию контрагента (если она заполнена). Поэтому нужно зайти в свойства ячейки и поменять значение в поле “Заполнение” на “Шаблон”, а поле “Текст” поставить нашу галочку, а сам текст ФИОТоварПолучил нужно заключить в квадратные скобки. Тем самым мы говорим, что текст без квадратных скобок нужно вывести как есть, а внутри квадратных скобок нужно заменить динамически на нужный параметр:

Параметр, шаблон в макете

Проверяем результат

Возвращаемся в документ реализации и пробуем вывести на печать форму УПД. Как видим – все получилось, галочки вывелись в нужных нам ячейках (строки 15, 16 и 18). И на этом можно остановиться, но…

Проверяем результат упд

Выделяем фон ячейки

… нам показалось, что раз задача была “Обратить внимание клиента на нужные места в документе”, то может кроме галочек еще добавить выделение этих ячеек фоном? Возвращаемся в макет и в свойствах ячеек устанавливаем “Цвет фона” в значение “Дымчато-белый”:

изменение цвета фона в макете 1С

Итоговый результат

Еще раз возвращаемся в реализацию и формируем форму Универсально-передаточного документа. Делаем предпросмотр печати и видим наш финальный результат:

В форме УПД 1С выделили место для подписи клиента

Как вернуться к стандартному макету печатной формы?

Переживать, что сломаете форму и перестанет работать 1С – не стоит! Даже если что-то удалили лишнего. Так как в любой момент можно вернуться к стандартной форме. Для этого достаточно нажать кнопку “Использовать стандартный”, в форме макетов печатных форм 1С:

Как вернуть стандартный макет формы в 1С Бухгалтерия 3.0

Вам слово

Напишите в комментариях, оказался ли данный урок полезным? Если будет спрос, то мы будем чаще писать подобные статьи. И присоединяйтесь к нашему Telegram-каналу, чтобы не пропустить новых материалов от нас 🙂

Канал про 1С появился в telegram

Следите за выходом отчетов и расширений для 1С на новом Telegram-канале здесь. Нас уже более 700 человек!

Канал про 1С в Telegram (1c в Телеграм)

Как в 1С заполнить контрагента по ИНН? Каждая организация и индивидуальный предприниматель имеет свой уникальный идентификационный номер налогоплательщика (ИНН). Именно по этому номеру налоговая служба (ФНС) отличает их в своей базе контрагентов. Сегодня, любой может зайти на сайт nalog.ru и по ИНН получить информацию по нужной организации или ИП. Если вы хоть раз вводили контрагентов в […]

Статьи

1С ИНН – обработка для заполнения реквизитов контрагентов


30.05.2018

Статья для тех, кто задаётся вопросом как же быстро загрузить табели в 1С из файла Excel (Эксель). Несколько лет назад мы разработали специальную обработку именно для этого случая и сегодня хотим рассказать о её плюсах и минусах. Обработка для загрузки табелей в 1С ЗУП (Зарплата и управление персоналом) работала следующим образом: В начале месяца отдел […]

Статьи

Как загрузить табель из Excel в 1С ЗУП


10.08.2018

Спасибо

за доверие нашим

32 344

клиентам

2 / 2 / 3

Регистрация: 11.11.2009

Сообщений: 117

1

Где хранятся стандартные печатные формы

11.02.2014, 11:53. Показов 19632. Ответов 10


Студворк — интернет-сервис помощи студентам

Необходимо внести изменения в стандартную печатную форму “регистрация разовых начислений сотрудникам организации” в ЗУП.
мы открываем документ “регистрация разовых начислений сотрудникам организации”, внизу кнопка печати ввмде принтера =) кликаем – появляется печатная форма. где ее изменить? в конфигураторе в этом документе в макете пусто, в общих макетах тоже нет.
где взять то?)))



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

11.02.2014, 11:53

10

286 / 186 / 18

Регистрация: 20.02.2012

Сообщений: 925

11.02.2014, 11:57

2

в обработках, в конфигураторе есть что-то типа “печать”



0



2 / 2 / 3

Регистрация: 11.11.2009

Сообщений: 117

11.02.2014, 11:59

 [ТС]

3

не нашла



0



OrkVasya

о_____О

Эксперт 1С

224 / 223 / 37

Регистрация: 19.11.2010

Сообщений: 1,062

11.02.2014, 12:46

4

Ставите в процедуру нажатия кнопки точку останова и вперед, до момента

1C
1
ПолучитьМакет("<ИмяВашегоМакета>");



0



2 / 2 / 3

Регистрация: 11.11.2009

Сообщений: 117

11.02.2014, 12:56

 [ТС]

5

это и без точки останова ясно по коду – в универсальных механизмах
ДеревоМакетовПечати = ПолучитьДеревоМакетовПечати(Объект.Ссылка, СтруктураВнутреннихПечатныхФорм);



0



о_____О

Эксперт 1С

224 / 223 / 37

Регистрация: 19.11.2010

Сообщений: 1,062

11.02.2014, 13:02

6

Тогда в чем проблема?



0



2 / 2 / 3

Регистрация: 11.11.2009

Сообщений: 117

11.02.2014, 13:03

 [ТС]

7

мне нужен макет. такой прям макет, а не строчка кода. а найти не могу



0



о_____О

Эксперт 1С

224 / 223 / 37

Регистрация: 19.11.2010

Сообщений: 1,062

11.02.2014, 13:09

8

Если планируете искать взглядом – удачи.
Через строчку кода можно узнать, где смотреть. Посмотреть, например, что хранится в “СтруктураВнутреннихПечатныхФорм”. Если то, что надо, посмотреть, как “СтруктураВнутреннихПечатныхФорм” формируется. И т.д…
А готовую форму я вам не предоставлю.

Добавлено через 2 минуты
Не знаю, как в ЗУП, обычно, что бы быстро найти макет, достаточно поставить точку останова в процедуру “Печать()” модуля объекта.



0



2 / 2 / 3

Регистрация: 11.11.2009

Сообщений: 117

11.02.2014, 13:39

 [ТС]

9

Не саму форму, а где ее искать. Для тех, кто может правильно анализировать где что храниться в структурах и т.д. Я вот запуталась, потому и не нашла в итоге, что нужно.

Добавлено через 7 минут

Цитата
Сообщение от OrkVasya
Посмотреть сообщение

достаточно поставить точку останова в процедуру “Печать()” модуля объекта.

да там ссылка на универсальные механизмы, которые выше.

Добавлено через 22 минуты
Это всё не помогло и запутало. Методом “тыка” нашла в итоге. Славный метод))))



0



286 / 186 / 18

Регистрация: 20.02.2012

Сообщений: 925

11.02.2014, 13:41

10



0



2954 / 1766 / 82

Регистрация: 03.11.2011

Сообщений: 8,280

11.02.2014, 18:34

11

Лучший ответ Сообщение было отмечено Slaskaya как решение

Решение

Там нет встроенных. Только если зарегенные внешние.



0



Как известно – без бумажки ты.. не может обойтись ни один серьезный бизнес. И когда мы говорим, что в 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С?

Загрузка…

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