ПрисоединитьОбласть (БСП)

Автор: 1С
ОбщийМодуль.УправлениеПечатью
БСП

Присоединить область. Присоединяет область в печатную форму из макета.

// Присоединяет область в печатную форму из макета.
// Применяется при одиночном выводе области.
//
// Параметры:
//  ПечатнаяФорма - Структура - печатная форма, см. УправлениеПечатью.ИнициализироватьПечатнуюФорму.
//  ОбластьМакета - Структура - см. УправлениеПечатью.ОбластьМакета.
//  ПереходНаСледующуюСтроку - Булево - Истина, если требуется вставить разрыв после вывода области.
//
Процедура ПрисоединитьОбласть(ПечатнаяФорма, ОбластьМакета, Знач ПереходНаСледующуюСтроку = Ложь) Экспорт
	
	Если ОбластьМакета = Неопределено Тогда
		Возврат;
	КонецЕсли;
	
	Попытка
		
		ОписаниеОбласти = ОбластьМакета.ОписаниеОбласти;
	
		ВыведеннаяОбласть = Неопределено;
		
		Если ОписаниеОбласти.ТипОбласти = "ВерхнийКолонтитул" ИЛИ ОписаниеОбласти.ТипОбласти = "ВерхнийЧетныйКолонтитул" ИЛИ ОписаниеОбласти.ТипОбласти = "ВерхнийТитульныйКолонтитул" Тогда
				ВыведеннаяОбласть = УправлениеПечатьюСлужебный.ДобавитьВерхнийКолонтитул(ПечатнаяФорма, ОбластьМакета);
		ИначеЕсли ОписаниеОбласти.ТипОбласти = "НижнийКолонтитул"  ИЛИ ОписаниеОбласти.ТипОбласти = "НижнийЧетныйКолонтитул"  ИЛИ ОписаниеОбласти.ТипОбласти = "НижнийТитульныйКолонтитул" Тогда
			ВыведеннаяОбласть = УправлениеПечатьюСлужебный.ДобавитьНижнийКолонтитул(ПечатнаяФорма, ОбластьМакета);
		ИначеЕсли ОписаниеОбласти.ТипОбласти = "Общая" Тогда
			ВыведеннаяОбласть = УправлениеПечатьюСлужебный.ПрисоединитьОбласть(ПечатнаяФорма, ОбластьМакета, ПереходНаСледующуюСтроку);
		ИначеЕсли ОписаниеОбласти.ТипОбласти = "Список" ИЛИ ОписаниеОбласти.ТипОбласти = "СтрокаТаблицы" Тогда
			ВыведеннаяОбласть = УправлениеПечатьюСлужебный.ПрисоединитьОбласть(ПечатнаяФорма, ОбластьМакета, ПереходНаСледующуюСтроку);
		Иначе
			ВызватьИсключение ТекстТипОбластиУказанНекорректно();
		КонецЕсли;
		
		ОписаниеОбласти.Вставить("Область", ВыведеннаяОбласть);
		ОписаниеОбласти.Вставить("ПереходНаСледующуюСтроку", ПереходНаСледующуюСтроку);
		
		// Содержит тип области, и границы области (если требуется).
		ПечатнаяФорма.ПоследняяВыведеннаяОбласть = ОписаниеОбласти;
		
	Исключение
		СообщениеОбОшибке = СокрЛП(КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
		СообщениеОбОшибке = ?(Прав(СообщениеОбОшибке, 1) = ".", СообщениеОбОшибке, СообщениеОбОшибке + ".");
		СообщениеОбОшибке = СообщениеОбОшибке + " " + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при попытке вывести область ""%1"" из макета.'"),
			ОбластьМакета.ОписаниеОбласти.ИмяОбласти);
		ВызватьИсключение СообщениеОбОшибке;
	КонецПопытки;
	
КонецПроцедуры

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

ПрисоединитьИЗаполнитьКоллекцию (БСП)

ПрисоединитьОбластьИЗаполнитьПараметры (БСП)

ПрисоединитьИЗаполнитьНабор (БСП)

1С Менеджер конфигураций