Внешняя печатная форма с несколькими макетами для конфигураций на БСП (1С:Предприятие 8.2/8.3)

14.03.18

Разработка - БСП (Библиотека стандартных подсистем)

Один файл внешней печатной формы и несколько команд печати на конфигурациях с БСП (УТ 11, БП 3.х и т.д.)

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

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

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

Сначала в функцию СведенияОВнешнейОбработке добавляем наши команды:

    ДобавитьКоманду(ТаблицаКоманд, "Спецификация Стильвер", "СпецификацияСтильвер", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
	ДобавитьКоманду(ТаблицаКоманд, "Спецификация Вайлдберриз", "СпецификацияВайлдберриз", "ВызовСерверногоМетода", Истина, "ПечатьMXL");

Потом меняем процедуру Печать:

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
		
	
	Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "СпецификацияСтильвер") Тогда

		УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
			КоллекцияПечатныхФорм,
			"СпецификацияСтильвер",
			"Спецификация Стильвер",
			ПечатьФормы(МассивОбъектов, "ПФ_MXL_СпецификацияСтильвер"));
	ИначеЕсли УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "СпецификацияВайлдберриз") Тогда

	УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
			КоллекцияПечатныхФорм,
			"СпецификацияВайлдберриз",
			"Спецификация Вайлдберриз",
			ПечатьФормы(МассивОбъектов, "ПФ_MXL_СпецификацияВайлдберриз"));
	КонецЕсли;			
			
КонецПроцедуры

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

Функция ПечатьФормы(МассивОбъектов, ИмяМакета) Экспорт
	ТабличныйДокумент = новый ТабличныйДокумент;
	
	Макет = ПолучитьМакет(ИмяМакета);

....
КонецФункции

 

См. также

Создать на основании - своя кнопка (БСП). Проблема двух подменю Создать на основании

БСП (Библиотека стандартных подсистем) Адаптация типовых решений Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

Понадобилось в подменю "Создать на основании" добавить свою команду, которая открывает обработку. В процессе доработок появилась проблема двух подменю "Создать на основании". В статье о том, как решились проблемы.

01.03.2024    1282    dimanich70    6    

13

Заполнение поля адреса в своей обработке [БСП]

Механизмы платформы 1С БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Небольшая шпаргалка по функциям БСП касательно адреса. Так скажем, еще один способ помимо https://infostart.ru/1c/articles/1060970/

12.02.2024    687    FilippovRI    0    

15

Расширяем возможности дополнительных обработок и настраиваем их отладку

БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Уже не одна веб-страница исписана знаниями о дополнительных обработках, как создать, как подключить. Есть масса вариантов, как их можно отладить. Я разобрался в кишках работы библиотеки и покажу, как можно расширить возможности дополнительных отчетов, а также покажу удобный способ отладки.

07.02.2024    2351    YA_418728146    11    

40

1С:БСП Дополнительные реквизиты и сведения

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Бесплатно (free)

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

19.01.2024    5161    PROSTO-1C    5    

45

Бесплатный митап 9 февраля «Библиотеки и фреймворки на 1С и всё, что с этим связано»

БСП (Библиотека стандартных подсистем) Мероприятия Бесплатно (free)

Митап посвящен вопросам создания, использования и поддержке переиспользуемого кода при разработке решений на платформе 1С:Предприятие 8.

15.01.2024    3798    0    Infostart    0    

20

Шаблоны новых объектов 1С для 1С:Бухгалтерии предприятия

Инструментарий разработчика БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Платформа 1С v8.3 1С:Бухгалтерия 3.0 Бесплатно (free)

Используются для создания новых объектов в конфигурации, чтобы не забыть, что нужно сделать. Сделано на примере 1С:Бухгалтерия предприятия, в других конфигурациях могут быть другие, а могут быть и похожие объекты.

28.12.2023    4831    mrXoxot    11    

99
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. TMV 14 15.03.18 08:23 Сейчас в теме
Скопировали строку - вуаля, статья на ИС готова!
jif; A_Max; +2 Ответить
2. Garstag 80 21.03.18 11:22 Сейчас в теме
Больше статей, хороших и разных!
:-)
3. qixis 22.10.20 21:21 Сейчас в теме
ну и норм, зашёл, глянул, скопировал, готово
4. dehro 5 23.10.20 16:47 Сейчас в теме
"Когда несколько печатных форм используют одни и те же данные, но отличаются макетом, самое простое решение - создать для каждого макета свою внешнюю печатную форму."

Да даже и разные данные содержат: что мешает запихнуть в одну внешнюю обработку?
Главное, чтобы массив назначений совпадал.
5. mariya.mary.00 07.12.21 16:23 Сейчас в теме
Добрый день!
А можно как-то выводить несколько макетов одновременно, в зависимости от условия?
Например, если покупатель такой-то - то выводим макеты 1 и 2, если другой - то 3.
В описанном примере, я так понимаю, пользователь сам выбирает какой макет распечатать.
6. пользователь 26.09.23 15:11
Сообщение было скрыто модератором.
...
7. пользователь 26.09.23 15:12
Сообщение было скрыто модератором.
...
Оставьте свое сообщение