При определении типа ссылки если отчет дополнительный. Получает ссылку дополнительного отчета, если он подключен к хранилищу подсистемы Варианты отчетов.
// Получает ссылку дополнительного отчета, если он подключен к хранилищу подсистемы Варианты отчетов.
//
// Параметры:
// ОтчетИнформация - Структура - См. ВариантыОтчетов.СформироватьИнформациюОбОтчетеПоПолномуИмени().
//
Процедура ПриОпределенииТипаИСсылкиЕслиОтчетДополнительный(ОтчетИнформация) Экспорт
Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда
Возврат;
КонецЕсли;
Если Не ПравоДоступа("Чтение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда
Возврат;
КонецЕсли;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ДополнительныеОтчетыИОбработки.Ссылка
|ИЗ
| Справочник.ДополнительныеОтчетыИОбработки КАК ДополнительныеОтчетыИОбработки
|ГДЕ
| ДополнительныеОтчетыИОбработки.ИмяОбъекта = &ИмяОбъекта
| И ДополнительныеОтчетыИОбработки.ПометкаУдаления = ЛОЖЬ
| И ДополнительныеОтчетыИОбработки.ИспользуетХранилищеВариантов = ИСТИНА
| И ДополнительныеОтчетыИОбработки.Вид В (&ВидДополнительныйОтчет, &ВидОтчет)
| И ДополнительныеОтчетыИОбработки.Публикация = &ПубликацияИспользуется";
Если ОтчетИнформация.ПоУмолчаниюВсеПодключеныКХранилищу Тогда
Запрос.Текст = СтрЗаменить(Запрос.Текст, "И ДополнительныеОтчетыИОбработки.ИспользуетХранилищеВариантов = ИСТИНА", "");
КонецЕсли;
Запрос.УстановитьПараметр("ИмяОбъекта", ОтчетИнформация.ОтчетИмя);
Запрос.УстановитьПараметр("ВидОтчет", Перечисления.ВидыДополнительныхОтчетовИОбработок.Отчет);
Запрос.УстановитьПараметр("ВидДополнительныйОтчет", Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет);
Запрос.УстановитьПараметр("ПубликацияИспользуется", Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Используется);
// Необходим для целостности формируемых данных. Права доступа будут применяться на этапе их использования.
МассивСсылок = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
Для Каждого Ссылка Из МассивСсылок Цикл
Если Не ЭтоПоставляемаяОбработка(Ссылка) Тогда
Продолжить;
КонецЕсли;
ОтчетИнформация.Отчет = Ссылка;
КонецЦикла;
КонецПроцедуры
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
ПриОпределенииОтчетовСНастройками (БСП)
ПриДобавленииДополнительныхОтчетовДоступныхТекущемуПользователю (БСП)
ПриДобавленииДополнительныхОтчетовДоступныхУказанномуПользователю (БСП)
СформироватьИнформациюОбОтчетеПоПолномуИмени (БСП)
ПолучитьВидОбработкиПоСтроковомуПредставлениюВида (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)