ПриПодключенииДопОтчета (БСП)

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

При подключении доп отчета. Подключает отчет подсистемы "Дополнительные отчеты и обработки".

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

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

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

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

ПриУстановкеРежимаПодключенияДополнительногоОтчетаИлиОбработкиВОбластиДанных (БСП)

УстановитьРежимПодключенияДополнительногоОтчетаИлиОбработкиВОбластиДанных (БСП)

ПриПодключенииОтчета (БСП)

РассылкаОтчетовПодборДопОтчета (БСП)

Подключение внешней обработки/отчета, пример оформления модуля объекта

ТаблицаПодключаемыхОбъектов (БСП)

TurboConf - расширение Конфигуратора 1С