Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
04 мая 2026, 15:39

Добавление новых элементов на типовую форму отчёта средствами БСП

Автор Stolz, Сегодня в 11:42

bsn-chita и 2 гостей просматривают эту тему.

Stolz

Всем доброго времени суток!

В типовой конфигурации «1С:ERP Управление предприятием 2» (2.5.22.145) среди общих форм есть форма ФормаОтчета, которую очень не хотелось бы изменять, в том числе расширениями. Есть самописный отчёт, использующий упомянутую типовую форму отчёта. В отображаемое пользователю диалоговое окно отчёта нужно добавить дополнительный элемент формы. Для таких нужд БСП, вроде бы, предусматривает специальный механизм программного изменения форм. Согласно описанию в документации БСП, в модуле отчёта создаю процедуры:

Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт
   ТипСтруктура = Тип("Структура");
   Если ТипЗнч(Настройки) = ТипСтруктура Тогда
      Если Настройки.Свойство("События") Тогда
         Если ТипЗнч(Настройки.События) = ТипСтруктура Тогда
            Настройки.События.Вставить("ПослеЗаполненияПанелиБыстрыхНастроек", Истина);
         КонецЕсли;
      КонецЕсли;
   КонецЕсли;
КонецПроцедуры

Процедура ПослеЗаполненияПанелиБыстрыхНастроек(Форма, ПараметрыЗаполнения) Экспорт
   МсвРеквизитыФормыКДобавлению = Новый Массив;
   МсвРеквизитыФормыКДобавлению.Добавить(Новый РеквизитФормы("КомпоновщикНастроекКомпоновкиДанных", Новый ОписаниеТипов("КомпоновщикНастроекКомпоновкиДанных")));
   Форма.ИзменитьРеквизиты(МсвРеквизитыФормыКДобавлению);
   ТекСхемаКомпоновкиДанных = ПолучитьМакет("Отборы");
   Форма.КомпоновщикНастроекКомпоновкиДанных.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(ПоместитьВоВременноеХранилище(ТекСхемаКомпоновкиДанных,
   Форма.КомпоновщикНастроекКомпоновкиДанных.ЗагрузитьНастройки(ТекСхемаКомпоновкиДанных.НастройкиПоУмолчанию);
   ЭлементФормы = Форма.Элементы.Вставить("КомпоновщикНастроекКомпоновкиДанныхНастройкиОтбор", Тип("ТаблицаФормы"), Форма.Элементы.КомпоновщикНастроекПользовательскиеНастройки);
   ЭлементФормы.ПутьКДанным = "КомпоновщикНастроекКомпоновкиДанных.Настройки.Отбор";
КонецПроцедуры

В отладчике вижу, что:

Форма.Элементы.КомпоновщикНастроекКомпоновкиДанныхНастройкиОтбор.Видимость = Истина

Тем не менее, добавленный элемент формы в диалоговом окне отчёта не отображается. У кого какие мысли по поводу того, как, всё же, добиться отображения добавленного элемента на форме?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск